进口手表网站,湖北省建设工程信息网官网,找生产建筑模板的厂家,公司网站建设付款分录SSH 服务器默认使用 22 端口#xff0c;这使得攻击者可以轻松识别并尝试攻击 SSH 服务。为了增加服务器的安全性#xff0c;建议更改默认的 SSH 端口。本文将详细介绍如何在 Linux 系统上更改 SSH 服务端口#xff0c;并包含一些最佳实践和注意事项。
1. 检查新的 SSH 端口…SSH 服务器默认使用 22 端口这使得攻击者可以轻松识别并尝试攻击 SSH 服务。为了增加服务器的安全性建议更改默认的 SSH 端口。本文将详细介绍如何在 Linux 系统上更改 SSH 服务端口并包含一些最佳实践和注意事项。
1. 检查新的 SSH 端口是否被占用
在更改 SSH 端口之前首先应检查所选的新端口是否已经被其他服务占用。可以使用以下命令检查特定端口是否已被占用
sudo netstat -tuln | grep [PORT_NUMBER]将 [PORT_NUMBER] 替换为您计划使用的新端口号。如果命令没有返回任何结果表示该端口是空闲的可以使用。
2. 编辑 SSH 配置文件
SSH 服务器的配置文件通常位于 /etc/ssh/sshd_config。使用文本编辑器如 vi 或 nano打开该文件
sudo vi /etc/ssh/sshd_config找到以下行
#Port 22取消注释并将 22 修改为您想要使用的新端口号。例如如果希望将 SSH 端口更改为 4444修改如下
Port 4444注意确保您选择的端口不被保留或常用服务占用建议选择一个较高的端口号如 1024 以上。
3. 修改防火墙规则
如果您的服务器使用了防火墙如 iptables 或 firewalld您需要允许新的 SSH 端口通过防火墙。
firewalld
sudo firewall-cmd --permanent --zonepublic --add-port4444/tcp
sudo firewall-cmd --reloadiptables
sudo iptables -A INPUT -p tcp --dport 4444 -j ACCEPT
sudo service iptables save
sudo service iptables restart注意在更新防火墙规则后建议不要立即删除旧的 22 端口规则先测试新端口是否正常工作后再进行移除操作。
4. 重启 SSH 服务
完成配置文件和防火墙规则的更改后需要重启 SSH 服务使更改生效
sudo systemctl restart sshd在 CentOS 或 RHEL 系统上也可以使用以下命令
sudo service sshd restart注意在远程管理的情况下建议保持现有 SSH 会话打开直到确认可以通过新端口连接成功后再关闭旧的会话。
5. 测试新的 SSH 端口
更改后测试新端口以确保 SSH 服务正常运行
ssh -p 4444 usernameyour_server_ip注意使用 ssh -p [PORT_NUMBER] 参数指定连接的新端口号。
6. 清理旧的防火墙规则可选
如果新端口测试通过且确认不再需要通过默认的 22 端口访问 SSH可以将防火墙规则中的端口 22 删除
firewalld
sudo firewall-cmd --permanent --zonepublic --remove-port22/tcp
sudo firewall-cmd --reloadiptables
sudo iptables -D INPUT -p tcp --dport 22 -j ACCEPT
sudo service iptables save
sudo service iptables restart7. 其他注意事项 端口范围尽量选择一个不常用的高端口避免与其他服务冲突。 SELinux如果系统启用了 SELinux可能需要为新端口配置适当的策略。使用以下命令添加新的端口号到 SELinux 规则中 sudo semanage port -a -t ssh_port_t -p tcp 4444日志检查更改端口后建议定期检查 SSH 日志 (/var/log/auth.log 或 /var/log/secure) 以确保没有未授权的访问尝试。
总结
通过更改默认的 SSH 端口可以降低被扫描和攻击的风险。尽管这并不是一个彻底的安全解决方案但它可以有效地增强服务器的安全性。记得在更改端口后更新所有相关的配置和规则确保服务的稳定和安全运行。