修改默认端口、禁用密码登录启用密钥认证、限制用户和IP访问、启用Fail2Ban及关闭root登录可显著提升SSH安全性,需同步配置防火墙并测试连接。
SSH 是远程管理服务器最常用的工具,但默认配置存在安全隐患。通过合理调整配置,可以显著提升 SSH 登录的安全性,防止暴力破解、中间人攻击等威胁。以下是关键的强化措施,适用于大多数 Linux 系统。
修改默认端口
SSH 默认使用 22 端口,攻击者常针对该端口进行扫描和爆破。更改端口可有效减少自动攻击。
- 编辑 SSH 配置文件:/etc/ssh/sshd_config
- 找到 Port 22,修改为非知名端口(如 2222、4422)
- 保存后重启 SSH 服务:systemctl restart sshd
- 确保防火墙放行新端口
禁用密码登录,启用密钥认证
密码容易被暴力破解,使用 SSH 密钥更安全且方便免密登录。
- 生成密钥对:ssh-keygen -t ed25519(推荐)或 rsa(至少 2048 位)
- 将公钥上传至服务器的 ~/.ssh/authorized_keys
- 在 sshd_config 中设置:
PasswordAuthentication no
PubkeyAuthentication yes - 测试密钥登录成功后再关闭密码验证
限制用户与来源 IP
只允许特定用户从可信网络登录,缩小攻击面。
- 在 sshd_config 中设置:
AllowUsers your_username
AllowGroups ssh-access - 结合防火墙限制源 IP,例如使用 iptables 或 ufw:
ufw allow from 192.168.1.0/24 to any port 2222
启用 Fail2Ban 防暴力破解
Fail2Ban 可监控日志,自动封禁多次尝试失败的 IP。
- 安装 Fail2Ban:apt install fail2ban(Debian/Ubuntu)
- 复制配置文件:cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
- 启用 SSH 保护,在 jail.local 中确保:
[sshd]
enabled = true - 启动并启用服务:systemctl enable fail2ban && systemctl start fail2ban
其他安全建议
进一步加固 SSH 服务的运行环境。
- 禁用 root 远程登录:PermitRootLogin no
- 使用非默认 SSH 用户,避免使用 admin、root 等常见用户名
- 设置登录超时:ClientAliveInterval 300,ClientAliveCountMax 2
- 定期更新系统与 OpenSSH 软件包
- 开启 SSH 日志审计:LogLevel VERBOSE
基本上就这些。合理配置后,SSH 的安全性会大幅提升。关键是关闭密码登录、使用密钥、改端口,并配合访问控制。不复杂但容易忽略细节,比如防火墙规则和测试备用连接。
以上就是SSH登录如何提高安全性_SSH登录安全性的强化配置指南的详细内容,更多请关注php中文网其它相关文章!


