ポートに穴を開けることなく安全なリモートデスクトップ環境を構築しよう(その2)

その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へ続きます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

リンクが含まれる投稿はサイト管理者の承認後に表示されます(スパム対策)