自动拒绝在CentOS中进行黑客攻击?


1

我的服务器受到攻击。我正在记录这种尝试:

Sep 22 06:39:11 s1574**** sshd[16453]: Failed password for invalid user amber from        64.215.17.4 port 35182 ssh2
Sep 22 04:39:11 s1574**** sshd[16454]: Received disconnect from 64.215.17.4: 11: Bye Bye
Sep 22 06:39:11 s1574**** sshd[16457]: Invalid user amber from 64.215.17.4
Sep 22 04:39:11 s1574**** sshd[16458]: input_userauth_request: invalid user amber
Sep 22 06:39:11 s1574**** sshd[16457]: pam_unix(sshd:auth): check pass; user unknown
Sep 22 06:39:11 s1574**** sshd[16457]: pam_unix(sshd:auth): authentication failure;     logname= uid=0 euid=0 tty=ssh ruser= rhost=dns2.rsd.com 
Sep 22 06:39:11 s1574**** sshd[16457]: pam_succeed_if(sshd:auth): error retrieving     information about user amber
Sep 22 06:39:14 s1574**** sshd[16457]: Failed password for invalid user amber from 64.215.17.4 port 35842 ssh2
Sep 22 04:39:14 s1574**** sshd[16458]: Received disconnect from 64.215.17.4: 11: Bye Bye

我该怎么做才能阻止这种访问尝试,例如在超过3个denie时阻止ip

Answers:


6
  1. 您可以限制每分钟的登录尝试次数 iptables。 此类规则将在三次登录尝试后阻止IP一分钟(取自 一个极客的日记 - 使用Netfilter和。来减轻SSH暴力攻击 recent ):

    iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH
    iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j SSH_WHITELIST
    iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j ULOG --ulog-prefix SSH_brute_force
    iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j DROP
    
  2. 如果你想要更多可配置的sikytion,你可以使用 的fail2ban 要么 的DenyHosts 用于分析SSHd日志和阻止可疑IP地址。


谢谢你的回复,有没有办法做同样的事情添加一个被拒绝的主机文件,其中iptables可以读取?
spacebiker

iptables 自己无法从文件中读取任何内容。可以编写一个解析文件并添加/删除iptables规则的脚本。但是,您可以使用 /etc/hosts.deny 这直接影响 sshd
aland

另外我安装了denyhosts,它将攻击者的ips添加到hosts.deny,它就像一个魅力!
spacebiker

1

最好的方法是使用iptables阻止所有不需要的端口,并设置你的ssh使用私钥登录。我知道Putty和MobaXterm(都是免费的ssh客户端)支持私钥登录。然后在你的/ etc / ssh / sshd_config里面删除

PermitRootLogin yes

并添加:

PermitRootLogin without-password

这将使得即使你知道root密码它也不允许你用它登录。

你可以使用iptables规则来限制它们,这样它们也不会让你的服务器陷入困境


1

安装软件Denyhosts。它会自动将这些黑客IP列入hosts.deny。该包可在epel存储库中找到。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.