1、检查安装环境
检查Sshd是否支持Tcpwrap
ldd /usr/sbin/sshd |grep wrap
2、检查python版本
python –V
3、安装Denyhost
官方地址:http://denyhost.sourceforge.net
python setup.py install
程序脚本自动安装到/usr/share/denyhosts
库文件自动安 装到/usr/lib/python2.3/site-packages/DenyHosts
denyhosts.py自动安装到/usr/bin
设置启动脚本
SECURE_LOG = /var/log/secure
#RedHat/Fedora Core分析该日志文件
#其它版本linux根据denyhosts.cfg-dist内提示选择。
PURGE_DENY = 30m
#过多久后清除
DENY_THRESHOLD_INVALID = 1
#允许无效用户 (/etc/passwd未列出)登录失败的次数
DENY_THRESHOLD_VALID = 5
#允许有效(普 通)用户登录失败的次数
DENY_THRESHOLD_ROOT = 3
#允许root登录失败的次数
HOSTNAME_LOOKUP=NO
#是否做域名反解
把Denyhost加入到开机启动中
echo '/usr/share/denyhosts/daemon-control start'>>/etc/rc.d/rc.local启动Denyhost的进程
/usr/share/denyhosts/daemon-control start可以查看到Denyhost在运行中
ps -ef | grep deny
Ssh连接记录的日志文件
tail /var/log/secure –f
Denyhost日志文件
tail /var/log/denyhosts –f
Denyhost将恶意连接的IP记录到Hosts.deny文件中,过一定时间后再从该文件中清除(Denyhost.cfg中设定的时间)
vi /etc/hosts.deny
SECURE_LOG = /var/log/secure 安全日志路径
HOSTS_DENY = /etc/hosts.deny 拒绝的IP地址文件路径
PURGE_DENY = 24h 被禁止的IP屏蔽的的时间,过了这个时间自动解锁
BLOCK_SERVICE = sshd 需要拒绝的服务名字
DENY_THRESHOLD_INVALID = 5 某一个无效的用户输入多少次锁定
DENY_THRESHOLD_VALID = 10 某一个有效的用户连续输错多少次后锁定
DENY_THRESHOLD_ROOT = 2 Root 用户连续输错多少次后被锁定。
DENY_THRESHOLD_RESTRICTED = 1 暂时未知
WORK_DIR = /usr/share/denyhosts/data 文件存放路径
SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS=YES 暂时未知
HOSTNAME_LOOKUP=YES 是否解析域名IP
LOCK_FILE = /var/lock/subsys/denyhosts
############ THESE SETTINGS ARE OPTIONAL ############
ADMIN_EMAIL = 管理员邮箱
SMTP_HOST = localhost SMTP服务器
SMTP_PORT = 25 SMTP端口
SMTP_FROM = DenyHosts <nobody@localhost> 邮件出处
SMTP_SUBJECT = DenyHosts Report 邮件主题
AGE_RESET_VALID=5d
AGE_RESET_ROOT=25d
AGE_RESET_RESTRICTED=25d
AGE_RESET_INVALID=10d
DAEMON_LOG = /var/log/denyhosts
DAEMON_SLEEP = 30s
DAEMON_PURGE = 1h
######### DAEMON SYNCHRONIZATION ##########
4. 修改成开机启动就可以
ln -s /usr/share/denyhosts/daemon-control /etc/init.d/denyhost
chkconfig --add denyhost
chkconfig --level 35 denyhost on
cat /etc/hosts.deny
/etc/rc.d/init.d/denyhost restart
转载于:https://blog.51cto.com/hao360/1376959