1.18.3 SSHの設定
ここでは,JP1/IM - ManagerホストがWindows環境である場合の,SSHの設定について説明します。なお,SSHの認証には,公開鍵認証方式を使用します。
SSHで接続するには次の設定が必要となります。
- SSHサーバを設定する
リモートの監視対象ホストで設定します。
- 鍵を作成する
UNIX環境の監視対象ホストで設定します。
- 秘密鍵をJP1/IM - Managerホストに配置する
UNIX環境の監視対象ホストからJP1/IM - Managerホストに配置します。
- 公開鍵を監視対象ホストに配置する
リモートの監視対象ホストに配置します。
- <この項の構成>
- (1) SSHサーバを設定する
- (2) 鍵を作成する(初めて鍵を作成する場合)
- (3) 秘密鍵をJP1/IM - Managerホストに配置する(初めて鍵を作成する場合)
- (4) 公開鍵をリモートの監視対象ホストに配置する(すでに鍵を作成している場合)
- (5) 接続を確認する
(1) SSHサーバを設定する
SSHサーバを設定するための手順を次に示します。
- リモートの監視対象ホストにroot権限のユーザーでログインする。
- sshd_configを開く。
HP-UX (IPF)の場合:/opt/ssh/etc/sshd_config
HP-UX (IPF)以外の場合:/etc/ssh/sshd_config
- PubkeyAuthenticationの値をyesに設定する※1。
- 次の項目を設定する※1,※2。
- SolarisでOpenSSHを使用しているまたはSolaris以外の場合
UseDNSをnoに設定してください。
- Solarisの場合
LookupClientHostnamesをnoに設定してください。
- PermitRootLoginをyesに設定する※1。
root権限のユーザーでログインして情報収集する場合だけ,この手順を実行してください。
- 次のコマンドを実行し,sshdサービスを再起動する。
実行するコマンドの例を,OSごとに次に示します。
- Linuxの場合(Linux 5の例)
/etc/rc.d/init.d/sshd restart
- Solarisの場合(Solaris 10の例)
/usr/sbin/svcadm restart ssh
- AIXの場合(AIX 6.1の例)
kill -HUP sshdのプロセスID
- HP-UXの場合(HP-UX 11i V3 (IPF)の例)
/sbin/init.d/secsh stop; /sbin/init.d/secsh start
なお,このコマンドは,OSのバージョンによって異なる可能性があります。詳細は,各OSのマニュアルを参照してください。
- 注※1
- sshd_configの設定項目および設定方法については,使用するSSHサーバのマニュアルを参照してください。
- 注※2
- 設定しない場合は,監視対象ホストで次の名前解決ができるように設定してください。
- マネージャーホストのIPアドレスからマネージャーホスト名を解決できる
- マネージャーホストのホスト名の解決先IPアドレスが,マネージャーホストのIPアドレスと一致する
- 名前解決にDNSを使用していてDNSサーバに接続できない場合,リモート監視ログファイルトラップの起動,またはログファイルの収集が遅延することがあります。また,遅延によってタイムアウトしてしまい,起動や収集が失敗することがあります。そのため,UseDNSやLookupClientHostnamesをnoに設定することを推奨します。
(2) 鍵を作成する(初めて鍵を作成する場合)
UNIX環境の監視対象ホストにリモート監視で使用するユーザーでログインし,ssh-keygenコマンドを実行して鍵を作成します。なお,この手順は,初めて鍵を作成する場合だけに必要な作業です。
鍵の種類はRSA暗号とDSA暗号のどちらかを選択できます。
- UNIX環境の監視対象ホストにリモート監視で使用するユーザーでログインする。
- ssh-keygenコマンドを実行する。
次のように入力してコマンドを実行してください。
- RSA鍵を作成する場合:ssh-keygen -t rsa
- DSA鍵を作成する場合:ssh-keygen -t dsa
- 秘密鍵の出力先と名前を決める。
デフォルトは「~/.ssh/id_rsa」が設定されます。
- リターンキーを2回押す。
秘密鍵のパスフレーズの入力を求められるため,何も入力しないでリターンキーを押します。再入力を求められるので,何も入力しないで再度リターンキーを押します。
ssh-keygen -t rsaコマンドの実行例を次に示します。
[root@HOST]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/ssh-user/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/ssh-user/.ssh/id_rsa.
Your public key has been saved in /home/ssh-user/.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@HOST
- リモートの監視対象ホストにリモート監視で使用するユーザーでログインする。
- catコマンドを実行し,公開鍵ファイルの内容を認証鍵ファイルに追加する。
- chmodコマンドを実行し,認証鍵ファイルの属性を600に変更する。
catコマンドおよびchmodコマンドの実行例を次に示します。
[ClientUser@TargetHost .ssh]$ cat id_rsa.pub >> authorized_keys
[ClientUser@TargetHost .ssh]$ chmod 600 authorized_keys
- 「/etc/ssh/sshd_config」の「AuthorizedKeysFile」を設定する。
デフォルトでは「~/.ssh/authorized_keys」または「.ssh/authorized_keys」が設定されています。手順7で作成した認証鍵のパスを変更した場合は,AuthorizedKeysFileの値を見直してください。
- sshdサービスを再起動する。
- 注意事項
- 秘密鍵の情報は厳重に管理してください。
- 鍵(公開鍵と秘密鍵のペア)の作成は環境やツールには依存しないため,どのような環境やツールでも問題ありません。ただし,鍵の作成後は,秘密鍵と公開鍵を適切に配置する必要があります。
(3) 秘密鍵をJP1/IM - Managerホストに配置する(初めて鍵を作成する場合)
JP1/IM - ManagerホストがWindowsの場合は,「(2) 鍵を作成する(初めて鍵を作成する場合)」で作成した秘密鍵をWindowsのJP1/IM - Managerホストの任意のパスに配置します。なお,この手順は,初めて鍵を作成する場合だけに必要な作業です。
(4) 公開鍵をリモートの監視対象ホストに配置する(すでに鍵を作成している場合)
「(2) 鍵を作成する(初めて鍵を作成する場合)」で作成した公開鍵をリモートの監視対象ホストに配置します。配置する手順を次に示します。なお,この手順は,すでに別のリモートの監視対象ホストで鍵を作成している場合だけに必要な作業です。
作業を始める前に.sshディレクトリの上位ディレクトリのパーミッションに所有者以外の書き込み権限が設定されていないことを確認してください。所有者以外の書き込み権限が設定されているとSSHの接続に失敗します。
- リモートの監視対象ホストにリモート監視で使用するユーザーでログインする。
- .sshディレクトリに移動する。
リモート監視で使用するユーザーのホームディレクトリ配下に.sshディレクトリがない場合は作成してください。ディレクトリの属性は700を設定してください。
- scpコマンドを実行し,公開鍵ファイルをリモートの監視対象ホストにコピーする。
「(2) 鍵を作成する(初めて鍵を作成する場合)」で作成済みの公開鍵ファイルを監視対象ホストにコピーします。公開鍵のコピー先は,リモート監視で使用するユーザーのホームディレクトリの.sshディレクトリです。
- catコマンドを実行し,公開鍵ファイルの内容を認証鍵ファイルに追加する。
- コピーした公開鍵ファイルを削除する。
- chmodコマンドを実行し,認証鍵ファイルの属性を600に変更する。
- 「/etc/ssh/sshd_config」の「AuthorizedKeysFile」を設定する。
デフォルトでは「~/.ssh/authorized_keys」または「.ssh/authorized_keys」が設定されています。手順6で作成した認証鍵のパスを変更した場合は,AuthorizedKeysFileの値を見直してください。
- sshdサービスを再起動する。
scpコマンド,catコマンド,およびchmodコマンドの実行例を次に示します。ここでは,「(2) 鍵を作成する(初めて鍵を作成する場合)」で鍵を作成したホストのホスト名をIMHostとしています。
[ClientUser@TargetHost ]$ cd .ssh
[ClientUser@TargetHost .ssh]$ scp
root@IMHost:/home/ssh-user/.ssh/id_rsa.pub ./
root@IMHost's password: <パスワードを入力>
id_rsa 100% 233 0.2KB/s 00:00
[ClientUser@TargetHost .ssh]$ cat id_rsa.pub >> authorized_keys
[ClientUser@TargetHost .ssh]$ rm id_rsa.pub
[ClientUser@TargetHost .ssh]$ chmod 600 authorized_keys
(5) 接続を確認する
Windows環境のJP1/IM - ManagerホストにSSHクライアントソフトがインストールされている場合は,「(3) 秘密鍵をJP1/IM - Managerホストに配置する(初めて鍵を作成する場合)」で配置した秘密鍵を用いて,リモートの監視対象ホストにSSH接続ができることを確認してください。また,SSH接続するときに,パスワードおよびパスフレーズの入力が不要であることを確認してください。
エラーが発生した場合や,パスワードおよびパスフレーズの入力を要求された場合は,手順どおり正しく設定できているかどうかを見直してください。また,OSの設定を見直し,SSH接続ができる環境であるか確認してください。