14
产品文档
控制台使用
基础类问题
应用类问题
网络类问题
安全类问题
常见问题
Linux CentOS怎么防止服务器SSH密码被暴力破解

防止ssh暴力破解可以从这几个方面控制:

1.更改ssh默认22端口,但是攻击者仍然可以使用端口扫描工具(如nmap)重新找到你的ssh登陆端口;

2.可以限制root账户远程登陆,自己需要使用root身份时执行su -或sudo,这个办法还行,能够有效防止;

3.防止暴力破解SSH密码,并把攻击者IP加入/etc/hosts.deny中来拒绝该IP尝试登陆。


我们来讲解一下第三种方法怎么操作!


同一IP地址连接错误超过10次,就加入/etc/hosts.deny。


#! /bin/bash
cat /var/log/secure|awk '/Failed/{print $(NF-3)}'|sort|uniq -c|awk '{print $2"="$1;}' > /sshPrevent/black.txt
DEFINE="10"
for i in `cat  /sshPrevent/black.txt`
do
        IP=`echo $i |awk -F= '{print $1}'`
        NUM=`echo $i|awk -F= '{print $2}'`
        if [ $NUM -gt $DEFINE ];
        then
         grep $IP /etc/hosts.deny > /dev/null
          if [ $? -gt 0 ];
          then
          echo "sshd:$IP" >> /etc/hosts.deny
          fi
        fi
done



然后添加计划任务:



[root@zwlbsweb ~]# crontab -e
*/5 * * * * /bin/bash /sshPrevent/ssh_pervent.sh
# 每五分钟检查一次
# 重启crontab
[root@zwlbsweb ~]# systemctl restart crond


我们过五分钟后再来查看下是否成功



[root@zwlbsweb ~]# cat /sshPrevent/black.txt 
103.101.232.208=1
103.108.187.4=2
103.248.220.249=15
104.131.93.33=1
104.236.122.193=2
104.236.186.24=2
104.236.246.16=1
104.244.79.33=4
104.248.211.180=2
......
-------------------------------分割线----------------------------------
[root@zwlbsweb ~]# cat /etc/hosts.deny
#
# hosts.deny    This file contains access rules which are used to
#        deny connections to network services that either use
#        the tcp_wrappers library or that have been
#        started through a tcp_wrappers-enabled xinetd.
#
#        The rules in this file can also be set up in
#        /etc/hosts.allow with a 'deny' option instead.
#
#        See 'man 5 hosts_options' and 'man 5 hosts_access'
#        for information on rule syntax.
#        See 'man tcpd' for information on tcp_wrappers
#
sshd:103.248.220.249
sshd:104.248.88.106
sshd:106.12.18.37
sshd:106.51.230.186
sshd:106.75.17.91
sshd:112.21.188.183
sshd:112.221.179.133
......


至此,防御措施就完成了!

另外最好不要用默认的22端口,建议换成其他端口,可以降低被攻击的风险!


这条帮助是否解决了您的问题? 已解决 未解决

提交成功!非常感谢您的反馈,我们会继续努力做到更好! 很抱歉未能解决您的疑问。我们已收到您的反馈意见,同时会及时作出反馈处理!