当前位置: > Linux服务器 > iptables >

iptables + Denyhost抵御暴力破解

时间:2015-03-02 14:57来源:linux.it.net.cn 作者:IT
使用iptables 现在每分钟连接ssh的次数
#允许本地环回接口访问

iptables -A INPUT -i lo -j ACCEPT

#对已经建立的所有链接都放行

iptables -A INPUT -m state –state ESTABLISHED -j ACCEPT

#每分钟对ssh的新连接只允许两个,已建立的连接不限制

iptables -A INPUT -p tcp –dport 22 -m limit –limit 2/minute –limit-burst 2 -m state –state NEW -j ACCEPT

#添加默认策略拒绝所有

iptables -P INPUT DROP

使用Denyhost 对错误的ssh密码的ip进行拒绝访问


下载denyhost http://sourceforge.net/projects/denyhosts/files/

安装denyhost

tar -zxvf DenyHosts-2.6.tar.gz 

cd DenyHosts-2.6 

python setup.py install                                                   
#安装DenyHosts 

cd /usr/share/denyhosts/                                               
#默认安装路径 

cp denyhosts.cfg-dist denyhosts.cfg                               
#denyhosts.cfg为配置文件 

cp daemon-control-dist daemon-control                       
#daemon-control为启动程序 

chown root daemon-control                                          
#添加root权限 

chmod 700 daemon-control                                           
#修改为可执行文件 

ln -s /usr/share/denyhosts/daemon-control /etc/init.d    
#对daemon-control进行软连接,方便管理 

/etc/init.d/daemon-control start         
#启动denyhosts 

chkconfig daemon-control on            
#将denghosts设成开机启动

配置denyhost

view sourceprint?vim /usr/share/denyhosts/denyhosts.cfg 

HOSTS_DENY = /etc/hosts.deny                
#控制用户登陆的文件 

PURGE_DENY = 30m                                 
#过多久后清除已经禁止的,设置为30分钟; 

BLOCK_SERVICE = sshd                          
#禁止的服务名,当然DenyHost不仅仅用于SSH服务 

DENY_THRESHOLD_INVALID = 1            
#允许无效用户失败的次数 

DENY_THRESHOLD_VALID = 5                
#允许普通用户登陆失败的次数 

DENY_THRESHOLD_ROOT = 5                
#允许root登陆失败的次数 

DAEMON_LOG = /var/log/denyhosts     
#DenyHosts日志文件存放的路径,默认

更改DenyHosts的默认配置之后,重启DenyHosts服务即可生效:

/etc/init.d/daemon-control restart        
#重启denyhosts



(责任编辑:IT)
------分隔线----------------------------