Reicht das Festlegen eines sehr sicheren Kennworts aus, um ein SSH an Port 22 zu sichern?

8

Unter der Annahme, dass niemand mir das eigentliche Passwort stehlen kann, ist es praktisch zu 99,9% unmöglich, SSH zu verwenden, um in meinen Server einzudringen, auf dem SSH auf einem Standardport mit sehr starken Zeichen ausgeführt wird (24 Symbole mit Groß-, Kleinbuchstaben, Klammern, Unterstrichen, Dollar, Punkte usw. und keine Wörter in menschlicher Sprache) Passwort?

Ivan
quelle
2
Ich würde dies nicht als Antwort posten, da viele Leute aus irgendeinem Grund mit mir nicht einverstanden zu sein scheinen, aber das Ändern des Ports auf etwas Nicht-Standardes wird auch dazu beitragen, die Angriffsfläche zu verringern. Sie müssen natürlich das sichere Kennwort verwenden und den Server auf dem neuesten Stand halten, um echte Sicherheit zu gewährleisten. Dies hilft jedoch dabei, die allgemeinen Scans nach offenen Ports zu vermeiden.
Paul Kroon

Antworten:

3

Obwohl selten, gibt es immer noch 0-Tage-Exploits ... also weiß man es nie. Vielleicht können Sie den Zugriff auf Port 22 [auf Firewall-Ebene] nur auf wenige Hosts / Netzwerke beschränken?

oder vielleicht können Sie den Weg der Sicherheit durch die Dunkelheit gehen und das Klopfen von Ports implementieren ?

pQd
quelle
1
Ich denke, Portklopfen ist dann die beste Idee. Das Einschränken von Netzwerken / Hosts ist ein Gerüst, ich bin sehr mobil und neige dazu, verschiedene WLAN- und 3G-Netzwerke zu verwenden.
Ivan
8

Denken Sie daran, dass IHR Passwort möglicherweise sehr sicher ist, während andere Benutzer möglicherweise sehr schwache Passwörter haben. Setzen Sie AllowGroupsoder AllowUsersin /etc/ssh/sshd_config, um den SSH-Zugriff für andere Benutzer auszuschalten.

Denken Sie auch daran, dass Ihr Passwort möglicherweise zu sicher ist: Dieses Passwort wird mit ziemlicher Sicherheit notiert.

Trotzdem denke ich, dass du ziemlich sicher bist; Wenn Sie mit Portklopfen oder so kombinieren, sind Sie sehr sicher.

Moritz Beide
quelle
1
+1 für AllowUsers ... definitiv ein Plus.
Paul Kroon
1
Und für ein gutes Maß fügen Sie fail2ban
tegbains
4

Es hängt alles davon ab, wie schnell ein Angreifer auf Ihren TCP / 22-Port hämmern kann, um sich anzumelden. Wenn Sie solche wiederholten Verbindungen nicht verwenden, kann jedes Kennwort rechtzeitig erkannt werden. In diesem Fall wird die Zeit sehr lang sein. Monate ständiges Hämmern. In den SSH-Protokollen, durch die ich einen Spaziergang gemacht habe, habe ich wenig gerichtetes Hämmern gegen bestimmte Konten und viele Türklopfen gesehen, die nach schwachen Passwörtern suchten.

Sie können jedoch nicht davon ausgehen, dass alle Angreifer gelegentlich sind. Jemand, der sich speziell an Sie richtet, hat die Investition, mehrere Monate zu warten, um einzubrechen. Aus solchen Gründen wird Shared Key nach Möglichkeit bevorzugt. Es ist sehr wahrscheinlich, dass das von Ihnen beschriebene Passwort drei Neun ist, die nicht geknackt werden können (unter angemessenen zeitlichen Einschränkungen). Ich würde meinen Atem nicht für fünf Neun anhalten.

sysadmin1138
quelle
1
"Es hängt alles davon ab, wie schnell ein Angreifer auf Ihren TCP / 22-Port hämmern kann, um sich anzumelden. Wenn Sie nicht etwas verwenden, um solche wiederholten Verbindungen zu beenden" - Ist es heutzutage nicht standardmäßig in allen gängigen Distributionen eingerichtet?
Ivan
2
@ Ivan Enttäuschend, nein, ist es nicht. apt-get install denyhosts(debian based) pkg_add -r denyhosts(FreeBSD) ist eines der ersten Dinge, die auf einer frischen Box zu tun sind.
Pete
2
Nicht immer. Ubuntu hat es standardmäßig nicht und openSUSE oder Fedora / Centos auch nicht. Für alle drei gibt es vorgefertigte Pakete, aber Sie müssen positive Maßnahmen ergreifen, um sie zu aktivieren.
sysadmin1138
3

Verwenden Sie Denyhosts. Erwägen Sie auch die Verwendung eines schlüsselbasierten Logins anstelle eines Passwrods.

Pete
quelle
Ja, ich verwende einen Schlüssel (und mit einer guten, zufällig symbolischen Passphrase, die nur in meinem Kopf aufgeschrieben ist und deren Ablaufdatum sinnvoll ist). Es gibt jedoch noch ein Passwort für den Benutzer, das ich so festgelegt habe, wie ich es beschrieben habe.
Ivan
1

Das Verschieben von sshd auf einen nicht standardmäßigen Port wäre wahrscheinlich trivial, um Ihre Konfiguration zu erweitern, und würde wahrscheinlich 99% des ssh-Bot-Verkehrs eliminieren. Warum sollten Sie sich all den Brute-Force-Angriffen aussetzen, wenn Sie sich so leicht verstecken können? ;-);

Normalerweise empfehle ich außerdem, sshd so zu konfigurieren, dass nur die auf SSH-Schlüsselpaaren basierende Authentifizierung verwendet wird, wenn es dem Internet insgesamt ausgesetzt sein soll. Solange Sie Ihren privaten Schlüssel sicher aufbewahren, ist es für die Bösen fast unmöglich, sich beim Server zu authentifizieren.

Wie ein anderer Kommentator bereits betont hat, schützt dies Sie nicht vor 0-Tage-Exploits in sshd selbst. Es ist immer eine gute Idee, den Datenverkehr auf die Computer zu beschränken, die über Firewall-Regeln eine Verbindung herstellen müssen.

Patrick Heckenlively
quelle