Red Hat/Centos安装Denyhosts阻止SSH攻击/黑客攻击
时间:2020-01-09 10:43:25 来源:igfitidea点击:
如何在CentOS Linux或者Red Hat Enterprise Linux服务器5.x下阻止和阻止对SSH服务器的攻击?
您可以使用denyhosts软件轻松阻止SSH服务器攻击,包括基于字典的攻击和蛮力攻击。
这是一个基于Python的脚本,该脚本分析sshd服务器日志消息以确定哪些主机试图入侵您的系统。
步骤1:启用Rpmforge Repo
首先,启用rpoforge repo。
对于32位CentOS/RHEL Linux,执行:
# rpm -Uhv http://apt.sw.be/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
对于64位CentOS/RHEL 5 Linux,执行:
# rpm -Uhv http://apt.sw.be/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm
步骤2:安装Denyhosts
执行以下命令:
# yum -y install denyhosts
步骤3:配置Denyhosts
缺省配置文件位于/etc/denyhosts/denyhosts.cfg。
允许您的计算机访问sshd
您需要设置一个白名单,以便您永远都不想使用此脚本阻止自己。
编辑/etc/hosts.allow,执行:
# vi /etc/hosts.allow
允许使用192.54.1.2和203.51.2.3中的sshd:
sshd: 192.54.1.2 203.51.2.3
保存并关闭文件。
设置警报电子邮件ID
编辑/etc/denyhosts/denyhosts.cfg,执行:
# vi /etc/denyhosts/denyhosts.cfg
如果您想接收有关新限制主机和可疑登录的电子邮件,请设置此地址以与您的电子邮件地址匹配。
如果您不想接收这些报告,请将此字段留空(或者使用noemail选项运行)。
多个电子邮件地址可以用逗号分隔,例如:ADMIN_EMAIL = [email protected],[email protected]
ADMIN_EMAIL = [email protected]
保存并关闭文件。
这是我自己的RHEL/CentOS 5.x服务器/vps盒配置文件示例,文件配置非常好,只需打开并阅读即可:
############ THESE SETTINGS ARE REQUIRED ############ SECURE_LOG = /var/log/secure HOSTS_DENY = /etc/hosts.deny PURGE_DENY = 7d BLOCK_SERVICE = sshd DENY_THRESHOLD_INVALID = 5 DENY_THRESHOLD_VALID = 10 DENY_THRESHOLD_ROOT = 1 DENY_THRESHOLD_RESTRICTED = 1 WORK_DIR = /usr/share/denyhosts/data SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS=YES HOSTNAME_LOOKUP=YES LOCK_FILE = /var/lock/subsys/denyhosts ############ THESE SETTINGS ARE OPTIONAL ############ ADMIN_EMAIL = [email protected] SMTP_HOST = localhost SMTP_PORT = 25 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 ######### THESE SETTINGS ARE SPECIFIC TO DAEMON MODE ########## DAEMON_LOG = /var/log/denyhosts DAEMON_SLEEP = 30s DAEMON_PURGE = 1h ######### THESE SETTINGS ARE SPECIFIC TO ########## ######### DAEMON SYNCHRONIZATION ##########
打开拒绝主机
执行以下命令:
# chkconfig denyhosts on # service denyhosts start
如何查看Denyhosts日志?
输入命令:
# tail -f /var/log/denyhosts # tail -f /var/log/secure