私はほぼ同じ2つのArch Linuxマシンを持っています設定、すべて実行中です/usr/bin/gnome-keyring-daemon --daemonize --login
。すべて同じSSHキーを持っていますが、そのうちの1つだけが公開キーを持っています。公開鍵を持つホストでは、GNOME Keyringデーモンが正しく機能します。予想されるプロンプトがなくても、他のコンピュータにSSHで接続できます。ホストからいいえ公開鍵がGNOME Keyringのようです。私が入力したパスワードを無視してくださいそして、毎回次のメッセージが表示されます。
$ ls ~/.ssh/id_rsa.pub
ls: cannot access /home/user/.ssh/id_rsa.pub: No such file or directory
$ ssh some-host exit
Enter passphrase for key '/home/user/.ssh/id_rsa':
$ ssh other-host exit
Enter passphrase for key '/home/user/.ssh/id_rsa':
それも登録された身元はありません。、パスワードを入力した後でも:
$ ssh-add -l
The agent has no identities.
公開鍵を直感的にコピーした後、パスワードを入力するように求められなくなります。その後、公開鍵を再度削除した後、症状が再び現れました。この動作の理由はありますか、それともバグですか?
答え1
GNOMEキーリング文書からSSHエージェントページ:
SSH エージェントは、対応する *.pub 同伴ファイルを含む ~/.ssh のファイルを自動的にロードします。追加のSSHキーは、ssh-addコマンドを介して手動でロードおよび管理できます。
id_rsa
したがって、GNOMEキーリングは、そのキーリングが存在する場合にのみロードされますid_rsa.pub
。
ssh-keygen
秘密鍵ファイルを使用して秘密鍵ファイルを生成できます。
ssh-keygen -y -f id_rsa > id_rsa.pub
id_rsa
GNOMEキーリングを自動的にロードしたくない場合は、以下を削除する必要があります。id_rsa.pub
このルールを選択した技術的な理由が見つかりませんが、バグではありません。