パスワードなしSSH通信の設定手順

AIX7 (1)_R

パスワードなしでSSH通信するためのキー作成手順

sshキーを持ち合うことでパスワードなしで通信し合うことが可能になります。キーを持たなければ通信することはできないのでセキュアでもあります。この設定方法をこれからご説明します。

設定方法

通信し合うサーバーは「server01」と「server02」、ユーザーは「grid」で設定します。まずは設定の流れを説明します。

  1. gridユーザーでログインします。
  2. dsaとrsaのキーを作成します。
  3. 作成されたdsaとrsaの公開キーの内容をファイル「authorized_keys」に書き出します。
  4. 作成した「authorized_keys」をリモートノードのgridホームディレクトリ以下「.ssh」に転送します。
  5. リモートノードでも手順2と手順3を実施します。「authorized_keys」には4つのキーが
  6. 4つのキーが書かれている「authorized_keys」を両ノードの「.ssh」以下に配置します。
  7. 通信テストを行い、パスワードなしで実行できたら設定完了です!

それでは上記手順を実施していきます。(※上記の手順番号と以下の手順番号は一致しておりません。

1.server01にgridユーザーでログインします。

[root@server01:/] su - grid

2.rsaキーを作成します。パスワードも求められますが、何も入力せずにEnterを押して下さい。

[grid@server01:/home/grid] ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/grid/.ssh/id_rsa):
Created directory '/home/grid/.ssh'.
Enter passphrase (empty for no passphrase): "何も入力せずにEnterキー"
Enter same passphrase again: "何も入力せずにEnterキー"
Your identification has been saved in /home/grid/.ssh/id_rsa.
Your public key has been saved in /home/grid/.ssh/id_rsa.pub.
The key fingerprint is:
c9:e4:34:2e:65:4a:2a:45:ce:0c:50:a3:f6:55:80:99 grid@server01
The key's randomart image is:
+--[ RSA 2048]----+
|.o+ =...         |
| . E  .          |
|..  =.. *        |
|. ...o X o       |
|  ... o S        |
|   .   .         |
|                 |
|                 |
|                 |
+-----------------+
[grid@server01:/home/grid]

3.rsaキーが作成されていることを確認します。「id_rsa」が秘密鍵で「id_rsa.pub」が公開キーです。

[grid@server01:/home/grid] ls -l ./.ssh
合計 16
-rw-------    1 grid     oinstall       1766 Oct 10 13:44 id_rsa
-rw-r--r--    1 grid     oinstall        395 Oct 10 13:44 id_rsa.pub
[grid@server01:/home/grid]

4.次にdsaキーを作成します。パスワードは入力せずにEnterを押します。

[grid@server01:/home/grid] ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/grid/.ssh/id_dsa):
Enter passphrase (empty for no passphrase): "何も入力せずにEnterキー"
Enter same passphrase again: "何も入力せずにEnterキー"
Your identification has been saved in /home/grid/.ssh/id_dsa.
Your public key has been saved in /home/grid/.ssh/id_dsa.pub.
The key fingerprint is:
4e:ba:8f:49:42:1a:22:f3:02:bb:a8:2b:6d:98:ad:1f grid@server01
The key's randomart image is:
+--[ DSA 1024]----+
|                 |
|                 |
|                 |
|                 |
|= . .   S        |
|o= +   +         |
|o=E . o .        |
|=o+. o +         |
|O=.   +..        |
+-----------------+
[grid@server01:/home/grid]

5.rsaキーとdsaキーが作成されていることを確認します。

[grid@server02:/home/grid] ls -l ./.ssh
合計 32
-rw-------    1 grid     oinstall        751 Oct 10 13:46 id_dsa
-rw-r--r--    1 grid     oinstall        603 Oct 10 13:46 id_dsa.pub
-rw-------    1 grid     oinstall       1766 Oct 10 13:44 id_rsa
-rw-r--r--    1 grid     oinstall        395 Oct 10 13:44 id_rsa.pub
[grid@server02:/home/grid]

6.rsaとdsaの公開キーの内容をファイル「authorized_keys」にリダイレクトで書き出します。

cd .ssh
cat id_dsa.pub >> authorized_keys
cat id_rsa.pub >> authorized_keys

7.今度は、server02にgridユーザーでログインしrsaキーを作成します。

