#password #security #command-line #master-password

app myfreeweb/freepass-cli

Freepass 密码/身份验证管理器:CLI(命令行界面)

1 个不稳定版本

使用旧的 Rust 2015

0.0.0 2017年6月3日

#395 in #password

307 stars & 14 watchers

Unlicense

33KB
621

freepass-cli unlicense

专为高级用户提供的免费密码管理器:UNIX 版本(命令行...但不仅限于命令行)。

CLI screencast gif

安装

您首先需要在您的系统上安装 libsodium

您的系统包管理器可能已经提供了它

$ sudo pkg install libsodium

使用 cargo 从源代码构建非常容易

$ cargo build --release
$ strip target/release/freepass 
$ mv target/release/freepass ~/.local/bin

(或类似...当然 ~/.local/bin 必须在您的路径中)

二进制构建可能将来会提供。

用法

freepass 二进制文件使用您的全名作为 -n / --name 选项或 $FREEPASS_NAME 环境变量。
以及您想要使用的文件作为 - / --file 选项或 $FREEPASS_FILE 环境变量。如果文件不存在,它将被创建!

freepass 二进制文件有几个子命令,您可以通过运行来查看它们。

$ freepass help

但最重要的一个(也是默认的)是 interact
它启动 交互模式:您将通过菜单、密码提示和文本提示与 freepass 交互。

它包含了所有三种交互的内置命令行实现,但这并不有趣。你可以用外部程序替换每一个!

这就是“不仅仅命令行”的部分来源。在命令行中,你可以使用内置的密码提示(非常好用,在你输入足够多的字符后,它会显示你的密码的 colorhash)以及像 pecofzf 这样的模糊查找工具来处理菜单。(有关这些程序的列表,请参阅 interactor 的 README。)但在 X11 中,你可以使用 rofidmenu 来处理菜单和文本提示,以及像 x11-ssh-askpass 这样的密码提示!

以下是一个示例 shell 脚本,用于在 rofix11-ssh-askpassxclipnotify-send 的完全 X11 体验。

#!/bin/sh

NAME="Chloe Price"
FILES_DIR="$HOME/Personal"
ROFI_SETTINGS="-dmenu -fuzzy"

if [ "$FREEPASS_MODE" = "MENU" ]; then
	exec rofi $ROFI_SETTINGS -p 'freepass> '
elif [ "$FREEPASS_MODE" = "TEXT" ]; then
	exec rofi $ROFI_SETTINGS -p "$FREEPASS_PROMPT: "
else
	FREEPASS_NAME="$NAME" \
	FREEPASS_MENU="freepass-x11" \    # Path to THIS SCRIPT!!!
	FREEPASS_ASKTEXT="freepass-x11" \ # Same
	FREEPASS_ASKPASS="x11-ssh-askpass" \
	FREEPASS_FILE="$FILES_DIR/`ls $FILES_DIR | grep .fpass | rofi $ROFI_SETTINGS -p 'freepass file: '`" \ # Select .fpass files from $FILES_DIR
	freepass | (while read -r line; do
		echo -n "$line" | xclip
		notify-send -u low "Copied to clipboard!"
	done)
fi

将其放入 ~/.local/bin 作为 freepass-x11,确保 ~/.local/bin 在你的 $PATH 中,使用 sxhkd 绑定到一个热键...真的,你可以做任何你想做的事情 :-)

X11 screencast gif

请参阅 ../README.md

依赖项

~21MB
~115K SLoC