【AWS】CentOS6のsshポートの変更

スポンサーリンク

CentOS6のSSHポートを変更する機会がありましたので、手順をまとめます。

SSHしたいポートは「22222」で、記事を書いていきます。

サポート期限が2020年11月30日までのCentOS6ですが、僕の中では現役ですw

環境

  • AWS
  • CentOS release 6.10 (Final)

操作はrootユーザーで行っています。必要に応じて「sudo」コマンドで実行して下さい。

sshd_configの変更

 
10~15行目あたりに「#Port 22」がありますので、その下に「Port 希望するポート」を追記しましょう。
 
vi /etc/ssh/sshd_config
 
デフォルトの「#Port22」はコメントアウトされていますが、デフォルトでは22番ポートでsshできるようになっています。
 
希望するポートを追加すると、22番ポートは使えなくなるみたいなので、引き続き22番ポートも使いたい場合はコメントアウトを外した状態「Port22」にしましょう。
 
今回変更した部分です。(一部抜粋です)
 
8 # The strategy used for options in the default sshd_config shipped with
9 # OpenSSH is to specify options with their default value where
10 # possible, but leave them commented. Uncommented options change a
11 # default value.
12
13 Port 22
14 Port 22222
15 #AddressFamily any
16 #ListenAddress 0.0.0.0
17 #ListenAddress ::
 
 
SSHを再起動して設定を反映させます。
service sshd restart
 

ファイアウォールの変更

まずは今の設定状況を確認します。

service iptables status

 

こんな感じの設定が表示されます。(一部です)


1 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
2 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0
3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
ここに新しい許可リストを追加する
5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited

 

設定を追加します。

重要なのは「-I INPUT 5」の部分です。上記で確認した設定の5番目に追加したい場合は「5」を指定します。

既存の5番目にある設定は6番目に自動的に変更されます。

ファイアウォールの優先順位の関係で、破棄(REJECT)よりも後に許可(ACCEPT)を追加するとTCPの22222番ポートへの接続は破棄されてしまうからです。

iptables -I INPUT 5 -m state --state NEW -p tcp --dport 22222 -j ACCEPT
 
セーブします。
セーブしないとOSの再起動を行った場合に反映されず、ハマる原因になります。
service iptables save
yasu
yasu

逆に言えば、色々やりすぎて元に戻したい場合はOSの再起動すればいいんです。

 
反映させるためにサービス再起動します。
service iptables restart
 
もう一度設定を確認します。
service iptables status

 

こんな感じになっていればOKです。

4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
5 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22222
6 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited

以上で設定は完了です。SSHで接続してみてください。

SSHでうまくいかないとき

任意のポートでうまくSSHできないときは以下を確認してみてください。

  • sshd_configに任意のポートが追加されているか
  • ファイアウォールには任意のポートが追加されているか、または拒否(REJECT)よりも上に追記されているか
  • AWSの場合はセキュリティグループでも任意のポート(サービス)が許可されているか

 

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