Linux服务器配置SSH服务登录失败的解决方案
作者:也言
文章介绍了配置Linux服务器SSH远程登录失败处理机制的步骤,包括备份原配置文件、安装pam_tally2统计登录失败次数、使用Sed命令编辑配置、重启使配置生效以及封禁登录失败五次的账号
任务目标
配置 Linux 服务器ssh远程登录失败处理机制,防止黑客爆破服务器密码
操作步骤
备份原配置文件
$ sudo cp /etc/pam.d/sshd /etc/pam.d/sshd.bak $ sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
安装 pam_tally2 统计登陆失败次数
# 对于Debian/Ubuntu系统: $ sudo apt install libpam-modules # 对于CentOS/RHEL系统: $ sudo yum install pam
使用 Sed 命令直接编辑
$ sudo sed -i '$a auth required pam_faillock.so preauth silent audit deny=5 unlock_time=1800' /etc/pam.d/sshd $ sudo sed -i '$a auth [default=die] pam_faillock.so authfail audit deny=5 unlock_time=1800 ' /etc/pam.d/sshd $ sudo sed -i 's/#LoginGraceTime 2m/LoginGraceTime 30m/' /etc/ssh/sshd_config $ sudo sed -i 's/#MaxAuthTries 6/MaxAuthTries 5/' /etc/ssh/sshd_config


重启使配置生效
$ sudo systemctl restart sshd
封 禁原理为登录失败五次,将该账号锁定五分钟,无论什么 IP 都无法继续登录,适合作为内网服务器 ssh 策略
如果部署在外 网的服务器配置了该策略,很有可能永远都访问不了了(外 网一直有机器人在爆破 ssh 端口)
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
