#介绍python
DenyHosts是Python语言写的一个程序,它会分析sshd的日志文件(/var/log/secure),当发现重 复的攻击时就会记录IP到/etc/hosts.deny文件,从而达到自动屏IP的功能。git
#更新系统github
apt-get update apt-get upgrade
#安装必要软件ssh
// 配置启动项工具,通常已经安装 sudo apt-get install sysv-rc-conf // git sudo apt-get install git // denyhosts里依赖ipaddr包,先装好避免后面出错 sudo apt-get install python-ipaddr // 下载denyhosts git clone https://github.com/denyhosts/denyhosts.git
#安装denyhosts并配置开机启动工具
// 克隆好进入目录(/home/wayne/denyhosts/) cd denyhosts // 真正安装,1秒装完 sudo python setup.py install // 将配置文件复制到/etc sudo cp denyhosts.conf /etc // 启动脚本,复制一份,并对新的daemon-control进行简单配置 cp daemon-control-dist daemon-control // 先查看一下主程序放在哪里,我这边看到的是/usr/local/bin/denyhosts.py whereis denyhosts.py // 配置启动脚本,将DENYHOSTS_BIN配置为上面看到的路径,即/usr/local/bin/denyhosts.py // 并看一下DENYHOSTS_CFG是否是指向/etc/denyhosts.conf vi daemon-control // 将启动脚本连接到系统启动目录 cd /etc/init.d/ sudo ln -s /home/wayne/denyhosts/daemon-control denyhosts // 配置启动项,找到denyhosts,并按空格选择 sudo sysv-rc-conf
#启动日志
// 以上都完成后,重启机器能够使其开机启动 sudo shutdown -r now // 单次不想重启的话,能够手动启动 sudo /etc/init.d/denyhosts start sudo service denyhosts start // 手动关闭 sudo /etc/init.d/denyhosts stop sudo service denyhosts stop
#配置code
denyhosts全部的配置在/etc/denyhosts.conf。通常使用预设的配置就能很好发挥做用,不用瞎折腾。ip
DENY_THRESHOLD_INVALID = 1 #容许无效用户登陆失败的次数 DENY_THRESHOLD_VALID = 10 #容许普通用户登陆失败的次数 DENY_THRESHOLD_ROOT = 5 #容许root登陆失败的次数
#检查get
denyhosts运行一段时间后,会将恶意ip收集到/etc/hosts.deny里it
vi /etc/hosts.deny