Linux服务之ssh防暴力破解

实例:最近公司服务器被别人暴力破解sshd密码,系统负载很高,因为系统会不断认证用户,增加系统资源。

    fail2ban监控系统日志,将满足相关条件的IP加入到iptables列表中拒绝一段时间,过一段时间后,系统自动解除


1、sshd服务器存放位置

    vim /var/log/secure

wKiom1ZNRNnBJBcnAABkg0zQMao546.png

因为secure存放了很多系统日志,对日志分析很麻烦,现在把日志存放到别处


2、配置sshd文件

    vim /etc/ssh/sshd_config

wKiom1ZNRXijMgubAAAYEyHRvLw240.png

把AUTHPRIV改为local1


    vim /etc/rsyslog.conf

wKioL1ZNRkKy41grAAAYIjSmS70697.png

追加一行,local1.*     /var/log/sshd.log


3、重启日志服务和ssh服务

    wKiom1ZNRmXz1LFNAAAk3vYO9AA057.png

测试:一条登录日志,一条退出日志

wKiom1ZNRsqTi-t8AAAsao0hpxI058.png

4、下载安装fail2ban

     安装fail2ban:

    [root@cj-service-2 fail2ban-0.8.14]# python setup.py install


    复制启动脚本

    [root@cj-service-2 fail2ban-0.8.14]# cp files/redhat-initd /etc/init.d/fail2ban

    [root@cj-service-2 fail2ban-0.8.14]# chkconfig fail2ban on


5、实例:

    ssh远程登录5分钟内3次密码验证失败,禁止用户IP访问主机1小时,1小时该限制自动解除,用户可重新登录

    [root@cj-service-2 fail2ban-0.8.14]# vim /etc/fail2ban/jail.conf    wKioL1ZNSUDCPZndAAAxFFxWCfM292.png

启动fail2ban服务

    [root@cj-service-2 fail2ban-0.8.14]# service fail2ban start

    启动fail2ban:                                              [确定]


测试:输入错误3次密码,第4次和第5次被拒绝登录

    wKioL1ZNSgagySRtAAAwn7pQlpI127.png


检查:    

wKioL1ZNTEbTDMlVAABxKRTLyU4507.png

如果想清除某个IP,想让他重新登录:

清空/var/log/sshd.log日志就可以了

service fail2ban restart


6、如果ssh默认端口改为222,配置fail2ban

    [root@cj-service-2 ~]# vim /etc/fail2ban/jail.conf    wKioL1ZNTUvjGmdkAAAlYsAy7KI801.png把port=ssh 改为 port=222

    service fail2ban restart


测试:连续3次错误输入密码后显示以下内容,说明生效

 wKioL1ZNUGWRKOUqAAAX62yb02Y652.png


你可能感兴趣的:(ssh)