0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

SSHのポート番号を変更

Posted at

SSHサーバーの初期設定は、22番ポートを利用します。
このポート番号は一般的で広く知られているため、ポートの解放の際に不正侵入のリスクが高まります。
よってリスク回避のため、SSHのポート番号を22番から変更する。

SSHの設定ファイルを変更

その前にバックアップのためにSSH設定ファイルのバックアップを作成

[root@localhost ~]# cp /etc/ssh/sshd_config /etc/ssh/sshd_config.old

ポート番号を変更するために、SSH設定ファイル(/etc/ssh/sshd_config)のPort項目を編集。

/etc/ssh/sshd_config
Port 59695 (59695の数字は例)

設定の変更の確認のためdiffコマンドを使用

[root@localhost ~]# diff /etc/ssh/sshd_config.old /etc/ssh/sshd_config
17c17
< #Port 59695
---
> Port 59695

設定ファイルの構文をチェックしエラーがないことを確認

[root@localhost ~]# sshd -t

エラーが表示されなければ正常に構文が変更されている。

SSHの設定を反映

[root@localhost ~]# service sshd restart
Redirecting to /bin/systemctl restart sshd.service

変更したポート番号で、SSHログインできるかを確認

クライアント側からSSH接続

ssh -p 59695 usr@(IP)
ssh: connect to host (IP) port 59695: Connection timed out

繋がらない、どうやらfirewalldの設定も必要のよう

[root@localhost ~]# cat /usr/lib/firewalld/services/ssh.xml
<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>SSH</short>
  <description>Secure Shell (SSH) is a protocol for logging into and executing commands on remote machines. It provides secure encrypted communications. If you plan on accessing your machine remotely via SSH over a firewalled interface, enable this option. You need the openssh-server package installed for this option to be useful.</description>
  <port protocol="tcp" port="22"/>
</service>

firewalldの設定の前に設定ファイルをコピー

[root@localhost ~]#  cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/

次に設定ファイルのバックアップを作成

[root@localhost ~]# cp /etc/firewalld/services/ssh.xml  /etc/firewalld/services/ssh.xml.old

設定ファイルの中身を変更
先ほどの/usr/lib/firewalld/services/ssh.xmlのportを59695に変更

[root@localhost ~]#  cat /etc/firewalld/services/ssh.xml
<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>SSH</short>
  <description>Secure Shell (SSH) is a protocol for logging into and executing commands on remote machines. It provides secure encrypted communications. If you plan on accessing your machine remotely via SSH over a firewalled interface, enable this option. You need the openssh-server package installed for this option to be useful.</description>
  <port protocol="tcp" port="59695"/>
</service>

設定の変更の確認のためdiffコマンドを使用

[root@localhost ~]# diff /etc/firewalld/services/ssh.xml.old /etc/firewalld/services/ssh.xml
5c5
<   <port protocol="tcp" port="22"/>
---
>   <port protocol="tcp" port="59695"/>

変更した設定を反映

[root@localhost ~]# firewall-cmd --reload
success

successと表示されれば、OK

sshd を再起動

[root@localhost ~]# systemctl restart sshd

再度変更したポート番号で、SSHログインできるかを確認

ssh -p 59695 usr@(IP)
Last login: Time from (IP)
[usr@localhost ~]$

無事SSHのポート変更による接続が完了

参考url
https://webkaru.net/linux/change-ssh-port/
https://webkaru.net/linux/centos7-firewalld-ssh-port/

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?