CentOS 中自動拒絕駭客攻擊?

CentOS 中自動拒絕駭客攻擊?

我的伺服器受到攻擊。我正在記錄這種嘗試:

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 個拒絕時阻止 ip

答案1

  1. 您可以使用 限制每分鐘的登入嘗試次數iptables。此類規則將在三次登入嘗試後封鎖 IP 一分鐘(摘自recent極客日記 – 使用 Netfilter 和模組減輕 SSH 暴力攻擊):

    iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m 最近 --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 最近 --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 最近 --update --seconds 60 --hitcount 4 --rttl --name SSH -j DROP
    
  2. 如果您想要更多可設定的 sikytion,您可以使用失敗2禁止或者拒絕主機用於分析 SSHd 日誌並封鎖可疑 IP 位址。

答案2

最好的實踐方法是使用 iptables 阻止所有不需要的端口,並將 ssh 設定為使用私鑰登入。我知道Putty和MobaXterm(都是免費的ssh客戶端)支援私鑰登入。然後在 /etc/ssh/sshd_config 中刪除

PermitRootLogin yes

並添加:

PermitRootLogin without-password

這將使即使您知道 root 密碼也不允許您使用它登入。

你可以使用 iptables 規則來限制它們,這樣它們就不會導致你的伺服器陷入困境

答案3

安裝軟體 Denyhosts。它會自動將此類駭客IP列出到hosts.deny中。該軟體包可在 epel 儲存庫中找到。

相關內容