KDE Wallet

出自 Arch Linux 中文维基

KDE Wallet Manager 是一個用於管理 KDE Plasma 上的密碼的工具。KWallet子系統提供了訪問和管理兼容KWallet的應用所保存的密碼的功能,同時你也可以用它來保存你自己的密碼。

在登錄時自動解鎖 Kwallet[編輯 | 編輯原始碼]

注意:
  • kwallet-pamGnuPG keys 不兼容,所以 KDE Wallet 必須使用 blowfish 加密方式。
  • 所選擇的 KWallet 密碼必須與當前 用戶 的密碼相同。
  • KWallet 在賬戶使用自動登錄的時候不會自動解鎖。
  • 要自動解鎖的 wallet 必須要命名為 kdewallet (這是默認的名字)。任何其他名字的 wallet 都不會自動解鎖。
  • 如果桌面環境用的是 KDE, 建議關閉 KDE Wallet settings 裡的 Close when last application stops using it 選項來防止 wallet 在每次被使用(比如獲取WiFi密碼)之後被關閉。
  • 可能需要先把默認創建的 wallet 刪除——即刪除所有已經儲存的密碼條目。
  • 如果 kwallet Migration Assistant在每次登錄之後都要求輸入密碼,請重命名或刪除 ~/.kde4/share/apps/kwallet 文件夾.

安裝 kwallet-pam 包來提供對 PAM 的兼容模塊。

選擇性 安裝 kwalletmanager 來使用 KWallet 管理工具。這個工具可以用於建立一個 blowfish 加密的KDE Wallet,同時提供了 kcm-module 沒有提供的其他設置。

提示:替代選項是使用 KWalletManager 然後設置一個空的 Kwallet 密碼, 這樣就可以避免需要輸入密碼來解鎖 wallet。只要在 Change Password.. 的時候把兩個框都留空就可以了。但是這樣的話無法阻止對 wallet 的未授權訪問。 因此非常建議打開 Access Control 裡的 Prompt when an application accesses a wallet 選項來避免未授權訪問。

配置 display manager[編輯 | 編輯原始碼]

下面的幾行必須存在於你使用的 Display Manager 的配置文件裡:

auth            optional        pam_kwallet5.so
session         optional        pam_kwallet5.so auto_start

常見的 display manager 所需要修改的文件如下:

  • SDDM:不需要進行修改,因為 /etc/pam.d/sddm 裡已經寫好了。
  • GDM: 修改 /etc/pam.d/gdm-password
  • LightDM: 修改 /etc/pam.d/lightdm/etc/pam.d/lightdm-greeter
/etc/pam.d/lightdm
#%PAM-1.0
auth            include         system-login
auth            optional        pam_kwallet5.so

account         include         system-login

password        include         system-login

session         include         system-login
session         optional        pam_kwallet5.so auto_start

使用 KDE Wallet 存儲 ssh key passphrases[編輯 | 編輯原始碼]

安裝 ksshaskpass

創建 一個 autostart script file 並把它標記為 executable:

~/.config/autostart-scripts/ssh-add.sh
#!/bin/sh
ssh-add </dev/null
提示:上面這個 ssh-add.sh 腳本只會添加默認的 ~/.ssh/id_rsa key。如果你在 ~/.ssh/ 下有多個SSH key,假設分別是 key1, key2, key3,你需要像下面這樣修改腳本來自動添加它們:
~/.config/autostart-scripts/ssh-add.sh
#!/bin/sh
ssh-add $HOME/.ssh/key1 $HOME/.ssh/key2 $HOME/.ssh/key3 </dev/null

你需要設置環境變量 SSH_ASKPASSksshaskpass

export SSH_ASKPASS="/usr/bin/ksshaskpass"

它會要你輸入密碼來解鎖 SSH keys。在重啟之後,輸入kwallet密碼之後 SSH keys 就會被解鎖。

如果要添加一個新的 key 並把密碼儲存在 kwallet裡,使用這個命令:

$ ssh-add /path/to/new/key </dev/null

並把這個 key 按照上面所說的方法添加到 ~/.config/autostart-scripts/ssh-add.sh 的 keys 列表裏。

Chrome 和 Chromium 的 KDE Wallet 支持[編輯 | 編輯原始碼]

Chrome/Chromium 內置了 wallet 支持。在運行 Chromium 的時候加上 --password-store=kwallet 或者 --password-store=detect 參數來啟用它。如果需要永久啟用這個參數,參考 Chromium/Tips and tricks#Making flags persistent。(設置 CHROMIUM_USER_FLAGS 是無效的。)

See also[編輯 | 編輯原始碼]