ログイン時に「ssh-agent bash」と「ssh-add」を自動的に実行するには? [コピー]

ログイン時に「ssh-agent bash」と「ssh-add」を自動的に実行するには? [コピー]

ユーザーがSSHを介してCENTOSシステムにログインするたびに、次のコマンドを実行する必要があるシナリオがあります。

SSH-エージェントbash SSH-追加

[他のスレッドでは、私がこのコマンドを使用する理由を説明します。

ssh-addが文句を言います:認証プロキシへの接続を開くことができません ]

私は.bashrcに入れようとしましたが、Putty経由でログインするとログインが中断されるようです。

また、両方のコマンドをシェルスクリプトに入れてから、ログイン後に手動でシェルスクリプトを実行しようとしましたが、うまくいきませんでした(「ssh-agent bash」のみを実行したようです)。

では、ユーザーがログインしたときにこれら2つのコマンドを実行できますか?では、どうすればよいですか?

ありがとう、ジム

ベストアンサー1

入れたら

ssh-agent bash ssh-add

あなたのものでは.bashrc無限再帰が発生します。シェルが.bashrc実行を開始し、ssh-agent...の別のコピーが開始され、再実行され、bashプロセス.bashrcが繰り返されます。

あなたは次のようなものが欲しいでしょう:

if [[ "$SSH_AUTH_SOCK" = "" ]]; then
    # on the first round, we do this...
    exec ssh-agent bash
else
    # ... and when ssh-agent is running, we do this instead.
    ssh-add
fi

おすすめ記事