【解説】DebianとUbuntuサーバーへのSSH接続先ポート番号を変更する方法




今回は、AWSのLightsailで作成したサーバーへのssh接続先のポート番号を変更する方法を紹介します。


ポート番号22はウェルノウンポートの一つで、ssh接続用のポートとしてデフォルトで設定されている場合がほとんどかと思います。


ただし、セキュリティ上の観点から、常に待機している状態の22ポート番号をそのままにしておくことは好ましくありません。


順序を間違えると、sshでサーバーに接続できなくなる可能性もあるので、以下に示す順序に沿って慎重に変更していきましょう。


Web上での設定


まずはAWS LightsailのWebから行う設定について解説します。


最初に自分のLihgtsailアカウントでホーム画面へログインします。


ファイアウォール設定


ログイン後、インスタンス選択画面からssh接続先のポート番号を変更したいインスタンスを選択します。



インスタンスを選択したら、「Networking」タブを選択、その中の「IPv4 Firewall」項目の中から「+ Add rule」をクリックします。



「+ Add rule」をクリックしたら、項目の値を以下のように設定します。


rule 設定値
Application Custom
Protocol TCP
Port or range 任意(今回は5000)

値を入力し終わったら、右下の「Create」をクリックします。



「Create」をクリックしたら、「IPv4 Firewall」項目の下に新しいルールが追加されていることを確認します。



ここまでの設定で、5000番のポートへのアクセスを許可することができましたので、以降では5000番ポートをsshの接続先に変更する設定を行っていきます。


コマンドプロンプトでの設定


ここまでのWeb上での設定を終えたら、次はコマンド操作にてポート番号を変更する設定を行います。


まずはこれまで通りに、22番ポートを利用してターミナルソフトウェアから、サーバーにログインします。


sshd_configファイルの設定


sshホストに関する設定は「sshd_config」内に記述されていますので、viコマンドを使ってこのファイルを編集していきます。


$ sudo vi /etc/ssh/sshd_config


sshd_configファイルを開いたら、ssh接続待機ポート番号を以下のように記述します。


5000番ポートでの接続確認ができるまでは22番ポートでの接続も許可しておきます。


Port 22
Port 5000


hhsdの再起動


sshd_configファイルを設定したら、一度sshdサービスを再起動するために、以下のコマンドを実行します。


$ sudo systemctl restart sshd


sshdサービスを再起動したら、5000番ポートでの接続テストをするために、一度今の接続を閉じます。



新しいポートでの接続確認


お使いのターミナルソフトウェアにて、新しく設定した5000番ポートを接続設定に記述します。



すると新しく設定した5000番ポートでの接続が確認できるはずです。



22番ポートの接続拒否設定


新しいポート番号での接続確認ができたら、今まで使用していた22番ポートでの接続を拒否する設定を行います。


再びsshd_configファイルを開き、「Port 22」の行を「#」でコメントアウトします。


#22番ポートでの接続を拒否
#Port 22
Port 5000


sshd_configファイルの編集と保存が終了したら、設定を反映させるため、再度以下のコマンドを実行し、再びsshdサービスを再起動させます。


$ sudo systemctl restart sshd


接続拒否確認


sshdサービスを再起動したら、最後に22番ポートから接続ができないことを確認します。


ターミナルソフトウェアにて、接続先ポートを22番に設定しなおしてログインを実行してみます。



以下のように22番ポートでの接続が拒否されていることが確認できます。




タグクラウド :