Ich bin sehr neu in der Netzwerkadministration. Bitte beachten Sie, dass ich noch nicht so erfahren bin.
Ich habe einen Ubuntu-Root-Server mit Plesk-Panel.
Gestern haben meine Freunde und ich festgestellt, dass die Sprachqualität auf unserem TS3 sehr schlecht geworden ist. Ich habe einige Pings an den Server gesendet und es ist ein sehr hoher Paketverlust aufgetreten. Danach habe ich ein bisschen gegoogelt und festgestellt, dass es eine gibt auth.log
. Ich habe es heruntergeladen und ein bisschen geblättert, dann habe ich folgendes gefunden:
May 13 10:01:27 rs204941 sshd[9351]: input_userauth_request: invalid user student [preauth]
May 13 10:01:27 rs204941 sshd[9351]: pam_unix(sshd:auth): check pass; user unknown
May 13 10:01:27 rs204941 sshd[9351]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=112.220.198.102
May 13 10:01:29 rs204941 sshd[9351]: Failed password for invalid user student from 112.220.198.102 port 39806 ssh2
May 13 10:01:29 rs204941 sshd[9351]: Received disconnect from 112.220.198.102: 11: Bye Bye [preauth]
May 13 10:01:31 rs204941 sshd[9353]: Invalid user student from 112.220.198.102
Es scheint, als hätte jemand mehrmals versucht, sich über SSH anzumelden. Ich habe ein wenig herumgescrollt und festgestellt, dass dieser Jemand versucht, viele verschiedene Benutzernamen zu verwenden:student, tech, psi, news,...
Hunderte dieser Anmeldungen wurden in der Datei angezeigt.
Ich habe die Verkehrsstatistik auf der Website meines Rechenzentrums nachgeschlagen. Es war nur bei 17 MB pro Stunde. Ich habe ein 100Mbit Backbone, daher scheint die Datenübertragung selbst nicht das Problem zu sein.
Im Moment kann ich auf keinen Fall auf den Server zugreifen.
Meine Frage ist: Wie bekomme ich wieder Zugang, wie kann ich diesen Angriff unterdrücken und nachfolgende Angriffe verhindern?
Antworten:
Es ist nicht klar, warum Sie nicht auf Ihr Konto zugreifen können.
Wenn Ihr Computer angegriffen wird oder stark ausgelastet ist, sollten Sie mit Ihrem Provider über die Einschränkung des Zugriffs (IP-Einschränkungen) oder das Deaktivieren des Servers (Trennen der Verbindung zum Internet) sprechen.
Möglicherweise benötigen Sie auch einen Out-of-Band-Zugriff, bei dem Ihr Anbieter möglicherweise helfen kann.
Wenn jemand Ihren Server kompromittiert hat, müssen Sie möglicherweise Backups wiederherstellen oder ein Wiederherstellungs-Image verwenden.
beste Weg, um Brute-Force-Anmeldungen zu verhindern?
Lassen Sie sie erst gar nicht an Ihre Maschine! Es gibt viele Möglichkeiten, Brute-Force-Versuche zu stoppen, bevor sie Ihren Host erreichen, oder sogar auf SSH-Ebene.
Trotzdem ist es eine großartige Idee, Ihr Betriebssystem mit so etwas wie fail2ban zu schützen. http://en.wikipedia.org/wiki/Fail2ban
Es gibt eine Reihe wichtiger Sicherheitstechniken, die Sie berücksichtigen sollten, um Brute-Force-Anmeldungen zu verhindern:
SSH:
Anwendung:
quelle
Normalerweise ändere ich den Standard-SSH-Port von 22 auf einen anderen wie 1122. Dadurch werden viele automatische Angriffe von Bot verhindert, aber ein einfacher Port-Scan kann dies erkennen. Sowieso:
und bearbeite Port 22 bis Port 1122 , aber das ist nicht genug.
Automatische IPTables-Regeln für Bruteforce
Ich verwende stattdessen log2iptables https://github.com/theMiddleBlue/log2iptables Fail2ban , da es sich um ein einfaches Bash-Skript handelt, das jede Protokolldatei mit einem regulären Ausdruck analysiert und iptables ausführt. Wenn zum Beispiel 5 Übereinstimmungen auftreten, löschen log2iptables die spezifische IP-Adresse. Es ist cool, weil Sie die Telegramm-API verwenden und mir eine Nachricht auf meinem Handy senden können, wenn er ein Problem findet :)
hoffe das wird helfen!
quelle
Ich habe das gerade zusammengestellt und alle 15 Minuten als Cronjob ausgeführt.
quelle
Dies ist meine alternative Lösung für SSH-Angriffe. Die Idee ist, den SSH-Daemon zu schließen, wenn er nicht verwendet wird. Kein offener Port kein Angriff. Du kannst es versuchen. Es ist Open Source https://github.com/indy99/nnet_port_guard
quelle
Automatisierte Lösung für Centos / RHEL zur Blockierung von schlechten Darstellern
Hier ist ein Skript für Centos, mit dem ssh-Anmeldefehler sowohl auf ungültige Benutzerkonten als auch auf ungültige Kennwörter für gültige Konten überprüft werden können. Wenn die Quell-IP uns mehr als dreimal getroffen hat und nicht bereits auf der Verweigerungsliste steht, wird sie der Verweigerungsliste hinzugefügt. Ich führe das alle 15 Minuten von Roots Crontab aus. Ich habe auch Root-Logins über ssh verboten, so dass die Kombination die Dinge ziemlich ruhig hält.
quelle
fail2ban
, das das Gleiche tut und kampferprobt ist.