公開キー/秘密キーのペアを使用して SSH(Secure Shell)を設定すると、SSH でコントローラのマシンにアクセスするたびにパスワードを入力する必要がなくなります。キーを設定することで、スクリプトや自動化プロセスがコントローラに簡単にアクセスできるようになります。DSA の生成や、強力な暗号が必要な場合は RSA 鍵を生成することも可能です。

DSAを使用したSSH鍵ペアの設定

  1. 鍵ペアを設定する ssh コマンドを実行します。

    % ssh-keygen -t dsa
  2. 以下のプロンプトで、Enter を押してデフォルトのキーの場所を受け入れるか、別のキーを入力します。

    Generating public/private dsa key pair.
    
    Enter file in which to save the key (~/.ssh/id_dsa):
  3. パスワードのプロンプトでReturnキーを押します。

    Enter passphrase (empty for no passphrase):
  4. Return をもう一度押してパスワードを確認します。

    Enter same passphrase again:
    

    以下の情報が表示されます。

    Your identification has  been saved in ~/.ssh/id_dsa
     
    Your public key has been saved in  ~/.ssh/id_dsa.pub
     
    The key fingerprint is: <Some really long string>

    引き続き SSH でパスワードの入力を求められる場合は、リモート .ssh ディレクトリのアクセス権限を確認します。これには、独自の読み取り/書き込み/アクセス権限(8 進数 700)のみが必要です。

    % chmod 700 ~/.ssh
  5. ローカルの ~/.ssh/id_dsa.pub ファイルを開き、その内容をリモートホストの ~/.ssh/authorized_keys ファイルに貼り付けます。
  6. 以下のように、リモートホスト上の authorized_keys ファイルのアクセス権限を更新します。

    % chmod 600 ~/.ssh/authorized_keys
    

RSAを使用したSSH鍵ペアの設定

鍵ペアを設定する ssh コマンドを実行します。

% ssh-keygen -t rsa

生成されるファイルの名前は、id_dsa および id_dsa.pub ではなく、id_rsa および id_rsa.pub になります。

この後の手順は、上記の手順2以降とすべて同じです。