GNU/Linux >> Linux の 問題 >  >> Linux

ssh キー ssh-agent bash および ssh-add

エージェント キーをメモリに保持するプログラムで、一度ロックを解除するだけで済みます 、毎回ではなく。 ssh-agent これを SSH キーに対して行います。

ssh-agent を起動する通常の方法

  • eval `ssh-agent` – これにより、エージェントがバックグラウンドで実行され、current に適切な環境変数が設定されます シェル インスタンス。

    (ssh-agent を引数なしで開始すると、シェルによって解釈されるコマンドが出力されます。)

  • exec ssh-agent bash新しいを開始します bash のインスタンス シェル、現在のものを置き換えます。

    (1 つ以上の引数を指定すると、ssh-agent 何も出力しませんが、指定されたコマンドを開始します:この場合、 bash シェルですが、技術的には何でもかまいません。)

    ターミナル ウィンドウを閉じると ssh-agent が自動的に強制終了されるため、2 番目の方法が好まれる場合があります。 (evalで開始する場合 、エージェントは実行されたままになりますが、アクセスできなくなります。)

ただし、これは空のエージェントのみを開始します。実際に便利にするには、ssh-add を使用する必要があります 、キーのロックを解除します (通常は ~/.ssh/id_* ) をエージェントにロードし、ssh からアクセスできるようにします。 または sftp


さらに、セッションの開始時にいくつかのキーを追加することもできます。

~/.bashrc を編集します ファイル、および追加:

ssh-add &>/dev/null || eval `ssh-agent` &>/dev/null  # start ssh-agent if not present
[ $? -eq 0 ] && {                                     # ssh-agent has started
ssh-add ~/.ssh/your_private.key1 &>/dev/null        # Load key 1
ssh-add ~/.ssh/your_private.key2 &>/dev/null        # Load key 2
}

ssh-add -l でキーを確認してください

ssh-agent -k で現在の ssh-agent セッションを停止できます

ssh-agent と .bashrc について知っておくべきことは、あまりにも多くのキーをロードしないことです。 ssh デーモンのデフォルトの試行回数は 6 回に制限されています。これは /etc/ssh/sshd_config で変更できます。 MaxAuthTries


Linux
  1. SSHキーを設定する方法

  2. SSH –sshキーの生成と操作

  3. plinkとcmdと公開鍵を使用してsshサーバーに接続する方法

  1. Bash:Shift +矢印キーでA、b、c、dを作成しますか?

  2. SSHとホームディレクトリのアクセス許可?

  3. Ssh –OpensshキーとPuttyキーの違いは?

  1. BashForループガイドと例

  2. `〜#`はバッシュのチルダ拡張ですか?

  3. 共有キー .ssh/authorized_keys と sudo を連携させるには?