エックスサーバーのVPSでSSHのポート番号を変更する【CentOS】

エックサーバーのVPSをいじる機会があったので防備録。とりあえずSSHのポートをデフォルト22番から変更してみます。なおOSはCentOS 9です。

SSHのポート変更の具体的な手順

ファイアーウォールの設定を変更する

まず標準ファイアーウォールに新たな許可ポート番号を追加してやる。

以下のコマンドでは新たに「10022」を許可ポートとして追加した。「–permanent」をつけ忘れると「reload」されるタイミング(OS再起動など)で戻ってしまうので注意。

 # firewall-cmd --add-port=10022/tcp --zone=public --permanent

SSHDの設定ファイルを編集

/etc/ssh/sshd_configを変更してポート番号を変更する。

# vi /etc/ssh/sshd_config
/etc/ssh/sshd_config
# 任意のポート番号に変更する。ここでは10022とした。
Port  10022

SSHDとファイアーウォールを再起動

以下のコマンドでSSHDとファイアーウォールを再起動する。別のターミナルから接続してみて、新しいポート番号で接続できればOK。

※設定に間違いがないかどうかを再度確認してから実行してください。クライアント(Windows,Rlogin)の場合はいきなり切断されるようなことはなく操作を続けられましたが(新規セッションは張れませんが)、いきなり遮断されても不思議ではないと考えておいた方がいいかと。

# firewall-cmd --reload
# systemctl restart sshd.service

なお標準ファイアーウォールの設定を一覧表示させるには以下のコマンド。

# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens3
  sources: 
  services: cockpit dhcpv6-client http https
  ports: 10022/tcp
  protocols: 
  forward: yes
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 

標準のSSHポート番号22番を削除する場合は…

標準の22番をファイアーウォールルールから削除する場合は以下のコマンドでOK。

# firewall-cmd --remove-service=ssh --permanent
タイトルとURLをコピーしました