[root@server02:/] su - grid
[grid@server02:/home/grid] ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/grid/.ssh/id_rsa): "何も入力せずにEnterキー"
Created directory '/home/grid/.ssh'.
Enter passphrase (empty for no passphrase): "何も入力せずにEnterキー"
Enter same passphrase again: "何も入力せずにEnterキー"
Your identification has been saved in /home/grid/.ssh/id_rsa.
Your public key has been saved in /home/grid/.ssh/id_rsa.pub.
The key fingerprint is:
1a:c6:9f:ab:40:02:d8:47:22:7f:fc:0e:50:94:6e:0f grid@server02
The key's randomart image is:
+--[ RSA 2048]----+
|. ..+.           |
|.+ =.            |
|o +.+            |
| . +Eo           |
|  ..oo= S        |
|   o +.+ .       |
|    . o o        |
|     .   .       |
|      ...        |
+-----------------+
[grid@server02:/home/grid]

8.dsaキーも作成します。

[grid@server02:/home/grid] ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/grid/.ssh/id_dsa): "何も入力せずにEnterキー"
Enter passphrase (empty for no passphrase): "何も入力せずにEnterキー"
Enter same passphrase again: "何も入力せずにEnterキー"
Your identification has been saved in /home/grid/.ssh/id_dsa.
Your public key has been saved in /home/grid/.ssh/id_dsa.pub.
The key fingerprint is:
f8:d8:b7:06:98:eb:f7:44:49:cd:1f:fa:aa:81:1c:4b grid@server02
The key's randomart image is:
+--[ DSA 1024]----+
|                 |
|           o     |
|          . o .  |
|       . . . o . |
|      .oE o . .  |
|      o*.=   .   |
|      ..*.+   .  |
|      . .o.o .   |
|     ... o+..    |
+-----------------+
[grid@server02:/home/grid]

9.server01で作成した「authorized_keys」を、server02のgridユーザーフォームディレクトリ以下の「.ssh」にFTP転送します。

[grid@server01:/home/grid/.ssh] ftp server02
'server02' へ接続。
220 server02 FTP server (Version 4.2 Mon Dec 3 12:04:40 CST 2012) ready.
名前 (server02:root): grid
331 Password required for grid.
パスワード:
230 User grid logged in.
ftp> cd .ssh
250 CWD command successful.
ftp> put authorized_keys
200 PORT command successful.
150 Opening data connection for authorized_keys.
226 Transfer complete.
1000 バイトを 0.002807 秒で送信しました (347.9 キロバイト/秒)
ローカル: authorized_keys リモート: authorized_keys
ftp> bye
221 Goodbye.
[grid@server01:/home/grid/.ssh]

10.server02で、rsa公開キーとdsa公開キーの内容をserver01から転送されてきた「authorized_keys」に追記します。

[grid@server02:/home/grid] cd .ssh
[grid@server02:/home/grid/.ssh] cat id_dsa.pub >> authorized_keys
[grid@server02:/home/grid/.ssh] cat id_rsa.pub >> authorized_keys

11.この時点で、server02の「authorized_keys」にはserver01とserver02のgridユーザーのrsaキーとdsaキーが入ったことになり、合計4つのキーが入っていることになります。そのファイルをserver01へFTP転送します。

[grid@server02:/home/grid/.ssh] ftp server01
'server01' へ接続。
220 server01 FTP server (Version 4.2 Mon Dec 3 12:04:40 CST 2012) ready.
名前 (server01:root): grid
331 Password required for grid.
パスワード:
230 User grid logged in.
ftp> cd .ssh
250 CWD command successful.
ftp> put authorized_keys
200 PORT command successful.
150 Opening data connection for authorized_keys.
226 Transfer complete.
2000 バイトを 0.003267 秒で送信しました (597.8 キロバイト/秒)
ローカル: authorized_keys リモート: authorized_keys
ftp> bye
221 Goodbye.
[grid@server02:/home/grid/.ssh]

12.ssh用のキー作成はこれで完了です。次に通信テストを行います。1回目の初めての通信では「yes/no」の入力を求められますが、2回目以降からは何も入力することなく通信できることを確認します。ではまず1回目。

[grid@server01:/home/grid/.ssh] ssh server02 hostname
The authenticity of host 'server02 (10.10.9.12)' can't be established.
RSA key fingerprint is 47:d0:2e:a1:67:e6:e4:22:c2:36:16:b3:80:d6:46:64.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'server02,10.10.9.12' (RSA) to the list of known hosts.
server02
[grid@server01:/home/grid/.ssh]

13.hostnameコマンドを実行した結果が返ってきました。1回目の通信は成功です。では2回目いきます。

[grid@server01:/home/grid] ssh server02 hostname
server02
[grid@server01:/home/grid]

何も問われることなくhostnameコマンドの結果が返ってきました。2回目のテストも成功しました。これでパスワードなしssh通信の設定は完了です。

 

 

 

END


サブコンテンツ

このページの先頭へ