
Eine vorgeschlagene Abhilfestrategie gegenStau-bezogene Angriffe auf SSH bestehen in der Generierung benutzerdefinierter SSH-Diffie-Hellman-Gruppen mithilfe von etwas wie (das Folgende gilt für OpenSSH):
ssh-keygen -G moduli-2048.candidates -b 2048
ssh-keygen -T moduli-2048 -f moduli-2048.candidates
gefolgt vom Ersetzen der systemweiten Moduldatei durch die Ausgabedatei moduli-2048
. ( ssh-keygen -G
wird verwendet, um Kandidaten für DH-GEX-Primzahlen zu generieren und ssh-keygen -T
die generierten Kandidaten auf Sicherheit zu testen.)
Dies ist ganz klar eine sinnvolle Vorgehensweise auf SSH-Servern, die sonst bekannte Gruppen verwenden würden, die sich gut für die Vorberechnung eignen, aberGibt es Sicherheitsvorteile bei der Bereitstellung benutzerdefinierter SSH-DH-Gruppen auf Nur-Client-Systemen?(Das heißt, Systeme, die eine Verbindung zu SSH-Servern herstellen, aber selbst nie als SSH-Server fungieren.)
Ich bin in erster Linie an Antworten zu OpenSSH unter Linux interessiert, bin aber auch für allgemeinere Antworten dankbar.
Antwort1
Sie können, wenn Sie wirklich wollen, aber ich würde mir nicht die Mühe machen, 2048-Bit-DH-Parameter für OpenSSH neu zu generieren. Es gibt viel wichtigere Dinge, die Sie tun müssentun, um SSH zu sichern, wie das Deaktivieren schwacher Verschlüsselung.
Was ichwürdeSie müssen lediglich die vorhandenen löschen, die kleiner als 2048 Bit sind.
awk '$5 >= 2000' /etc/ssh/moduli > /etc/ssh/moduli.strong && \
mv /etc/ssh/moduli.strong /etc/ssh/moduli
Falls Sie es noch nicht bemerkt haben: OpenSSH wird mit einer großen Anzahl vorgenerierter Moduli ausgeliefert, bis hin zu 8192 Bit. Während uns 1024-Bit-Primzahlen heute sicherlich Sorgen bereiten, gelten 2048-Bit-Primzahlen auf absehbare Zeit als sicher. Und obwohl sich das irgendwann ändern wird, könnte es nächste Woche passieren, aber wahrscheinlicher ist, dass es lange nach unserer Pensionierung passieren wird …
Es gibt außerdem diesen merkwürdigen Teil in der ssh-keygen
Manpage:
Es ist wichtig, dass diese Datei Moduli mit unterschiedlichen Bitlängen enthält und dass beide Enden einer Verbindung gemeinsame Moduli haben.
Dies scheint gegen den Austausch bestehender Module zu sprechen, liefert jedoch nicht wirklich den eigentlichen Grund dafür.
Antwort2
Die Antwort ist: Nein. Es gibt keine Vorteile. :)
/etc/ssh/moduli
Datei wird nur für die Serverseite verwendet.
Für die SSH-Clientseite müssen Sie sich um diese Datei keine Gedanken machen:
Sie können die Ausführung des SSH-Clients verfolgen und überprüfen, dass er die Datei nicht öffnet.
$ strace -e openat ssh user@localhost