GTM-MML4VXJ
Skip to main content

ネットワークサービス操作:公開鍵認証によるリモート接続

コマンド

/usr/bin/ssh

使用例

以下のような手順で、SSHの設定を行います。
注釈設定例
・2つのサーバの一般ユーザ(user01)に対するssh接続を有効化
・サーバ1:hostA(192.168.1.101)
・サーバ2:hostB(192.168.1.102)
・SSHコンフィグファイルの設定
‐LoginGraceTime:0(秒)
・パスワード入力無しで接続

1.SSH設定ファイル(sshd_config)の編集(各ホスト)
# vi /etc/ssh/sshd_config 注釈root権限が必要

(例)
:
LoginGraceTime 0
:

各項目の説明
・LoginGraceTime:ユーザログインの制限時間。0を指定すると無制限(デフォルト値:120秒)
・Port:sshd が Listen するポートを指定(デフォルト値:22)
・ListenAddress:sshd が Listen するローカルアドレスとポートを指定
・GatewayPorts:ポート中継の許可(デフォルト値:no)
・X11Forwarding:X11の転送設定(デフォルト値:yes)
・X11DisplayOffset:X11が転送するディスプレイ番号(デフォルト値:10)
・X11UseLocalhost: X11をlocalhost のみ許可(デフォルト値:yes)
・HostKey:ホストの秘密鍵ファイル
・PermitEmptyPasswords:空のパスワードを許可(デフォルト値:no)
・PasswordAuthentication:パスワード認証(デフォルト値:yes)
・PermitRootLogin:rootログイン許可(デフォルト値:no)

2.SSHディレクトリの作成(各ホスト)
$ mkdir ~/.ssh
$ chmod 700 ~/.ssh

3.秘密鍵、公開鍵の作成(各ホスト)
$ ssh-keygen -t rsa

Generating public/private rsa key pair.
Enter file in which to save the key (/export/home/user01/.ssh/id_rsa):
Enter passphrase (empty for no passphrase): ←何も入力せずEnter
Enter same passphrase again: ←何も入力せずEnter
Your identification has been saved in /export/home/user01/.ssh/id_rsa.
Your public key has been saved in /export/home/user01/.ssh/id_rsa.pub.
The key fingerprint is:
1d:ef:25:c0:3a:52:2d:d9:fc:6c:13:c9:b3:eb:a2:02 user01@hostA

注釈passphraseに何も入力しないことにより、公開鍵認証時のパスフレーズ入力無しで接続できます。

4.公開鍵の配布
・各ホストの公開鍵を結合
hostA$ scp 192.168.1.102:/export/home/user01/.ssh/id_rsa.pub ~.ssh/hostA_id_rsa.pub

The authenticity of host '10.20.98.161 (10.20.98.161)' can't be established.
RSA key fingerprint is d2:b6:46:e1:42:01:12:ae:35:38:ac:3c:85:28:8c:4d.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.102' (RSA) to the list of known hosts.
Password: ←ユーザパスワード入力
id_rsa.pub 100% |*****************************| 399 00:00

hostA$ cd ~/.ssh
hostA$ cat *.pub > authorized_keys
hostA$ more authorized_keys

ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAodzICk7wYKr3FoUIXJubs9ai2OfLmCu
/e9gt0STHmUf9e96I7BN9PSI2PU98RkrFjzGQI/FRBRUZhrEbLKm9dw6SmbYDcp29xt
V4Z2+miitRpcCCv9VMdFgd0huHlmqyaWk5tcGT0WHo3d6ButrQMfV5q6DRB0nPxEGEo
fKZcFNpdYOaQKHS+uRLNzn7eMRnzW1tPwAAq8ByMe6bjlMmQkRcMtPcrVg3RDrvRokr
/RRfNZ6szsgl557fvllKKwEjIbxPhMoBdbgrbxcm1dVBMI6SM3HBP1dbzkuwKTyA/SI
SjV8KJ0KaokY1Fv7T4x6fccKhQTMK5tw+X+Db/sCobw== user01@hostB
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEApXO49DiyzC/mEUqd9ldxK2+00ym1+fV
H4TJQT1nQO4Yy3oiF6dfBnX5ysbgMD18G0cFR+EHt872FNItnJESuSwG95V0AWCy5c7
rnkgrAHrCov/1TufrIR/+bOYo5mBiy00RUmiV5nrBkJliFtko2lXZLYevZgvoe+38RG
yW0ShzDUCz1zr4K+j10hnRdGQBvgddksJARfDBfXC7vOK+3ISCAeujBRuKLEXhTc6Ii
16yRuw1rruV1B/BhWLKbyN64x8HS1PA1wyPTfxV9Sp6y87MzsjNNzGz4G3nHOq4tpNq
fak6CLXxHI/s4L+X7SZb8DtqJkLazH8pzcsj67081+Q== user01@hostA
										

・結合した公開鍵(authorized_keys)を配布
hostA$ scp authorized_keys 192.168.1.102:/export/home/user01/.ssh/authorized_keys

Password: ←ユーザパスワード入力
authorized_keys 100% |**********************************| 792 00:00

5.動作確認
・sshでログイン
hostA$ ssh 192.168.1.102

Last login: Tue Mar 3 11:17:50 2015 from 192.168.1.102
Oracle Corporation SunOS 5.11 11.2 September 2014
hostB:~$

・scpでファイル転送
hostA$ scp sample.txt 192.168.1.102:/tmp/sample.txt

sample.txt 100% |*********************************| 10240 00:00

関連情報

  • 暗号化リモート接続(ssh
  • 認証鍵の生成(ssh-keygen
  • リモートでのファイルコピー(scp