SSH防暴力就用DenyHosts

上午更新服务器数据,因为服务器只开放了web端口及SSH,所以更新我都采用SSH。上午链接SSH时不小心连继输错了几次密码,导致SSH无法链接上去。思来想去,才想起自已在服务器上安装了DenyHosts。应该是把自已的IP关外面了。切换到我其它主机上再SSH过去一查,果真如此。看来DenyHosts真是个好东西。
DenyHosts的作用很简单,就是为了防止SSH被暴力破解。

还真的很强大。导致把自已关外面,好在我切到另外的主机上再SSH进去把自已的IP放出来才搞定。用法也简单,以下摘自网络:
1.安装
sudo apt-get install denyhosts

2.配置 /etc/denyhosts.conf 。

内容参考:
sshd 登录日志文件。不同系统的不一样。
SECURE_LOG = /var/log/auth.log

限制主机访问的文件
HOSTS_DENY = /etc/hosts.deny

移除 HOSTS_DENY 中超过以下时间的旧条目
PURGE_DENY = 1w

阻止的服务。默认是 sshd ,可以设置为其他或全部。
BLOCK_SERVICE = sshd

当该主机利用无效用户进行登录尝试失败超过以下的次数时,阻止该主机
DENY_THRESHOLD_INVALID = 3

针对有效用户的
DENY_THRESHOLD_VALID = 4

针对 root 用户的
DENY_THRESHOLD_ROOT = 1

针对有限制的用户的
DENY_THRESHOLD_RESTRICTED = 1

DenyHosts 用于写数据用的。在里面可以看到 hosts,hosts-root,offset,users-hosts,users-valid,hosts-restricted,hosts-valid,suspicious-logins,users-invalid 这些记录。
WORK_DIR = /var/lib/denyhosts

当为 YES 时,如果允许的主机在登录时被认为可疑,则对该主机进行记录。当为 NO 时,如果允许的主机在登录时被认为可疑也不对该主机进行记录。在允许的主机范围外的主机的可疑登录全部会被记录。
SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS=YES

反向域名解释
HOSTNAME_LOOKUP=NO

这个文件存在表示 Denyhosts 正在运行。用于保证每次只有一个实例在运行。
LOCK_FILE = /var/run/denyhosts.pid

管理员 EMail
ADMIN_EMAIL = root@localhost

SMTP 主机设置。如果有 SMTP 服务支持,可以给管理员发邮件。
SMTP_HOST = localhost
SMTP_PORT = 25
SMTP_FROM = DenyHosts
SMTP_SUBJECT = DenyHosts Report

如果在指定的时间内没有失败的登录尝试,将导致此主机的失败计数重置为0。此值适用于除了 root 之外,所有有效用户(在 /etc/passwd 中的)的登录尝试。如果没有定义,这个计数将永远不会重置。
AGE_RESET_VALID=5d

针对 root 用户的
AGE_RESET_ROOT=25d

针对有限制的用户的
AGE_RESET_RESTRICTED=25d

针对无效用户(不在 /etc/passwd 中的)
AGE_RESET_INVALID=1w

当登录成功时,把登录成功的失败计数重置为0。默认是 NO。
#RESET_ON_SUCCESS = yes

当以后台方式运行时,Denyhosts 的日志文件,留空不记录日志。
#DAEMON_LOG = /var/log/denyhosts

当以后台方式运行时,每读一次日志文件的时间间隔。
DAEMON_SLEEP = 30s

当以后台方式运行时,清除机制在 HOSTS_DENY 中终止旧条目的时间间隔。
DAEMON_PURGE = 1h

3.重启 Denyhosts
sudo /etc/init.d/denyhosts restart

相关日志

发表于:2012-07-17 16:06:27 at 16:06 分类:服务器 发表评论 Tags:, ,

发表评论

(必填)

(必填)您的电子邮箱不会被公开。

*

正在加载信息...

Archives