【Linux】修改SSH Port

要修改SSH port,改完設定檔之後重啟服務失敗,只好研究如何解決

開啟/etc/sshd/sshd_config,並修改#Port 22,存檔之後sshd 服務重啟失敗:Bind Permission Deny

經查是SELinux 問題,需要從這邊下手修改

> semanage
-bash: semanage: command not found

# 發現沒有這個工具,只好再安裝
yum install policycoreutils-python -y

# 以下指令可以查看SELinux 的SSH port
> semanage port -l | grep ssh
ssh_port_t				tcp				22

# 接著依照上面grep 到的名稱,上加目標port
> semanage port -a -t ssh_port_t -p tcp XXX
# 加完再驗證
> semanage port -l | grep ssh
ssh_port_t				tcp				XXX, 22

# 重啟sshd
> systemctl restart sshd

# 如果有需要,再開啟防火牆

References:
https://www.ltsplus.com/linux/fix-semanage-command-not-found
https://blog.csdn.net/default7/article/details/103592139
https://www.thegeekdiary.com/error-bind-to-port-2222-on-0-0-0-0-failed-permission-denied-error-while-starting-sshd-service-on-centos-rhel/