Hacking-Versuche in CentOS automatisch ablehnen?

Hacking-Versuche in CentOS automatisch ablehnen?

Mein Server wird angegriffen. Ich protokolliere folgende Angriffe:

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

Was kann ich tun, um diese Art von Zugriffsversuchen zu blockieren, etwa durch Blockieren der IP, wenn mehr als 3 Ablehnungen

Antwort1

  1. Sie können die Anzahl der Anmeldeversuche pro Minute mit begrenzen iptables. Solche Regeln blockieren IP für eine Minute nach drei Anmeldeversuchen (entnommen ausTagebuch eines Geeks – Abwehr von SSH-Brute-Force-Angriffen mit Netfilter und dem recentModul):

    iptables -A INPUT -p tcp --dport 22 -m Status --state NEU -m aktuell --set --name SSH
    iptables -A INPUT -p tcp --dport 22 -m Status --state NEU -j SSH_WHITELIST
    iptables -A INPUT -p tcp --dport 22 -m Status --state NEU -m aktuell --update --seconds 60 --hitcount 4 --rttl --name SSH -j ULOG --ulog-prefix SSH_brute_force
    iptables -A INPUT -p tcp --dport 22 -m Status --state NEU -m aktuell --update --seconds 60 --hitcount 4 --rttl --name SSH -j DROP
    
  2. Wenn Sie mehr konfigurierbare Sikytion wünschen, können Sie verwendenFehler2BanoderDenyHostszum Analysieren von SSH-Protokollen und Blockieren verdächtiger IP-Adressen.

Antwort2

Die beste Vorgehensweise besteht darin, alle nicht benötigten Ports mit iptables zu blockieren und Ihr SSH so einzurichten, dass es einen privaten Schlüssel für die Anmeldung verwendet. Ich weiß, dass Putty und MobaXterm (beides kostenlose SSH-Clients) die Anmeldung mit privatem Schlüssel unterstützen. Entfernen Sie dann in Ihrer /etc/ssh/sshd_config die

PermitRootLogin yes

und füge hinzu:

PermitRootLogin without-password

Dies führt dazu, dass Sie sich nicht mit dem Root-Passwort anmelden können, auch wenn Sie es kennen.

Sie können die iptables-Regeln verwenden, um sie zu drosseln, damit sie Ihren Server nicht zusätzlich belasten

Antwort3

Installieren Sie die Software Denyhosts. Sie listet solche Hacker-IPs automatisch in hosts.deny auf. Das Paket ist im Epel-Repository verfügbar.

verwandte Informationen