SSHの接続設定方法について説明します。なお,SSHの認証には,公開鍵認証方式を使用します。
SSHを接続するには次のような設定が必要となります。
公開鍵認証の概念について,次の図に示します。
図2-16 公開鍵認証の概念図
なお,クラスタシステムでの公開鍵認証には,実行系ノードと待機系ノードで共通の鍵を使用する方法と別々の鍵を使用する方法があります。
実行系ノードと待機系ノードで共通の鍵を使用する場合は,実行系ノードの鍵ファイルを待機系ノードの鍵ファイルに上書きコピーします。共通の鍵を使用する場合の概念について,次の図に示します。
図2-17 公開鍵認証の概念図(実行系ノードと待機系ノードで共通の鍵を使用する場合)
実行系ノードと待機系ノードで別々の鍵を使用する場合は,実行系ノードの鍵ファイルと待機系ノードの鍵ファイルの両方を監視対象ホストに登録します。別々の鍵を使用する場合の概念について,次の図に示します。
図2-18 公開鍵認証の概念図(実行系ノードと待機系ノードで別々の鍵を使用する場合)
(1) SSHサーバの公開鍵認証を有効にする
公開鍵認証を有効にするための設定手順を次に示します。
[root@TargetHost.ssh]$ /etc/rc.d/init.d/sshd restart
(2) 鍵を作成する
鍵は自動で作成されます。手動で作成することもできますが,特別な事情がない場合は,自動で作成された鍵を使用することをお勧めします。
(a) 自動で鍵を作成する
PFM - RM for Platformをインストールするとき,自動的に「/opt/jp1pc/agt7/.ssh/」に秘密鍵と公開鍵が作成されます。
秘密鍵と公開鍵の格納先ディレクトリ,ファイル名および設定値について次の表に示します。
表2-30 秘密鍵と公開鍵の格納先ディレクトリ,ファイル名および設定値
項番 | 格納先ディレクトリおよび ファイル名 | 属性 | 所有者 | 説明 | |
---|---|---|---|---|---|
1 | /opt/jp1pc/agt7/.ssh/ | - | 700 | root:root | 秘密鍵と公開鍵を格納する隠しディレクトリです。 |
2 | agt7 | 600 | 秘密鍵のファイルです。 | ||
3 | agt7.pub | 644 | 公開鍵のファイルです。 |
(b) 手動で鍵を作成する
手動で鍵を作成するための設定手順を次に示します。
PFM - RMホストにスーパーユーザーでログインし,ssh-keygenコマンドを実行して鍵を作成します。鍵の種類はRSA暗号とDSA暗号のどちらかを選択できます。RSA暗号とDSA暗号は暗号化アルゴリズムが異なるだけなので,操作方法は同様です。ここでは,RSA鍵を作成する場合について説明します。
ssh-keygen -t rsaコマンドの実行例を次に示します。
[root@RMHost]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): <Enter>
Enter passphrase (empty for no passphrase): <Enter>
Enter same passphrase again: <Enter>
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
ax:xx:xx:xx:xx:bx:xx:xc:xx:xx:xx:xd:xd:xa:ed:xx root@RMHost
(3) 公開鍵を監視対象ホストに配置する
作成した公開鍵を監視対象ホストに配置します。なお,監視対象ホストが複数ある場合は,すべての監視対象ホストに対してこの作業を実施してください。
配置する手順を次に示します。
手順2.~6.のコマンドの実行例を次に示します。
[ClientUser@TargetHost ]$ cd .ssh
[ClientUser@TargetHost .ssh]$ scp root@RMHost:/opt/jp1pc/agt7/.ssh/agt7.pub .
root@RMHost's password: <パスワードを入力>
agt7.pub 100% 233 0.2KB/s 00:00
[ClientUser@TargetHost .ssh]$ cat agt7.pub >> authorized_keys
[ClientUser@TargetHost .ssh]$ rm agt7.pub
[ClientUser@TargetHost .ssh]$ chmod 600 authorized_keys
また,PFM - RMホストでssh-copy-idコマンドを実行して,公開鍵を監視対象ホストに配置することもできます。ssh-copy-idコマンドを使用する場合,公開鍵を配置する.sshディレクトリの指定,公開鍵の名前および属性の変更は必要ありません。ssh-copy-idコマンドを使用して公開鍵を配置する手順を次に示します。
手順1.および手順2.のコマンドの実行例を次に示します。
[root@RMHost ]$ /usr/bin/ssh-copy-id -i /opt/jp1pc/agt7/.ssh/agt7.pub ClientUser@TargetHost
29
The authenticity of host 'TargetHost (xxx.xxx.xxx.xxx)' can't be established.
RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'TargetHost,xxx.xxx.xxx.xxx' (RSA) to the list of known hosts.
ClientUser@TargetHost's password: <パスワードを入力>
Now try logging into the machine, with "ssh 'ClientUser@TargetHost'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
(4) 接続を確認して指紋を登録する
PFM - RMホストと監視対象ホストが接続できるかどうかを確認する手順について説明します。
接続を確認するときの設定例を次に示します。
[root@RMHost]$ /usr/bin/ssh -i /opt/jp1pc/agt7/.ssh/agt7 -p 22 ClientUser@TargetHost
The authenticity of host 'TargetHost (xxx.xxx.xxx.xxx)' can't be established.
RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'TargetHost,xxx.xxx.xxx.xxx' (RSA) to the list of known hosts.
Last login: Mon Mar 23 17:17:52 2009 from xxx.xxx.xxx.xxx
[ClientUser@TargetHost ~]$ exit
logout
Connection to TargetHost closed.
[root@RMHost]$ /usr/bin/ssh -i /opt/jp1pc/agt7/.ssh/agt7 -p 22 ClientUser@TargetHost
Last login: Mon Mar 23 17:18:00 2009 from xxx.xxx.xxx.xxx
[ClientUser@TargetHost ~]$ exit
logout
Connection to TargetHost closed.
[root@RMHost]$