■サーバ同士でSSH接続
■通常の接続
「203.0.113.1」サーバに、「ec2-user」ユーザで、「10022」番ポートに接続
# ping 203.0.113.1
… 疎通確認
# ssh -p 10022 ec2-user@203.0.113.1
… 接続
■鍵で接続
「-i」に続けて秘密鍵を指定できる
秘密鍵を指定してアクセスする手順
秘密鍵はあらかじめ入手済みとする
以下、パブリックIPを持たないEC2インスタンへ、同じネットワーク内のEC2インスタンスから鍵認証で接続する
# sudo vi /home/ec2-user/.ssh/id_rsa
… アクセス元のサーバで、秘密鍵をid_rsaに作成
-----BEGIN RSA PRIVATE KEY----- … 秘密鍵(xxx.pem)の内容を全てコピーして貼り付ける
MIIEowIBAAKCAQEAryCYY8j+j5lQqBKJgdA3SLZWC7UJ9NeFkmypG4JJQwt3Gr9jG+rJY8vKUdx/
〜略〜
yT0043TsaaS2Tx7KxqdFksrRW3IH0AKqXFKVcvdhuNbjVK5ps806PEaW/AZj5oIOfpto
-----END RSA PRIVATE KEY-----
# sudo chmod 600 /home/ec2-user/.ssh/id_rsa
… id_rsaのパーミッションを変更
# sudo chown ec2-user:ec2-user /home/ec2-user/.ssh/id_rsa
… id_rsaの所有者を変更
# ssh -p 10022 -i /home/ec2-user/.ssh/id_rsa ec2-user@10.0.1.103
… SSH接続(対象のIPが「10.0.1.103」とする)
もしくは、以下のように指定しても接続できる(要検証)
# eval `ssh-agent`
# ssh-add /home/ec2-user/.ssh/id_rsa
# ssh -p 10022 ec2-user@10.0.1.103
ssh公開鍵認証を実装する - Qiita
https://qiita.com/HamaTech/items/21bb9761f326c4d4aa65
ssh-agentの使い方 - Qiita
http://qiita.com/isaoshimizu/items/84ac5a0b1d42b9d355cf
■鍵で接続(ユーザや鍵も新規作成する場合の例)
アクセス先でユーザを作成
# useradd deployer
# passwd deployer
abcd1234
アクセス元からパスワードでのアクセスを確認
$ ssh deployer@192.168.33.11
アクセス先で鍵を作成
$ sudo su - deployer
$ ssh-keygen -t rsa
$ ll /home/deployer/.ssh/
$ vi /home/deployer/.ssh/id_rsa
$ vi /home/deployer/.ssh/id_rsa.pub
$ cp /home/deployer/.ssh/id_rsa.pub /home/deployer/.ssh/authorized_keys
$ chown deployer. /home/deployer/.ssh/authorized_keys
$ chmod 0600 /home/deployer/.ssh/authorized_keys
アクセス元で鍵を作成
id_rsaの内容はアクセス先の内容をコピーする
$ mkdir /home/vagrant/deployer
$ vi /home/vagrant/deployer/id_rsa
$ chmod 0600 /home/vagrant/deployer/id_rsa
アクセス元からアクセス先に鍵で接続
$ ssh -i /home/vagrant/deployer/id_rsa deployer@192.168.33.11
■設定ファイルを利用して接続
設定ファイルに接続方法を書いておくことにより、簡単に接続できる
例えば踏み台サーバに以下の設定を記載しておくと、
「ssh web1」とすることでweb1サーバに、「ssh web2」とすることでweb2サーバに繋ぐことができる
$ vi ~/.ssh/config
Host web1
Hostname 10.0.1.11
User ec2-user
Port 10022
IdentityFile ~/.ssh/id_rsa
IdentitiesOnly yes
Host web2
Hostname 10.0.1.12
User ec2-user
Port 10022
IdentityFile ~/.ssh/id_rsa
IdentitiesOnly yes
■デバッグ
オプション v を付けると、接続時のデバッグ情報が表示される
# ssh -v -p 10022 ec2-user@203.0.113.1