「pass」パスワードマネージャにパスワードを追加してみました。しかし、私の試みは「公開鍵なし」GPGエラーのため失敗しました。なぜ?

「pass」パスワードマネージャにパスワードを追加してみました。しかし、私の試みは「公開鍵なし」GPGエラーのため失敗しました。なぜ?

インストールしようとしています。合格:標準Unixパスワードマネージャただし、アプリケーションにパスワードを追加しようとすると、次のエラーが発生します。

gpg: Kelly's Passwords: skipped: No public key
gpg: [stdin]: encryption failed: No public key

GPG公開鍵?

コマンドを入力すると、次の結果gpg --list-keysが表示されます。

/home/khays/.gnupg/pubring.gpg
------------------------------
pub   2048R/64290B2D 2012-11-05
uid                  Kelly Hays <[email protected]>
sub   2048R/0DF57DA8 2012-11-05

この問題を解決する方法について少し知りません。どんなアイデアがありますか?

答え1

パスワードストアはどのように作成しましたか? ?pass init "Kelly's Passwords"もしそうなら、これは間違っているので、に電話する必要がありますpass init 64290B2D

その場合はpass insert foo失敗します。

gpg: fooo: skipped: public key not found
gpg: [stdin]: encryption failed: public key not found

その後、まず自分のキー(、、、、gpg --edit-key 64290B2D)を信頼する必要があります。trust5save

答え2

同じマークが与えられた場合、誰かがこの問題を偶然見つけた場合、解決策が異なる可能性があります。代わりに、キーの生成/管理に使用した可能性がある(またはその逆)使用passしています。確認する:gpg2gpg

bash -x $(which pass) insert foo

答え3

これは巻き上げる上記の情報は、Kubuntu 20.04(Ubuntu Linux v 20.04 with KDE Desktop)でpass使用した情報です。gpg2

passLinux CLIパスワードマネージャです。

概略図: pass公開鍵が必要ですgpggpgLinux CLI暗号化プログラムです。複数のバージョンがあります。 Kubuntu 20.04ではこれを使用しますgpg2が、単に「gpg」と呼びます。

まず、gpg鍵を生成する必要があります。次にkey-idをpassパラメータとして渡します。その後しなければならない働く

キー生成:

~$ gpg --gen-key

輝く新しいキーを見てください。

~$ gpg --list-keys

pub   rsa3072 2022-07-17 [SC] [expires: 2024-07-16]
      YourKey (a bunch of letters and numbers)
uid           [trust-level] yourName <[email protected]>
sub   rsa3072 2022-07-17 [E] [expires: 2024-07-16]

マシンに新しいキーを信頼するように指示する必要があります。

gpg --edit-key yourName [email protected], trust, 5, save)

(信頼が自動的に[最終]に設定されているので、このステップは実際には私には必要ありませんでした。しかし、そうして悪いことはありませんでした。)

これからpass次のページに移動できます。 https://www.passwordstore.org/

------ "dev"というフォルダにあるdockerのパスワードは次のとおりです。 ------

パスワード保存の初期化:

~$ pass init [email protected]
Password store initialized for [email protected]

パスワードストアを作成します。

~$ pass insert dev/docker
mkdir: created directory '/home/$USER/.password-store/dev'
Enter password for dev/docker: 
Retype password for dev/docker:

正しいパスワードを入力しましたか? -

~$ pass dev/docker
thisIsTheWrongPassword!

無効なパスワードを削除する -

~$ pass rm dev/docker
Are you sure you would like to delete dev/docker? [y/N] y
removed '/home/$USER/.password-store/dev/docker.gpg'

正しいパスワードを入力してください

~$ pass insert dev/docker
mkdir: created directory '/home/$USER/.password-store/dev'
Enter password for dev/docker: 
Retype password for dev/docker:

2番目にパスワードが正しいことを確認してください。

~$ pass dev/docker
doNotExposeYourPasswordOnStackExchange!

passを使用してCLIを介してDocker Hubにログインできます。

pass dev/docker | login -u myUserName --password-stdin

これにより、パスワードを画面に印刷せずにDocker Hubに直接接続します。

答え4

pass init <gpg-id>新しいパスワードストアを初期化し、暗号化にgpg-idを使用することを忘れないでください。あなただけ最初ただ。

pass add <folder/file> 上記のパスワードストアに新しいパスワードを追加するために使用されます。

$ pass init tsabunkar (storage-manager should be done first time only)
$ pass add personal/gmail (adding my gmail creds)

代わりに別の資格情報を追加するには、次の手順を実行します。

$ pass add personal/linux

ここで別の資格情報を追加したいのですが、今回はinit代わりにコマンドを使用します。add

$ pass init personal/aws/root

しかし、その選択が次のようになるはずです。add

$ pass add personal/aws/root

エラーメッセージ:

Enter password for personal/aws/root: 
Retype password for personal/aws/root: 
gpg: personal/aws/root: skipped: No public key
gpg: [stdin]: encryption failed: No public key
Password encryption aborted.

今、あなたが間違って引用したので、これが理解されたと思います。パスワードを保存やらなければならなかったチャベンカしかし、個人/aws/ルート したがって、正しいパスワードストアを再参照すると、問題が解決します。

$ pass init tsabunkar
$ pass add personal/aws/root

関連情報