Gibt es einen Vorteil beim Ändern des SSH-Ports? Ich habe Leute gesehen, die das getan haben, aber ich kann den Grund dafür nicht finden.
Wenn Sie ein sicheres Passwort und/oder ein Zertifikat haben, ist es für irgendetwas nützlich?
Bearbeiten:
Ich sollte auch erwähnen, dass ich iptables-Regeln verwende, um Brute-Forcing-Angriffe zu begrenzen. Pro Minute und IP-Adresse sind nur 5 Anmeldeversuche zulässig.
Das Internet ist ein wilder und beängstigender Ort voller Unzufriedener, deren Motive von Neugier bis hin zu kriminellen Unternehmungen reichen. Diese Unappetitlichen suchen ständig nach Computern, auf denen Dienste ausgeführt werden, die sie nutzen möchten. In der Regel die gängigsten Dienste wie SSH, HTTP, FTP usw. Die Scans fallen normalerweise in eine von zwei Kategorien:
Wenn man bedenkt, wie groß das Internet ist, ist es normalerweise nicht möglich, an jedem Port jeder IP-Adresse nachzusehen, was überall zuhört. Dies ist der Kern des Ratschlags, Ihren Standardport zu ändern. Wenn diese unzufriedenen Personen SSH-Server suchen möchten, prüfen sie jede IP-Adresse an Port 22 (sie können auch einige gängige Alternativen wie 222 oder 2222 hinzufügen). Sobald sie ihre Liste der IP-Adressen mit geöffnetem Port 22 haben, starten sie ihre Brute Force für das Erraten von Benutzernamen/Passwörtern oder starten das Exploit-Kit ihrer Wahl und testen bekannte (zumindest für sie) Schwachstellen auf dem Zielsystem.
Dies bedeutet, dass Sie, wenn Sie Ihren SSH-Port auf 34887 ändern, von diesem Sweep weitergeleitet werden, was wahrscheinlich dazu führt, dass Sie nicht vom nachfolgenden Einbruch betroffen sind.
Scheint rosig, oder? Es gibt jedoch einige Nachteile.
/etc/hosts
Bis zum Schreiben in eine bestimmte Datei oder dem Senden eines Pakets im Netzwerk reichen. Abhängig von der Konfiguration dieses Systems kann sshd
standardmäßig die Bindung an einen nicht standardmäßigen Port untersagt werden. Sie müssten eine lokale Richtlinie pflegen, die dies zulässt.Bevor Sie Ihren Port ändern, müssen Sie all dies berücksichtigen, damit Sie wissen, dass Sie die beste Entscheidung treffen. Einige dieser Nachteile gelten möglicherweise nicht, andere jedoch mit Sicherheit. Überlegen Sie auch, wovor Sie sich schützen möchten. Oft ist es einfach einfacher, Ihre Firewall so zu konfigurieren, dass nur von bestimmten Hosts aus auf 22 zugegriffen werden kann, im Gegensatz zum gesamten Internet.
Ja, dies kann nicht durch Erhöhen der Sicherheit geschehen, sondern Sie können die Anzahl der fehlgeschlagenen Anmeldeversuche auf Ihrem Server verringern. Ich ändere immer mein Standard-SSH, um die Warnungen zu reduzieren, die ich von ossec erhalte. Auch wenn Sie einen wirklich zufälligen Port verwenden und immer noch jemand versucht, auf Ihren Computer zuzugreifen, ist die Wahrscheinlichkeit höher, dass es sich eher um einen gezielten Angriff als um einen zufälligen Scanner handelt.
Wie bereits erwähnt, ist es unwahrscheinlicher, wenn SSH an einem anderen Port als 22 angeschlossen wird, wenn ein zufälliger Scan durchgeführt wird. Sie werden ins Visier genommen, wenn der Angreifer versucht, Ihren Server zu erhalten, keinen Server.
Ich habe einen Server mit ssh
, der an einen zufälligen hohen Port gebunden ist. Und ich habe einen SSH-Honeypot an Port 22, der auf jeden Anmeldeversuch mit der Meldung "Zugriff verweigert" antwortet.
Ich denke nicht, dass es ein Verteidigung durch Dunkelheit ist, aber Verteidigung in der Tiefe: Um meinen Server anzugreifen, muss der Angreifer zuerst den Port finden. Wenn ich ein paar gefälschte Honeypots habe (viele Ports, die zum selben Honeypot umleiten), trifft der Angreifer viele Fakes und kann nicht wissen, ob er den echten SSH getroffen hat oder nicht.
Es ist jedoch nur die Verteidigung. Ich habe auch portsentry
aktiv. Wenn also jemand einen Portscan versucht, wird er für eine Stunde blockiert. Wenn sie das Passwort auf dem rechten SSH brutal erzwingen, erhalten sie für eine Stunde "Zugriff verweigert". Wenn sie das Passwort erfolgreich erraten haben, wird ihnen eine PAM-Eingabeaufforderung angezeigt, in der sie nach dem Google Auth-Token gefragt werden.
Die Kosten für den Hafenwechsel sind sehr gering, und ich denke, die Nachteile sind durch die Vorteile gerechtfertigt.
Da fast jeder hauptsächlich von Nachteilen spricht (die real sind), möchte ich hier einige Vorteile teilen:
sie möchten wirklich automatisierte Angriffe vermeiden. Sofern Sie kein hochkarätiger Benutzer sind, richtet sich die überwiegende Mehrheit der Angriffe nicht gegen Sie, sondern gegen automatisierte Best-Effort-Angriffe, bei denen nur Standardports ausprobiert werden. Das Vermeiden hilft auf verschiedene Weise:
was auch immer der Angreifer nicht erwartet, es schaltet ihn entweder immer vollständig aus, schafft mehr Arbeit für ihn oder macht Sie zu einem weniger interessanten Ziel. Außerdem erhöht sich Ihre Zeit zum Erkennen und Verteidigen von Angriffen.
für die Ausführung auf Port> 1024 muss sshd nicht als Root ausgeführt werden. Dies ermöglicht die Ausführung von nur einem Benutzer, für den es benötigt wird, wodurch eine ganze Klasse von Fehlern vermieden wird (dies gilt auch dann, wenn einige sshd-Implementierungen besonders darauf achten, mit reduzierten Berechtigungen ausgeführt zu werden wenn nicht benötigt).
Ich nehme an, es hängt davon ab, wie schnell Sie Ihren Server patchen werden und ob Sie irgendeine Art von Firewall vor dem Server haben.
Wenn Sie den Server für die Welt offen lassen und nichts eingerichtet haben, um Sie zu benachrichtigen oder OpenSSH-Patches automatisch zu installieren, würde ich empfehlen, den Server auf einen zufälligen Port mit hoher Nummer zu verschieben.
Letztendlich schreckt das Verschieben der Portnummer nicht alle ab, aber es schreckt die Skriptkinder ab, die nur Port 80, 22, 23 usw. überprüfen, aber nicht, wenn jemand einen 1-65535-Scan durchführen würde.
Durch Ändern des Ports werden nur automatische Angriffe auf Ihr SSH und einige Skriptkinder gestoppt. Wenn jemand auf Sie zielte, konnte er den neuen SSH-Port in Ordnung bringen. Der Vorteil ist, dass fehlgeschlagene Anmeldeversuche in Ihren Protokollen gestoppt werden. Ich habe normalerweise so etwas wie Logwatch und SSH auf einem anderen Port, auf dem PasswordAuthentication in meiner sshd_config auf no gesetzt ist.
Wie andere bereits bemerkt haben, bringt Ihnen das Ändern des Standard-SSH-Ports aus Sicherheitsgründen nicht viel. Dies kann jedoch weiterhin von Vorteil sein, wenn Sie beabsichtigen, über ein Netzwerk, in dem die Administratoren Port 22 gesperrt haben, eine Verbindung zum Computer herzustellen. (Viele Schulen, Arbeitsplätze und kostenlose WLAN-Hotspots blockieren den gesamten ausgehenden Datenverkehr mit Ausnahme des Standardverkehrs DNS-, HTTP- und HTTPS-Ports.) In diesem Fall können Sie beim Ändern Ihres SSH-Ports auf 53, 80 oder 443 (oder wenn Ihr Router einen dieser Ports an 22 weiterleitet) normalerweise beim Lernen/Arbeiten/auf Ihren Computer ssh. Reisen.
In seltenen Fällen blockieren diese Netzwerke möglicherweise nicht nur Ports, sondern untersuchen auch den Datenverkehr, um SSH-Verbindungen herauszufiltern. Für diese Situation müssen Sie andere Alternativen untersuchen .
Dies ist eine philosophische Frage: "Ist Kontrolle X hilfreich?" Und wie die beste Antwort zeigte, sollten Sie auch überlegen, "wie hoch sind die Kosten (Client-Support, Ausnahmeregelungen für Dokumente, System-Support, Überwachungs-Support und direkte Kosten, Lizenzkosten usw.) für Control X?"
In bestimmten Kontexten ist alles hilfreich. Es ist eine gute Idee, sich zu fragen, in welchem Kontext Sie sich befinden. Manchmal handelt es sich um einen Compliance-Kontext. Sie setzen Control X ein, um eine bestimmte Anforderung zu erfüllen. "Ich muss meinen SSH-Port verschieben, weil die Systemrichtlinie Listener auf Port 22 verbietet." Führen Sie dann entweder eine Ausnahme aus oder arbeiten Sie daran, die Richtlinie zu ändern. [Das wäre imho eine unkluge Politik.]
Hier lautet der Kontext wahrscheinlich: "Ich bin ein zufälliger Typ mit einem Host in einem unkontrollierten Netzwerk und möchte nicht die Kontrolle über meine Box verlieren." Angriffe haben immer eine Ermittlungsphase. Wenn die Untersuchung "Senden Sie eine SYN an Port 22 und sehen Sie, wer antwortet" lautet, schützen Sie sich vor diesem bestimmten Bedrohungsvektor. (Wenn die Untersuchung lautet "Führen Sie einen Port-Sweep durch, sammeln Sie Banner und prüfen Sie, ob etwas Interessantes auftaucht", hat Ihre Kontrolle keine Auswirkungen.) Aber jetzt haben Sie viel Arbeit für sich selbst geleistet - wenn Sie ein Tool verwenden Um eine Verbindung zum Server herzustellen, müssen Sie herausfinden, wie Sie an diesem nicht standardmäßigen Port arbeiten - und mit einigen Tools ist dies möglicherweise nicht einmal möglich. Alles in allem und in diesem Zusammenhang würde ich nicht empfehlen, die Ports zu wechseln.
Ein festgestellter Vorteil war die Reduzierung von Protokollereignissen, die mit falsch positiven Ergebnissen verbunden sind. Ich finde das eigentlich negativ! Der stetige Strom eingehender Angriffe auf Port 22 kann tatsächlich hilfreich sein. Wenn sie aufhören, wissen Sie, dass ein Problem mit Ihrem Internet-Feed vorliegt. Ich denke, der wahrgenommene Vorteil ist falsch - die richtige Antwort besteht darin, Ihr Anomalieerkennungssystem so einzustellen, dass erfolglose Anmeldeversuche aus externen Netzwerken herausgefiltert werden.