Ich verwende Putty unter Windows mit schlüsselbasierter Authentifizierung, um auf einige meiner Minenserver zuzugreifen.
Mit ~ 3700-Bit-Schlüssel funktioniert es einwandfrei, aber mit ~ 17000-Bit-Schlüssel denkt es auf der Clientseite etwa 20 Sekunden lang und sagt dann einfach "Zugriff verweigert" und fragt nach einem Passwort.
Gibt es in OpenSSH ein Limit für die Schlüssellänge oder ein Zeitlimit für die schlüsselbasierte Authentifizierung?
Ich verstehe, dass die Verwendung so großer Tasten nicht viel praktischen Sinn hat, besonders wenn man sich diese 20 Sekunden der Berechnung ansieht und nur versucht, alle Probleme zu lösen, mit denen ich konfrontiert bin: -) ...
authentication
ssh
rsa
BarsMonster
quelle
quelle
Antworten:
Irgendwann habe ich in der OpenSSL-Quelle nach Diffie-Hellman-Schlüsseln gesucht und festgestellt, dass die Größe der DH-Schlüssel "willkürlich" auf 10 KB begrenzt ist. Ich habe die Quelle für einen Test geändert und festgestellt, dass dies funktioniert hat. Ich habe den Autoren einen Fehler geschrieben, und sie antworteten, es sei beabsichtigt, DoS durch die Verwendung massiver Schlüssel zu verhindern.
Würde mich nicht überraschen, etwas Ähnliches in OpenSSH zu sehen.
quelle
Im Protokoll ist keine maximale Schlüsselgröße oder Zeitlimit definiert (oder zumindest keine, die Sie treffen würden), aber eine Implementierung unterstützt möglicherweise nicht so lange Schlüssel. Eine Verarbeitungszeit von 20 Sekunden mit dem privaten Schlüssel klingt für einen 17-kbit-RSA-Schlüssel nicht hoch. Dann möchte der Server möglicherweise nicht zu viel Rechenleistung für einen nicht authentifizierten Benutzer ausgeben: Das Ablehnen sehr großer Schlüssel ist ein Schutz vor DoS-Angriffen.
Derzeit werden 2048 Bit für einen RSA-Schlüssel als angemessen angesehen. 4096 Bit sind höher als nötig, werden aber normalerweise unterstützt. Darüber hinaus sollten Sie sich nicht wundern, wenn einige Programme den Schlüssel ablehnen.
quelle
Konnten Sie diese Schlüsselgröße auf dem beabsichtigten Zielsystem generieren? Möglicherweise stoßen Sie auf ein Limit für das, was unterstützt wird. Das derzeitige Centos-System von mir unterstützt ein Maximum von 16 KB, was für massive Schlüssel ausreichend zu sein scheint. Sie sollten das Maximum sehen, wenn Sie versuchen, mit ssh-keygen darüber zu gehen, wie unten gezeigt.
quelle
Der openssh-Server verfügt über eine LoginGraceTime-Einstellung. Von der Manpage:
Dies könnte ein Limit sein, das Sie erreichen, wenn es auf 20 Sekunden eingestellt ist.
Wilde Vermutung: Es könnte auch sein, dass Putty selbst diese Grenze hat und denkt, dass etwas nicht stimmt, wenn die clientseitige Verarbeitung der Authentifizierung mit öffentlichem Schlüssel so lange dauert.
quelle