その1で作成したEC2上の中継サーバは作っただけですので、これから設定を進めていきましょう。遠隔操作対象PCと遠隔操作をする側のPC両方共に設定が必要です。どちらが先でも良いですが、まずは遠隔操作をする側のPCで設定してみましょう。とりあえずMacでの設定例です。
2. 中継サーバにSSHログインできるように設定する(Macの例)
Mac標準のターミナルを立ち上げます。
-1. ダウンロードした秘密鍵(aws-key.pem)を.sshフォルダにコピー
$ cp ~/Downloads/aws-key.pem ~/.ssh
-2. aws-key.pemのアクセス権を400 に変更
$ cd ~/.ssh $ chmod 400 aws-key.pem
-3. configファイルを作成(修正)
.sshフォルダにconfigファイルがある場合は新規で作成し、すでにある場合は、一番下の行に追加してください。
$ vi config
iを押して挿入モードにして、以下の項目を追加します。
Host aws-relay-server HostName 13.113.212.xxx (※ Elastic IPで割り当てをした固定IP) Port 22 IdentityFile ~/.ssh/aws-key.pem User ec2-user Protocol 2 ServerAliveInterval 15
ESCを押して、:wqで保存します。
これで中継サーバにSSHログインできるようになりました。
-4. 中継サーバにSSHログインしてみる
$ ssh aws-relay-server
The authenticity of host '13.113.212.xxx (13.113.212.xxx)' can't be established. ECDSA key fingerprint is SHA256:U/7mSq0snVUviUrozSGydTX63FkmtCGEsxxxxxxxxxx. Are you sure you want to continue connecting (yes/no)?
yesを入力
Warning: Permanently added '13.113.212.xxx' (ECDSA) to the list of known hosts. __| __|_ ) _| ( / Amazon Linux AMI ___|\___|___| https://aws.amazon.com/amazon-linux-ami/2017.03-release-notes/ 4 package(s) needed for security, out of 6 available Run "sudo yum update" to apply all updates.
無事にログインできました。
-5. サーバに最新のパッケージを適用する
ログイン後のコメントに出ているように、yum updateを実行して最新のパッケージを適用しておきましょう。
$ sudo yum update -y
1分くらいかかかりますが、最後にComplete!が出れば適用成功です。
-6. SSHのポート番号を22から80に変更する
遠隔操作対象パソコンが置いてあるところのルータやファイアフォール設定が厳しい場合、外向きのポートが制限されていてSSHログインができない場合があります。大抵のルータやファイアウォールはHTTP(TCP:80番)やHTTPS(TCP:443番)が開いているため、SSHトンネルを張るためだけにルータやファイアフォール設定を変えなくても良いようにポート番号を変えてみます。
$ sudo -i # cd /etc/ssh/ # cp sshd_config sshd_config_old # vi sshd_config
iを押して、17行目くらいの #Port 22 を #をはずして、Port 80に変更します。
. . . # If you want to change the port on a SELinux system, you have to tell # SELinux about this change. # semanage port -a -t ssh_port_t -p tcp #PORTNUMBER # Port 80 #AddressFamily any #ListenAddress 0.0.0.0 #ListenAddress :: . . .
ESCを押してから:wqで保存後、sshdを再起動します。
$ service sshd restart Stopping sshd: [ OK ] Starting sshd: [ OK ]
これでsshdが再起動され、次回のSSHログイン時からは80番ポートでログインする設定になりました。exitを2回入力して、中継サーバからログアウトしておきましょう。
# exit logout $ exit logout Connection to 13.113.212.xxx closed.
-7. configファイルを修正
SSHポート番号を80番に変更したので、configファイルも書き換えておきましょう。
$ vi config
Host aws-relay-server HostName 13.113.212.xxx Port 80 IdentityFile ~/.ssh/aws-key.pem User ec2-user Protocol 2 ServerAliveInterval 15
-8. 中継サーバにログインできるか確認
$ ssh aws-relay-server Last login: Sun Jun 25 01:33:12 2017 from xxxxx.xxxx.ne.jp __| __|_ ) _| ( / Amazon Linux AMI ___|\___|___| https://aws.amazon.com/amazon-linux-ami/2017.03-release-notes/
ログインできたらSSHの設定は完了です!確認が終わったらログアウトしておきましょう。
$ exit logout Connection to 13.113.212.xxx closed.
-9. aws-key.pemを遠隔操作対象パソコンにも入れて、同様の設定をしてください。
・aws-key.pemのコピー
・aws-key.pemのアクセス権を400に変更
・configファイルにログイン情報を記載
以上で遠隔操作のための中継サーバの前設定はおしまいです、お疲れ様でした!
その3へ続きます。