62

SSH を使用して Web サイトを手動でデプロイし、github/bitbucket でソース コードを管理しています。新しいサイトごとに、サーバー上で新しいキーペアを生成し、それを github/bitbucket に追加して、サーバーからチャンスを引き出すことができるようにしています。

カピストラーノで、サーバーに更新をプルするためにローカル マシンのキー ペアを使用する機能を見つけました。ssh_options[:forward_agent] = true

このようなことを行い、ローカル マシンのキーペアを SSH 接続しているサーバーに転送して、新しいサイトごとに github/bitbucket にキーを追加することを避けるにはどうすればよいですか。

4

4 に答える 4

76

これは非常に単純であることが判明しました。完全なガイドはこちらですSSH 転送の使用

本質的に、~/.ssh/configファイルが存在しない場合は作成する必要があります。

次に、ホストを追加します (ファイル内のドメイン名または IP アドレスと set のいずれかForwardAgent yes) 。

サンプルコード:

Host example.com
    ForwardAgent yes

SSH ライフをより簡単にします。

于 2012-09-13T15:02:30.620 に答える
45
  1. ~/.ssh/config を作成します
  2. 以下を入力します (ホスト アドレスは、クレデンシャルの転送を許可するホストのアドレスです):

    Host [host address]
         ForwardAgent yes
    
  3. ssh-agent をまだ実行していない場合は、実行します。

    ssh-agent
    
  4. そのコマンドからの出力を取得し、ターミナルに貼り付けます。これにより、エージェント転送が機能するために設定する必要がある環境変数が設定されます。必要に応じて、これと手順 3 を次のように置き換えることができます。

    eval "$(ssh-agent)"
    
  5. ssh エージェントに転送するキーを追加します。

    ssh-add [path to key if there is one]/[key_name].pem
    
  6. リモート ホストにログインします。

    ssh -A [user]@[hostname]
    
  7. ここから、そのキーを受け入れる別のホストにログインすると、次のように機能します。

    ssh [user]@[hostname]
    
于 2017-09-18T21:20:34.360 に答える