CentOS7x下修改SSH的默认端口稍微有点要注意的是firewalld的设置。
如果开启了selinux,那么也要单独进行设置。
下面简单说一下配置步骤:
- 1.修改SSH配置文件的端口设置
编辑SSH配置文件sshd_config:
vi /etc/ssh/sshd_config
查找到 Port=22字段,将其前面的注释去掉
Port 22 //将注释符#去掉
端口号改为想要设置的端口
重启SSH服务: systemctl restart sshd
- 测试一下连接性:
$ ssh -t root@IP -pPORT -vvv -i ~/.ssh/id_rsa
OpenSSH_8.0p1, OpenSSL 1.1.1c 28 May 2019
debug1: Reading configuration data /etc/ssh/ssh_config
debug2: resolve_canonicalize: hostname IP is address
debug2: ssh_connect_direct
debug1: Connecting to IP [IP] port PORT.
连接不上是因为linux firewalld/selinux的设置
- firewalld的设置:
查看linux防火墙当前「默认」和「激活」zone(区域):
systemctl status firewalld
$ firewall-cmd --get-default-zone
public
$ firewall-cmd --get-active-zones
public
此时要在firewalld允许 新 端口出入站流量
$ firewall-cmd --permanent --zone=public --add-port=新端口/tcp
success
删除22端口(切断原端口出入站流量)相关配置
重新加载防火墙
$ firewall-cmd --reload