ssh-agent
デスクトップで実行してみましたが、うまく機能します。これは、パスワードなしでSSHキーを使用できることを意味します。
SSH を介してデスクトップに接続するとき、突然 SSH エージェントを使用できなくなります。 SSHでパスワードを尋ねます。
ps
実行されているのを見ることができますssh-agent
。
これにより、eval $(ssh-agent -s) && ssh-add
パスワードの入力を求められ、ssh-agent
現在のSSHセッション内で機能します。ログアウトして再度ログインすると、もう機能しません。
また、ps
新しいインスタンスが起動したことを確認しましたssh-agent
。したがって、複数のインスタンスが実行されています。
SSH経由で接続するとプロキシが機能しないのはなぜですか?なぜ毎回再起動する必要がありますか?
私はクライアントとサーバーの両方でDebian 10openssh-client
バージョンを使用しています。1:7.9p1-10+deb10u2
ベストアンサー1
SSH クライアントはシェル変数 SSH_AUTH_SOCK を使用して SSH エージェントと通信します。この変数には、エージェントが待機しているソケットが含まれています。設定されていないか、正しく設定されていないと、SSHクライアントはエージェントと通信できません。
あなたの場合は、次のことが起こっていると思います。
- コンピュータにログインすると、SSH_AUTH_SOCKは設定されません。 SSH クライアントは SSH エージェントを認識しません。
eval $(ssh-agent -s)
別のSSHエージェントを起動し、現在のシェルでSSH_AUTH_SOCKを設定します。 SSHクライアントは新しいエージェントと通信できます。- その後、ログアウトして再度ログインすると、SSH_AUTH_SOCKはリセットされません。
.bashrcでSSH_AUTH_SOCKを設定して、将来のすべてのbashセッションでこの変数を設定できるようにします。 SSHエージェントを終了し、新しいエージェントを実行するたびに.bashrcを更新する必要があります。