Linux系统如何配置SSH端口?

常见问题

Linux系统如何配置SSH端口?

2025-08-17 05:00


Linux系统SS

                                            

Linux系统SSH端口配置完全指南:安全与实用并重

作为Linux系统管理员,SSH(Secure Shell)是我们日常工作中不可或缺的远程管理工具。默认情况下,SSH服务使用22端口,这给系统安全带来了潜在风险。本文将详细介绍如何在Linux系统中修改SSH端口,并提供一系列增强SSH安全性的实用建议。

为什么要修改默认SSH端口?

在深入配置之前,我们需要理解修改默认SSH端口的重要性:

  • 降低自动化攻击风险:大多数自动化攻击脚本都会扫描22端口,修改端口可有效减少此类攻击
  • 提高系统安全性:即使攻击者知道系统开放SSH服务,也需要额外猜测端口号
  • 符合安全合规要求:许多安全标准建议不使用默认服务端口
  • 避免端口冲突:在某些特殊环境下,可能需要释放22端口供其他服务使用

详细配置步骤

1. 检查当前SSH配置

在修改前,我们先查看当前SSH配置:

sudo cat /etc/ssh/sshd_config | grep Port

2. 选择新端口号

选择端口号时需注意:

  • 避免使用知名服务端口(0-1023)
  • 建议选择1024-49151之间的端口
  • 避免使用连续或简单数字

3. 修改SSH配置文件

使用文本编辑器打开配置文件:

sudo vim /etc/ssh/sshd_config

找到或添加以下行:

Port 2222  # 将2222替换为你选择的新端口号

4. 更新防火墙规则

根据使用的防火墙工具进行相应配置:

对于iptables:

sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT

对于firewalld:

sudo firewall-cmd --permanent --add-port=2222/tcp
sudo firewall-cmd --reload

5. 重启SSH服务

sudo systemctl restart sshd

6. 测试新端口连接

保持现有会话不关闭,打开新终端测试:

ssh -p 2222 username@server_ip

高级安全配置建议

1. 使用非标准端口组合

可以在sshd_config中配置多个端口:

Port 22
Port 2222
Port 45678

2. 限制SSH访问IP

AllowUsers user@192.168.1.*
AllowGroups sshusers

3. 启用密钥认证

PasswordAuthentication no
PubkeyAuthentication yes

4. 启用两步验证

结合Google Authenticator增强安全性。

常见问题解决

1. 连接失败排查

  • 检查防火墙设置
  • 验证服务是否监听新端口:sudo ss -tulnp | grep sshd
  • 查看日志:sudo journalctl -u sshd

2. SELinux相关问题

如果系统启用SELinux,需要更新策略:

sudo semanage port -a -t ssh_port_t -p tcp 2222

总结

修改SSH默认端口是Linux系统安全加固的基本步骤之一。通过本文介绍的方法,您不仅可以成功更改SSH端口,还能实施一系列增强安全性的措施。记住,安全是一个持续的过程,单一措施的防护效果有限,建议结合多种安全策略共同保护系统。

配置完成后,建议定期:

  • 检查SSH登录日志
  • 更新SSH到最新版本
  • 审查用户访问权限

通过以上步骤,您的Linux系统SSH服务安全性将得到显著提升。


标签:
  • Linux SSH配置
  • SSH端口修改
  • Linux系统安全
  • 莱卡云