pass:一款簡(jiǎn)單的基于Linux命令行的密碼管理工具
現(xiàn)如今要記住類似 email、銀行、社交媒體、在線支付、ftp 等等這么多的密碼相信對(duì)每一個(gè)人來(lái)說(shuō)都是一個(gè)巨大的挑戰(zhàn)。
由于需求和使用,密碼管理器現(xiàn)如今變得非常的流行。在 Linux 中我們可以有很多選擇,包括基于 GUI 和基于 CLI 兩種。今天我們要講的是一款基于 CLI 的密碼管理器叫做 pass 。
pass 是 Linux 上的一個(gè)簡(jiǎn)單的命令行密碼管理器,它將密碼存儲(chǔ)在一個(gè) gpg 加密后的文件里。這些加密后的文件很好地組織按目錄結(jié)構(gòu)存放。
所有密碼都存在于 ~/.password-store 中,它提供了添加、編輯、生成和檢索密碼等簡(jiǎn)單命令。
它是一個(gè)非常簡(jiǎn)短和簡(jiǎn)單的 shell 腳本。 它能夠臨時(shí)將密碼放在剪貼板上,并使用 git 跟蹤密碼的修改。
這是一個(gè)很小的 shell 腳本,它還使用了少量的默認(rèn)工具比如 gnupg、tree 和 git,同時(shí)還有活躍的社區(qū)為它提供 GUI 和擴(kuò)展。
如何在 Linux 中安裝 Pass
Pass 可從大多數(shù) Linux 的主要發(fā)行版的倉(cāng)庫(kù)中獲得。 所以,你可以使用你的分布式包管理器來(lái)安裝它。
對(duì)于基于 Debian 的系統(tǒng),你可以使用 apt-get 或 apt 包管理器命令來(lái)安裝 pass。
- $ sudo apt-get install pass
對(duì)于基于 RHEL/CentOS 的操作系統(tǒng), 使用 yum 包管理器命令來(lái)安裝它。
- $ sudo yum install pass
Fedora 系統(tǒng)可用 dnf 包管理器命令來(lái)安裝。
- $ sudo dnf install pass
openSUSE 系統(tǒng)可以用 zypper 包管理器命令來(lái)安裝。
- $ sudo zypper in password-store
對(duì)于基于 Arch Linux 的操作系統(tǒng)用 pacman 包管理器來(lái)安裝它。
- $ pacman -S pass
如何生成 GPG 密鑰對(duì)
確保你擁有你個(gè)人的 GPG 密鑰對(duì)。如果沒有的話,你可以通過(guò)在終端中輸入以下的命令并安裝指導(dǎo)來(lái)創(chuàng)建你的 GPG 密鑰對(duì)。
- $ gpg --gen-key
運(yùn)行以上的命令以生成 GPG 密鑰對(duì)時(shí)會(huì)有一系列的問題詢問,謹(jǐn)慎輸入問題的答案,其中有一些只要使用默認(rèn)值即可。
初始化密碼存儲(chǔ)
如果你已經(jīng)有了 GPG 密鑰對(duì),請(qǐng)通過(guò)運(yùn)行以下命令初始化本地密碼存儲(chǔ),你可以使用 email-id 或 gpg-id 初始化。
- $ pass init 2daygeek@gmail.com
- mkdir: created directory '/home/magi/.password-store/'
- Password store initialized for 2daygeek@gmail.com
上述命令將在 ~/.password-store 目錄下創(chuàng)建一個(gè)密碼存儲(chǔ)區(qū)。
pass 命令提供了簡(jiǎn)單的語(yǔ)法來(lái)管理密碼。 我們一個(gè)個(gè)來(lái)看,如何添加、編輯、生成和檢索密碼。
通過(guò)下面的命令檢查目錄結(jié)構(gòu)樹。
- $ pass
- or
- $ pass ls
- or
- $ pass show
- Password Store
我沒有看到任何樹型結(jié)構(gòu),所以我們將根據(jù)我們的需求來(lái)創(chuàng)建一個(gè)。
插入一個(gè)新的密碼信息
我們將通過(guò)運(yùn)行以下命令來(lái)保存 gmail 的 id 及其密碼。
- $ pass insert eMail/2daygeek@gmail.com
- mkdir: created directory '/home/magi/.password-store/eMail'
- Enter password for eMail/2daygeek@gmail.com:
- Retype password for eMail/2daygeek@gmail.com:
執(zhí)行重復(fù)操作,直到所有的密碼插入完成。 比如保存 Facebook 密碼。
- $ pass insert Social/Facebook_2daygeek
- mkdir: created directory '/home/magi/.password-store/Social'
- Enter password for Social/Facebook_2daygeek:
- Retype password for Social/Facebook_2daygeek:
我們可以列出存儲(chǔ)中的所有現(xiàn)有的密碼。
- $ pass show
- Password Store
- ├── 2g
- ├── Bank
- │ ├── 2daygeek@gmail.com
- │ └── magesh.maruthamuthu@gmail.com
- ├── Social
- │ ├── Facebook_2daygeek
- │ └── Gplus_2daygeek
- ├── Social
- └── Sudha
- └── sudha21.magesh@gmail.com
顯示已有密碼
運(yùn)行以下命令從密碼存儲(chǔ)中檢索密碼信息,它會(huì)詢問你輸入密碼以解鎖。
- $ pass eMail/2daygeek@gmail.com
- *******
在剪貼板中復(fù)制密碼
要直接將密碼直接復(fù)制到剪貼板上,而不是在終端上輸入,請(qǐng)使用以下更安全的命令,它會(huì)在 45 秒后自動(dòng)清除密碼。
- $ pass -c eMail/magesh.maruthamuthu@gmail.com
- Copied eMail/magesh.maruthamuthu@gmail.com to clipboard. Will clear in 45 seconds.
生成一個(gè)新密碼
如果你想生成一些比較難以猜測(cè)的密碼用于代替原有的奇怪密碼,可以通過(guò)其內(nèi)部的 pwgen 功能來(lái)實(shí)現(xiàn)。
- $ pass generate eMail/2daygeek@gmail.com 15
- An entry already exists for eMail/2daygeek@gmail.com. Overwrite it? [y/N] y
- The generated password for eMail/2daygeek@gmail.com is:
- y!NZ<%T)5Iwym_S
生成沒有符號(hào)的密碼。
- $ pass generate eMail/2daygeek@gmail.com 15 -n
- An entry already exists for eMail/2daygeek@gmail.com. Overwrite it? [y/N] y
- The generated password for eMail/2daygeek@gmail.com is:
- TP9ACLyzUZUwBwO
編輯現(xiàn)有的密碼
使用編輯器插入新密碼或編輯現(xiàn)有密碼。 當(dāng)你運(yùn)行下面的命令時(shí),將會(huì)在包含密碼的文本編輯器中打開文件 /dev/shm/pass.wUyGth1Hv0rnh/6kOBG-eMail-2daygeek@gmail.com.txt。 只需在其中添加新密碼,然后保存并退出即可。
- $ pass edit eMail/2daygeek@gmail.com
- File: /dev/shm/pass.wUyGth1Hv0rnh/6kOBG-eMail-2daygeek@gmail.com.txt
- TP9ACLyzUZUwBwO
移除密碼
刪除現(xiàn)有密碼。 它將從 ~/.password-store 中刪除包含 .gpg 的條目。
- $ pass rm eMail/2daygeek@gmail.com
- Are you sure you would like to delete eMail/2daygeek@gmail.com? [y/N] y
- removed '/home/magi/.password-store/eMail/2daygeek@gmail.com.gpg'
多選項(xiàng)功能
要保存詳細(xì)信息,如 URL、用戶名、密碼、引腳等信息,可以使用以下格式。 首先確保你要將***項(xiàng)設(shè)置為密碼,因?yàn)樗糜谠谑褂眉糍N板選項(xiàng)時(shí)將***行復(fù)制為密碼,以及后續(xù)行中的附加信息。
- $ pass insert eMail/2daygeek@gmail.com -m
- Enter contents of eMail/2daygeek@gmail.com and press Ctrl+D when finished:
- H3$%hbhYT
- URL : http://www.2daygeek.com
- Info : Linux Tips & Tricks
- Ftp User : 2g
(題圖:Pixabay, CC0)