「KDE Wallet」の版間の差分
(同期) |
(同期) |
||
5行目: | 5行目: | ||
[[zh-hans:KDE Wallet]] |
[[zh-hans:KDE Wallet]] |
||
[https://utils.kde.org/projects/kwalletmanager/ KDE Wallet Manager] は、[[KDE]] Plasma システムでパスワードを管理するためのツールです。KDE ウォレットサブシステムを使うことで秘密を守ることだけでなく、KDE ウォレットと連動する全てのアプリケーションのパスワードを管理することができます。 |
[https://utils.kde.org/projects/kwalletmanager/ KDE Wallet Manager] は、[[KDE]] Plasma システムでパスワードを管理するためのツールです。KDE ウォレットサブシステムを使うことで秘密を守ることだけでなく、KDE ウォレットと連動する全てのアプリケーションのパスワードを管理することができます。 |
||
+ | |||
+ | ウォレット (KDE の用語では vault や keyring とも呼ばれます) とは、ユーザー定義のパスワードによって保護された暗号化ボリュームであり、ユーザーやソフトウェアはシークレット (ユーザーがアプリケーションで ''"アカウントを記憶する"'' にチェックを入れた場合には資格情報がこれに該当します) をここに保存することができます。ウォレットは、ユーザーによって手動で作成及び使用を行ったり、あるいは、ウォレットサブシステムと統合されている何らかのソフトウェア (例えばメールアプリやゲーム) によってバックグラウンドで自動的に作成及び使用ができます。多くの場合、ウォレットはユーザーのログイン時に PAM モジュールを使って自動的に復号されます (以下を参照)。 |
||
+ | |||
+ | ヒント: |
||
+ | |||
+ | * ウォレットを、必要としているアプリケーションにだけ利用可能にする必要がある場合、デフォルトのウォレット名 (つまり {{ic|kdewallet}}) を使用し、ユーザーのパスワードと同じにする (PAM で復号できるようにするため) ことが推奨されます。 |
||
+ | * デフォルトでは、ウォレットは {{ic|~/.local/share/kwalletd}} 内に {{ic|.kwl}} 拡張子が付けられた暗号化ファイルとして保存されます。 |
||
{{Note|KDE Frameworks 5.97.0 以降、KDE Wallet は org.freedesktop.secrets DBus API をサポートしています。これにより、libsecret が KDE Wallet を使用できるようになり、Secret Service API を使ってパスワードなどの機密情報を保管・取得できるようになりました。 |
{{Note|KDE Frameworks 5.97.0 以降、KDE Wallet は org.freedesktop.secrets DBus API をサポートしています。これにより、libsecret が KDE Wallet を使用できるようになり、Secret Service API を使ってパスワードなどの機密情報を保管・取得できるようになりました。 |
||
}} |
}} |
||
+ | |||
+ | == インストール == |
||
+ | |||
+ | しばしば、KDE Wallet は [[KDE]] Plasma デスクトップ環境と共に使用されます。ウォレットサブシステムは {{Pkg|kwallet5}} パッケージで手動でインストールすることもできます。このサブシステムはさらに以下のシステムに依存しています: |
||
+ | |||
+ | * [[FUSE]] (復号されたウォレットをユーザーランドのディレクトリへマウントするために)。具体的には、{{man|1|fusermount}} コマンドを提供している {{Pkg|fuse2}} パッケージに依存しています。 |
||
+ | * 暗号化バックエンド。ウォレットを暗号化ファイルとして保存するために使用されます。いくつかのバックエンドがサポートされています。例えば、[[Gocryptfs]] ({{Pkg|gocryptfs}} パッケージ) や [[EncFS]] ({{Pkg|encfs}} パッケージ) です。 |
||
+ | |||
+ | 任意で、ウォレット管理ツールの {{Pkg|kwalletmanager}} パッケージも[[インストール]]してください。このツールによって、グラフィカルに KDE ウォレットの作成や管理ができるようになります。また、''kcm-module'' によって提供されていない {{ic|blowfish}} 暗号やその他の設定も利用可能できるようになります。 |
||
== ログイン時に KDE ウォレットを自動的にアンロック == |
== ログイン時に KDE ウォレットを自動的にアンロック == |
||
22行目: | 38行目: | ||
* kwallet Migration Assistant がログイン後に毎回パスワードを尋ねてくる場合、{{ic|~/.kde4/share/apps/kwallet}} フォルダを削除するか名前を変更してください。 |
* kwallet Migration Assistant がログイン後に毎回パスワードを尋ねてくる場合、{{ic|~/.kde4/share/apps/kwallet}} フォルダを削除するか名前を変更してください。 |
||
}} |
}} |
||
− | |||
− | 任意で、ウォレットの管理ツールの {{Pkg|kwalletmanager}} を[[インストール]]してください。このツールは、''kcm-module'' で提供されない設定と {{ic|blowfish}} 暗号のある KDE ウォレットを作成するのに使用できます。 |
||
{{Tip|あるいは、KWalletManager を使用して、空の Kwallet パスワードを設定することで、パスワード無しでウォレットのアンロックを可能にできます。''パスワードを変更..'' の両方の入力欄を空欄にしてください。しかし、これによりユーザのウォレットに対して望まない(読み込み/書き込み)アクセスを招く恐れがあります。ウォレットに対する望まないアクセスを防ぐために ''アクセス管理'' の ''アプリケーションがウォレットにアクセスするときに通知する'' を有効化することを強くおすすめします。}} |
{{Tip|あるいは、KWalletManager を使用して、空の Kwallet パスワードを設定することで、パスワード無しでウォレットのアンロックを可能にできます。''パスワードを変更..'' の両方の入力欄を空欄にしてください。しかし、これによりユーザのウォレットに対して望まない(読み込み/書き込み)アクセスを招く恐れがあります。ウォレットに対する望まないアクセスを防ぐために ''アクセス管理'' の ''アプリケーションがウォレットにアクセスするときに通知する'' を有効化することを強くおすすめします。}} |
||
174行目: | 188行目: | ||
== 参照 == |
== 参照 == |
||
+ | * [[Wikipedia:ja:KWallet]] |
||
* [https://www.dennogumi.org/2014/04/unlocking-kwallet-with-pam/ Unlocking KWallet with PAM] |
* [https://www.dennogumi.org/2014/04/unlocking-kwallet-with-pam/ Unlocking KWallet with PAM] |
||
* [https://invent.kde.org/frameworks/kwallet/-/merge_requests/11 org.freedesktop.secrets DBus API initial support] |
* [https://invent.kde.org/frameworks/kwallet/-/merge_requests/11 org.freedesktop.secrets DBus API initial support] |
||
− | {{TranslationStatus|KDE Wallet|2023-12- |
+ | {{TranslationStatus|KDE Wallet|2023-12-23|794836}} |
2023年12月23日 (土) 13:56時点における版
KDE Wallet Manager は、KDE Plasma システムでパスワードを管理するためのツールです。KDE ウォレットサブシステムを使うことで秘密を守ることだけでなく、KDE ウォレットと連動する全てのアプリケーションのパスワードを管理することができます。
ウォレット (KDE の用語では vault や keyring とも呼ばれます) とは、ユーザー定義のパスワードによって保護された暗号化ボリュームであり、ユーザーやソフトウェアはシークレット (ユーザーがアプリケーションで "アカウントを記憶する" にチェックを入れた場合には資格情報がこれに該当します) をここに保存することができます。ウォレットは、ユーザーによって手動で作成及び使用を行ったり、あるいは、ウォレットサブシステムと統合されている何らかのソフトウェア (例えばメールアプリやゲーム) によってバックグラウンドで自動的に作成及び使用ができます。多くの場合、ウォレットはユーザーのログイン時に PAM モジュールを使って自動的に復号されます (以下を参照)。
ヒント:
- ウォレットを、必要としているアプリケーションにだけ利用可能にする必要がある場合、デフォルトのウォレット名 (つまり
kdewallet
) を使用し、ユーザーのパスワードと同じにする (PAM で復号できるようにするため) ことが推奨されます。 - デフォルトでは、ウォレットは
~/.local/share/kwalletd
内に.kwl
拡張子が付けられた暗号化ファイルとして保存されます。
目次
インストール
しばしば、KDE Wallet は KDE Plasma デスクトップ環境と共に使用されます。ウォレットサブシステムは kwallet5 パッケージで手動でインストールすることもできます。このサブシステムはさらに以下のシステムに依存しています:
- FUSE (復号されたウォレットをユーザーランドのディレクトリへマウントするために)。具体的には、fusermount(1) コマンドを提供している fuse2 パッケージに依存しています。
- 暗号化バックエンド。ウォレットを暗号化ファイルとして保存するために使用されます。いくつかのバックエンドがサポートされています。例えば、Gocryptfs (gocryptfs パッケージ) や EncFS (encfs パッケージ) です。
任意で、ウォレット管理ツールの kwalletmanager パッケージもインストールしてください。このツールによって、グラフィカルに KDE ウォレットの作成や管理ができるようになります。また、kcm-module によって提供されていない blowfish
暗号やその他の設定も利用可能できるようになります。
ログイン時に KDE ウォレットを自動的にアンロック
ログイン時に KDE ウォレットを自動的にアンロックするには、PAM 互換モジュールの kwallet-pam をインストールしてください。また、KDE ウォレットパスワードは現在のユーザーのパスワードと一致していなければなりません。
PAM の設定
以下の行は、対応するそれぞれのセクションになければなりません:
auth optional pam_kwallet5.so session optional pam_kwallet5.so auto_start
状況に合わせて PAM 設定ファイルを編集してください:
- SDDM の場合、
/etc/pam.d/sddm
に上記の行がすでに存在するため、編集する必要は無いはずです。 - LightDM の場合、
/etc/pam.d/lightdm
と/etc/pam.d/lightdm-autologin
に上記の行がすでに存在するため、編集する必要は無いはずです。 - GDM の場合、
/etc/pam.d/gdm-password
を適宜編集してください。 - greetd の場合、
/etc/pam.d/greetd
を適宜編集してください。 - tty ログイン(ディスプレイマネージャなし)でアンロックするには、
/etc/pam.d/login
を適宜編集してください。force_run パラメータを指定する必要があります。
/etc/pam.d/login
auth optional pam_kwallet5.so session optional pam_kwallet5.so auto_start force_run
/etc/pam.d/greetd
#%PAM-1.0 auth required pam_securetty.so auth requisite pam_nologin.so auth include system-local-login auth optional pam_kwallet5.so account include system-local-login session include system-local-login session optional pam_kwallet5.so auto_start force_run
KDE ウォレットを使って ssh 鍵のパスフレーズを保存
ksshaskpass パッケージをインストールしてください。
自動起動 .desktop ファイルを作成してください:
~/.config/autostart/ssh-add.desktop
[Desktop Entry] Exec=ssh-add -q Name=ssh-add Type=Application
また、SSH_ASKPASS
環境変数を ksshaskpass
に設定し、SSH_ASKPASS_REQUIRE
を prefer
に設定する必要があります(SSH_ASKPASS_REQUIRE
を prefer
に設定すると、TTY よりも askpass プログラムを優先します)。ログイン時にその環境変数を自動的に設定するには、以下の systemd 環境変数を作成してください:
~/.config/environment.d/ssh_askpass.conf
SSH_ASKPASS=/usr/bin/ksshaskpass SSH_ASKPASS_REQUIRE=prefer
パスワードを尋ねてきて、SSH 鍵をアンロックします。kwallet のパスワードを入力すれば、再起動時に SSH 鍵がアンロックされるはずです。
新しい鍵を追加して kwallet でパスワードを保存するには、以下のコマンドを使ってください。
$ ssh-add /path/to/new/key </dev/null
そして、上で説明したように ~/.config/autostart/ssh-add.desktop
内の鍵のリストにその鍵を追加して、kwallet のパスワード入力時にアンロックされるようにしてください。
KDE ウォレットを使って Git の資格情報を保存
Git は資格情報ヘルパーに資格情報の処理を委託できます。ksshaskpass を資格情報ヘルパーとして使うことで、HTTP/HTTPS と SMTP のパスワードは KDE ウォレットに安全に保存できます。
ksshaskpass パッケージをインストールしてください。
GIT_ASKPASS
環境変数で Git を設定してください:
~/.config/environment.d/git_askpass.conf
GIT_ASKPASS=/usr/bin/ksshaskpass
代替や詳細は gitcredentials(7) を見てください。
Chrome と Chromium で KDE ウォレットを使う
Chrome/Chromium/Opera には組み込みのウォレット統合機能があります。それを有効化するには、--password-store=kwallet5
か --password-store=detect
を引数として渡して Chromium を実行してください。この変更を永続化させるには、Chromium#フラグを永続的に設定 を見てください。(CHROMIUM_USER_FLAGS を設定してもうまく行きません。)
ターミナルからパスワードをクエリする
プレーンなテキストファイルにパスワードを保存する代わりに、kwallet-query を使って手動で新しいエントリをウォレットに追加したり、取得したりできます。
例えば、Podman で Docker Hub レジストリにログインしたい場合、以下のコマンドを使ってログインできます(Podman は --password-stdin
フラグで標準入力からのパスワード入力を受け付けます):
$ kwallet-query -r folder_entry wallet_name -f folder_name | podman login docker.io -u dockerhub_username --password-stdin
この方法では、パスワードはテキストファイルに保存されず、ターミナルの履歴ファイルにも残りません。
ウインドウマネージャで KWallet を自動的にアンロックする
ログインパスワードで保護された KWallet をアンロックするには、PAM の設定に加えて以下をウインドウマネージャの設定ファイルに追加する必要があります:
exec --no-startup-id /usr/lib/pam_kwallet_init
KWallet を無効化する
KWallet を永久に無効化したい場合:
~/.config/kwalletrc
[Wallet] Enabled=false
D-Bus の自動アクティベーション
ほとんどのアプリケーションは org.freedesktop.secrets.service
D-Bus サービスを使用します。KWallet は、そのままの状態では自動アクティベーションのためのサービスファイルを提供していません。
以下のようなサービスファイルを作成することで、自動アクティベーションを行うことができます:
~/.local/share/dbus-1/services/org.freedesktop.secrets.service
[D-BUS Service] Name=org.freedesktop.secrets Exec=/usr/bin/kwalletd5