在日常使用中,Linux系统通常具备较高的安全性,但在某些特殊情况下,例如遭受有针对性的爆破攻击时,仍然可能存在风险。为提高安全防护,其中一种常见做法就是将默认的SSH 22端口更改为其他端口。下面以CentOS 7为例,介绍如何更改SSH端口的详细步骤。
① 修改SSH配置文件
打开SSH配置文件/etc/ssh/sshd_config进行编辑:
vi /etc/ssh/sshd_config
首先将默认的Port 22行前面的注释符号去掉(确保不误删),以防配置出错后无法远程连接。之后,在文件中添加新端口的配置,比如:
Port 20000
务必确保在新端口配置正确生效后,再对默认端口做注释处理。
② 更新防火墙设置
为了允许新端口的SSH连接,需要将防火墙策略中添加相应的规则。执行以下命令将端口20000加入允许范围,并使用参数--permanent保存该设置,以保证重启后依然有效:
firewall-cmd --zone=public --add-port=20000/tcp --permanent
随后,重载防火墙规则以生效更改:
firewall-cmd --reload
可通过下面的命令检查新端口是否已经被成功添加:
firewall-cmd --zone=public --query-port=20000/tcp
若结果显示"yes",说明端口配置无误。
③ 调整SELinux设置
在CentOS 7中,SELinux会控制允许的SSH访问端口。先用以下命令查看当前SELinux允许的SSH端口范围:
semanage port -l | grep ssh
如果确实需要使用新的端口,比如20000,则需要将该端口添加到允许列表中,执行:
semanage port -a -t ssh_port_t -p tcp 20000
完成后,再次执行命令检查确认20000是否成功加入:
semanage port -l | grep ssh
正常情况下,应能在输出中看到类似“ssh_port_t tcp 20000, 22”的记录表明20000端口已被接受。
④ 重启SSH服务
所有配置完成之后,重新启动SSH服务使所有修改立即生效:
systemctl restart sshd.service
⑤ 测试新的SSH连接
在确认服务重启后,尝试使用新端口20000进行SSH登录。如果连接成功,再将配置文件中默认22端口对应的配置注释掉,确保今后只通过新的端口进行连接。
通过以上几个步骤,你可以有效地将CentOS 7系统上的默认SSH端口修改为自定义端口,从而增强系统的安全性。