红联Linux门户
Linux帮助

安装denyhosts的方法

发布时间:2016-09-14 15:57:42来源:linux网站作者:waynehu
介绍
DenyHosts是Python语言写的一个程序,它会分析sshd的日志文件(/var/log/secure),当发现重复的攻击时就会记录IP到/etc/hosts.deny文件,从而达到自动屏IP的功能。
 
更新系统
apt-get update
apt-get upgrade
 
安装必要软件
// 配置启动项工具,一般已经安装
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
 
配置
denyhosts所有的配置在/etc/denyhosts.conf。一般使用预设的配置就能很好发挥作用,不用瞎折腾。
DENY_THRESHOLD_INVALID = 1 #允许无效用户登录失败的次数
DENY_THRESHOLD_VALID = 10 #允许普通用户登录失败的次数
DENY_THRESHOLD_ROOT = 5 #允许root登录失败的次数
 
检查
denyhosts运行一段时间后,会将恶意ip收集到/etc/hosts.deny里
vi /etc/hosts.deny
 
本文永久更新地址:http://www.linuxdiyf.com/linux/24163.html