私はほぼ毎日使用するSSHキーを持っていますが、最近長い間ロックを解除していないことを発見しました。私はいつもコンピュータをシャットダウンしないので、サーバーにアクセスするときにssh-agentがすでに実行されていることがよくあります。しかし、実際にパスワードを聞いたことがないことを確認しました。
少し精神が混乱しているようです...
ps aux | grep agent
走る姿は見えませんssh-agent
。ssh-keygen -y
パスワードを要求しましたが、予期したパスワードが機能しませんでした。ssh [email protected]
今接続してください。
一時的ですが、現時点では特に敏感なことはありません。
ここで何を探すべきですか?再起動後もパスワードなしでキーはどのように機能しますか?私はここで何かをしていると仮定していますが、私がしたことをどうやって知ることができますか?
コメントによると、実行しましたが何も返されませんでしたecho $SSH_AUTH_SOCK
ので、何をオンにしたのかわかりません。/run/user/1000/keyring/ssh
lsof /run/user/1000/keyring/ssh
私の鍵がロック解除されないようにするにはどうすればよいですか?
答え1
私も同じ混乱を経験し、何が起こっているのかを知ることができました。
ssh-agent
まず、自動的に実行される理由を知りたかったので、ps
このf
フラグを使用して他のプロセスが分岐(生成)されたものが何であるかを確認しましたssh-agent
。
ps auxf | grep ssh-agent -C3
結果:
foobar 4478 0.0 0.0 602792 7748 ? SLl Jun07 0:01 /usr/bin/gnome-keyring-daemon --daemonize --login
foobar 576058 0.0 0.0 7492 4872 ? S 01:24 0:00 \_ /usr/bin/ssh-agent -D -a /run/user/1000/keyring/.ssh
gnome-keyring-daemon
次に(結果プロセス)調査ssh-agent
し、次のWikiページを見ました。
https://wiki.gnome.org/Projects/GnomeKeyring/Ssh
デフォルトでは、GNOME Keyring DaemonはSSH-Agentの永続ユーザー固有のインスタンスをロードして、メモリー内のキーをロック解除したままにする永続ユーザー固有のサービスです。これは、SSHエージェントがセッション全体でロック解除されたすべてのキーをメモリに保持するため、別のターミナルウィンドウを開くたびにSSHキーのパスワードを退屈に入力する必要がないことを意味します。
生成されたSSHエージェントは、新しいキーファイル(文書によると、関連ファイルを含むすべての新しいファイル)を恒久的に監視します~/.ssh
(サブフォルダではありません)。これは、ファイルを.pub
手動で実行せずにSSHエージェントに新しいキーを自動的に追加することを意味します。新しいファイルをフォルダに入れる前と後にすべてのキーを一覧表示するためにssh-add
実行すると、ssh-add -l
それが表示されます~/.ssh
。すぐに自動的に表示されます。
デフォルトでは、GNOME Keyring DaemonはFedora Workstation 36(マイオペレーティングシステム)にインストールされ有効になっています。
~/.ssh
パスワードを入力し続けることなくパスワードで保護されたキーファイルを楽しむことができるという点で事実感謝しています。悪意のあるアプリケーションが自分のキーファイルを盗んだとしても、パスワードはssh-agentのメモリに安全に保存されているため、パスワードがわかりません。
これはまた、パスワードで保護されたSSHキーを使用して、バックグラウンドで無人で実行する必要があるタスク(スケジュールされたBorgバックアップタスクなど)を実行できることを意味します。 GNOMEキーリングデーモンの仕組みにより、ユーザーの介入なしにパスワードで保護されたキーのパスワードを自動的に復号化します。
デフォルトでは、すべてのSSHキーは「保存状態」(ディスクで暗号化されている)で保護されています。欠点はありません。
SSH接続が試行されるたびに、GNOMEキーリングデーモンはこれを次のように処理します。
- キーを初めて使用した場合、またはパスワードがキーリングに保存されていない場合は、パスワードを使用してキーを手動でロック解除するように求められます。
パスワードを入力して[ロック解除]をクリックすると、コンピュータをログアウトまたは再起動するまでロック解除されたままになります。次にコンピュータにログインするときにキーを再使用すると、SSHパスワードを入力するように求められます。
「ログインするたびに自動的にこのキーのロックを解除」を有効にすると、パスワードはプライベートGNOMEキーリングに保存され、ログインするたびに自動的にロック解除されます。キーを使用せずにすぐにキーを使用する必要がある場合は非常に便利です。 。ユーザー介入。そして、鍵は常にディスクに暗号化されているので、まだ安全です!
これは文字通りできるだけ完璧です。
PS:多くの人が話すFondoのもう一つのバリエーションがあります。キーホルダー「プロジェクトなのにこの記事を書く時点では、2018年1月(ほぼ5年前)以降にアップデートにはなりませんでした。永久に実行するのではなく、バックアップタスクのようなタスクを処理することはできませ~/.bashrc
んgnome-keyring-daemon
。がないので、「すぐに」動作します。これは私にとって良いニュースです!
基本的に今日、私はそれがどれほど素晴らしいかを知っていましたgnome-keyring-daemon
!
無効にしたい場合は、私がリンクしたWikiページに指示があります。しかし、ssh-agent
鍵をメモリに安全に保管する公式デーモンを正しく使用するため、理由を理解できません。多くの人がssh-agent
1つの共有インスタンスを手動で起動してアクティブに保ちます。 GNOMEのキーリングデーモンは、構成や手間をかけずに簡単に提供できます。素晴らしいです!手間をかけずにセキュリティを強化するために、ディスク上のすべてのキーをパスワードで保護できます。