Der Server, den ich benutze, ist Ubuntu 10.10. Aus Sicherheitsgründen möchte ich das Banner bearbeiten, das der Server an den Client sendet.
Wenn ich über Port 22 zu meinem Host telnete, wird mir die genaue Version von SSH angezeigt, die ich verwende (SSH-2.0-OpenSSH_5.3p1 Debian-3ubuntu4). Bei MySQL und Cyrus ist die Situation dieselbe.
Irgendwelche Vorschläge? Zumindest für SSH?
Vielen Dank
Antworten:
Fast überall sind identifizierende Banner Teil des kompilierten Codes und haben keine Konfigurationsoptionen, um sie zu ändern oder zu unterdrücken. Sie müssen diese Softwareteile neu kompilieren.
quelle
Während es unglaublich schwierig ist, die Versionsnummer Ihres SSH-Daemons zu verbergen, können Sie die Linux-Version (Debian-3ubuntu4) einfach verbergen.
Fügen Sie die folgende Zeile hinzu
/etc/ssh/sshd_config
Und starten Sie Ihren SSH-Daemon neu:
/etc/init.d/ssh restart
oderservice ssh restart
quelle
Das Ausblenden dieser Dateien sichert Ihren Server nicht. Es gibt noch viele weitere Möglichkeiten, Fingerabdrücke von dem zu erstellen, was auf Ihrem System ausgeführt wird. Insbesondere für SSH ist die Versionsankündigung Teil des Protokolls und erforderlich.
http://www.snailbook.com/faq/version-string.auto.html
quelle
Ich bin mir ziemlich sicher, dass Sie die Versionsankündigung nicht ändern können.
Die besten Möglichkeiten zum Sichern von sshd sind:
Die ersten drei können durch Ändern von / etc / sshd_config durchgeführt werden
Die vierte hängt davon ab, welche Firewall-Software Sie verwenden.
quelle
Wie oben gesagt, ist das Ändern einer Versionsnummer
Ich schlage vor, Port Knocking zu implementieren. Es ist eine ziemlich einfache Technik, um alles zu verbergen, was auf Ihrem Server läuft.
Hier ist eine gute Implementierung: http://www.zeroflux.org/projects/knock
So habe ich es auf meinen Servern (andere Nummern) implementiert, um SSH nur für die Personen zu öffnen, die das Geheimnis kennen:
Dies ergibt ein Fenster von 5 Sekunden, in dem die 3 SYN-Pakete in der richtigen Reihenfolge empfangen werden müssen. Wählen Sie Ports, die weit voneinander entfernt und nicht sequentiell sind. Auf diese Weise kann ein Portscanner den Hafen nicht versehentlich öffnen. Diese Ports müssen nicht von iptables geöffnet werden.
Das Skript, das ich aufrufe, ist dieses. Es öffnet einen bestimmten Port für 5 Sekunden für die IP, die die SYN-Pakete sendet.
Es kann sehr schmerzhaft sein, die SYN-Pakete zu senden, daher verwende ich das Skript, um eine Verbindung zum SSH meiner Server herzustellen:
(Es ist ziemlich offensichtlich, was hier passiert ...)
Nachdem die Verbindung hergestellt wurde, kann der Port geschlossen werden. Tipp: Verwenden Sie die Schlüsselauthentifizierung. Andernfalls müssen Sie sehr schnell sein, um Ihr Passwort einzugeben.
quelle