SSH 是服务器的生命线,默认配置其实不太安全,稍微动动手可以大幅提高安全性,尤其是公网服务器。这里分享几个常用的 SSH 安全优化小技巧。

1、修改默认端口(22 端口最容易被扫)
默认端口 22 是攻击者扫描的首选,换个端口能挡掉一大波无脑爆破。
修改方法:
vim /etc/ssh/sshd_config把:
Port 22改成:
Port 22222 # 示例,随便用一个高位未被占用的端口然后放行新端口:
firewall-cmd --add-port=22222/tcp --permanent
firewall-cmd --reload最后重启 SSH:
systemctl restart sshd提示:不要同时关掉 22 端口和重启 SSH,可以先开新端口确认能连上,再禁用旧的。
2、禁止 root 直接登录
如果不想让 root 被暴力破解,可以创建普通用户 + sudo 权限,再禁用 root 登录。
操作步骤
创建普通用户
adduser admin
passwd admin
usermod -aG wheel admin禁止 root 登录
编辑 /etc/ssh/sshd_config
PermitRootLogin no重启 SSH 服务
systemctl restart sshd3、禁用密码登录(使用密钥更安全)
只允许密钥登录,可以防止暴力破解。
开启密钥登录
PasswordAuthentication no确保你已经配置好公钥
~/.ssh/authorized_keys提前测试好密钥能用再禁用密码登录,不然会锁自己在外面。
4、设置登录失败限制(可搭配 fail2ban)
fail2ban 可以自动检测 SSH 日志,一旦某 IP 连续失败多次,就自动拉黑一段时间。
yum install fail2ban -y # CentOS
apt install fail2ban -y # Debian/Ubuntu
# 启用 SSH 防护
vim /etc/fail2ban/jail.local添加:
[sshd]
enabled = true
bantime = 1h
findtime = 600
maxretry = 5启动:
systemctl enable fail2ban --now总结
建议部署的 SSH 安全措施:
- 更换默认端口
- 禁用 root 登录
- 使用密钥认证
- 开启 fail2ban 防爆破
转载作品,原作者:巴韭特锁螺丝,文章来源:https://mp.weixin.qq.com/s/FpgyPTO7_mA9vHW-0zheTw
微信赞赏
支付宝赞赏 