【図解】4ステップでAWS(EC2)のSSHポートを変更する手順

★悩み★
・AWS(EC2)の初期設定のSSHポート(22番)は変更したほうがいいのかなぁ。
・AWS(EC2)のSSHに利用しているポートを変更する手順を知りたいなぁ。


こういった「悩み」に答えます。

★本記事の内容★
(1) AWS(EC2)の初期設定のSSHポート(22番)は変更するべき!
(2) 4ステップでAWS(EC2)のSSHポートを変更する手順をご紹介


これからご紹介する「4ステップでAWS(EC2)のSSHポートを変更する手順」を実践したことで、筆者は10分以内でAWS(EC2)のSSHポートを変更することができました。

記事の前半では「AWS(EC2)の初期設定SSHポートを変更するべきか」をご説明します。
記事の後半では「AWS(EC2)のSSHポートを変更する手順」を図を用いて紹介します。

この記事を読み終えることで、「AWS(EC2)のSSHポートを変更する手順」を把握した状態になります。

「AWSとは何?」や「EC2とは何?」と思われた方は、以下の記事で丁寧に解説していますのでぜひご覧ください。

AWS(EC2)の初期設定のSSHポート(22番)は変更するべき!

結論から言わせていただきますと、AWS(EC2)の初期設定のSSHポート(22番)は変更するべきです。

AWS(EC2)に仮想マシンを初期設定で配備した場合、SSHポートが22番で設定され、22番ポートが解放状態となっています。(下図の赤枠)


上記の初期設定に関する情報は、広く周知されています。

そのため、初期設定で解放されたSSHの22番ポートは、簡単にハッカーに悪用される可能性があります。

筆者の身近では、「ポートの変更や遮断を怠ったため、配備した仮想マシンが乗っ取られ、その仮想マシンからあるシステムにDoS攻撃を仕掛けた」という出来事がありました。


ハッカーに悪用されないためにも、初期設定で解放された22番ポートの変更を推奨します。

AWS(EC2)でSSHポートを変更する手順

AWS(EC2)でSSHポートを解放する手順に関してご紹介します。

★ご紹介の流れ★
ステップ1:AWS(EC2)で仮想マシンを配備
ステップ2:AWS(EC2)でSSHのポートを変更【配備マシンでの操作】
ステップ3:AWS(EC2)でSSHのポートを変更【EC2管理画面での操作】
ステップ4:SSHポートを変更したAWS(EC2)の動作確認


上記の流れで「AWS(EC2)でSSHポートを変更する手順」をご紹介します。

それでは、以降で各ステップに関して詳しくご説明します。

ステップ1:AWS(EC2)で仮想マシンを配備

AWS(EC2)で仮想マシンを配備する方法をご紹介します。

AWS(EC2)に仮想マシンを配備する方法は、以下の記事内の「ステップ6」をご覧ください。

既にAWS(EC2)上に仮想マシンを配備されている方は、本ステップを省略してください。


以上で、「ステップ1:AWS(EC2)で仮想マシンを配備」は完了です。

ステップ2:AWS(EC2)でSSHのポートを変更【配備マシンでの操作】

AWS(EC2)上に配備した仮想マシンのSSHポートを変更するためには、配備マシンで変更操作が必要です。

AWS(EC2)上に配備した仮想マシンにSSH接続するために、以下のコマンドを端末またはコマンドプロンプト上で実行しましょう。

$ ssh -i routefinder.pem ec2-user@54.245.21.79 -p 22
Last login: Sat Dec  5 00:52:29 2020 from 58-189-157-119f1.hyg1.eonet.ne.jp

       __|  __|_  )
       _|  (     /   Amazon Linux 2 AMI
      ___|\___|___|

https://aws.amazon.com/amazon-linux-2/
[ec2-user@ip-172-31-45-244 ~]$ 

その後、以下のコマンドを実行します。

[ec2-user@ip-172-31-45-244 ~]$ sudo sed -i "s/#Port 22/Port 30001/g" /etc/ssh/sshd_config
[ec2-user@ip-172-31-45-244 ~]$ sudo cat /etc/ssh/sshd_config | grep Port
Port 30001
$ sudo service sshd reload

上記のコマンドを仮想マシン内で実行することで、SSH接続で利用するポートを22番から30001番へ変更します。


以上で、「ステップ2:AWS(EC2)でSSHのポートを変更【配備マシンでの操作】」は完了です。

ステップ3:AWS(EC2)でSSHのポートを変更【EC2管理画面での操作】

AWS(EC2)上に配備された仮想マシンのSSHポートを変更するためには、EC2の管理画面での操作が必要です。

EC2の管理画面で実施するべき操作を順に説明します。

まずは、EC2管理画面を開きましょう。


EC2の管理画面において、SSHポートを変更したい仮想マシンのチェックボックスをクリックします。(上図の赤枠)

次に、「セキュリティ」(上図の青枠)をクリックし、セキュリティグループ(上図のオレンジ枠)をクリックします。

その後、下図の画面に遷移します。


「インバウンドルール」(上図の赤枠)をクリックし、「インバウンドルールを編集」(上図の青枠)をクリックしましょう。


タイプが「SSH」である行の「削除」(上図の青枠)をクリックします。

その後、「ルールを追加」をクリックし、以下の設定後、「ルールを保存」(下図の青枠)をクリックします。
・タイプ:カスタムTCPを選択
・ポート番号:30001と入力
・ソース:カスタムを選択 0.0.0.0/0を設定
・説明:SSHと入力

上記のEC2管理画面での操作をすることで、30001番のポートに対する通信を許可できます。


以上で、「ステップ3:AWS(EC2)でSSHのポートを変更【EC2管理画面での操作】」は完了です。

ステップ4:SSHポートを変更したAWS(EC2)の動作確認

最後にAWS(EC2)上に配備した仮想マシンのSSHポートが変更されたかどうかを確認するために実機検証をしましょう。

端末またはコマンドプロンプト上で以下のコマンドを順に実行しましょう。

$ ssh -i routefinder.pem ec2-user@54.245.21.79 -p 22
ssh: connect to host 54.245.21.79 port 22: Operation timed out

$ ssh -i routefinder.pem ec2-user@54.245.21.79 -p 30001
Last login: Sat Dec  5 01:26:18 2020 from 58-189-157-119f1.hyg1.eonet.ne.jp

       __|  __|_  )
       _|  (     /   Amazon Linux 2 AMI
      ___|\___|___|

https://aws.amazon.com/amazon-linux-2/
[ec2-user@ip-172-31-45-244 ~]$ 

上記のようにポート22番を用いたSSH接続は失敗し、ポート30001番を用いたSSH接続は成功したことを確認しましょう

以上により、無事にSSHで利用するポートの変更確認ができました。

【まとめ】4ステップでAWS(EC2)のSSHポートを変更する手順

今回の記事を通して、「4ステップでAWS(EC2)のSSHポートを変更する手順」をご紹介することで、以下の悩みを解消しました。

★悩み★
・AWS(EC2)の初期設定のSSHポート(22番)は変更したほうがいいのかなぁ。
・AWS(EC2)のSSHに利用しているポートを変更する手順を知りたいなぁ。

AWS(EC2)上の仮想マシンのSSHポートを変更する手順は?」で悩んでいるあなたにこの記事が少しでも役に立てれば幸いです。

 

 


 

コメント

タイトルとURLをコピーしました