GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Putty Kerberos/GSSAPI-Authentifizierung

Lösung 1:

Auf Windows-Computern, die Teil einer Active Directory-Domäne sind, erhalten Benutzer ihr Kerberos-Ticket-Granting-Ticket, wenn sie sich bei Windows anmelden, und PuTTY kann dieses zur Authentifizierung verwenden, wenn die GSSAPI-Authentifizierung in PuTTY Configuration Connection|SSH|Auth|GSSAPI aktiviert ist (und andere Authentifizierungsmethoden, die vor GSSAPI versucht werden, wie z. B. Public-Key über Pageant, werden in Connection|SSH|Auth nicht eingerichtet oder deaktiviert).

[Wenn Sie auch eine Ticketdelegierung benötigen (z. B. um kerberisierte Dateisysteme nach der Anmeldung auf dem Server zu mounten), stellen Sie sicher, dass die GSSAPI-Delegierung auch in PuTTY, und aktiviert ist Die Server, bei denen Sie sich anmelden, sind in Active Directory auf der Registerkarte „Delegierung“ als „Diesem Computer bei der Delegierung von Diensten vertrauen (nur Kerberos)“ gekennzeichnet ", was sie standardmäßig nicht sind. Diese letztgenannte Vertrauenseinstellung in AD wird seltsamerweise nur benötigt, damit die Delegierung von Windows-Clients wie PuTTY funktioniert; sie wird nicht für Linux-"ssh -K"-Clients benötigt.]

Auf selbstverwalteten (persönlichen) Windows-Rechnern, die nicht Teil einer Active-Directory-Domäne sind, können Sie die Kerberos/GSSAPI-Authentifizierung (und Ticket-Delegation) weiterhin über PuTTY verwenden, aber Sie müssen das Ticket selbst erhalten. Leider ist auf Windows 7 kein Äquivalent des kinit-Programms installiert (damit Sie manuell ein Ticket anfordern können), und PuTTY fordert Sie auch nicht zur Eingabe Ihres Kerberos-Passworts auf, wenn Sie kein Ticket haben. Daher müssen Sie das Paket MIT Kerberos für Windows installieren, das sowohl die üblichen Befehlszeilentools kinit/klist/kdestroy als auch ein nettes GUI-Tool "MIT Kerberos Ticket Manager" enthält. Verwenden Sie diese, um Ihr Ticket zu erhalten, und dann verwendet PuTTY automatisch die MIT GSSAPI-Bibliothek anstelle der Microsoft SSPI-Bibliothek, und alles sollte funktionieren. Wenn der "MIT Kerberos Ticket Manager" läuft, werden Sie automatisch nach Ihrem Kerberos-Passwort gefragt, wenn PuTTY ein Ticket benötigt, daher ist es eine gute Idee, es aus dem Autostart-Ordner zu verlinken.

Lösung 2:

Überprüfen Sie zunächst, ob Ihre klist-Ausgabe auf der Windows-Box, auf der PuTTY ausgeführt wird, ein gültiges TGT anzeigt. Stellen Sie dann in der Konfiguration für Ihre PuTTY-Sitzung sicher, dass Sie GSSAPI-Authentifizierung versuchen ist in Connection - SSH - Auth - GSSAPI aktiviert . Stellen Sie schließlich sicher, dass es so konfiguriert ist, dass es sich automatisch mit Ihrem Benutzernamen in Connection - Data anmeldet . Sie können den Benutzernamen entweder explizit angeben oder das Optionsfeld für Systembenutzernamen verwenden auswählen .

In der Vergangenheit war das alles, was ich tun musste, damit die passwortlose SSH-Anmeldung über Kerberos funktioniert.

Lösung 3:

Das Problem lag im Windows-Kerberos-Setup. Ich denke, unser Active Directory ist verrückt eingerichtet, ich weiß nicht wirklich, ob ich kein Windows-Administrator bin.

Aber ich habe das Problem behoben, indem ich Kerberos manuell mit ksetup in der Windows 7 CLI konfiguriert habe.

Nach einem Neustart meiner Remote-Workstation konnte ich mich nicht bei meinem PC anmelden. Das liegt daran, dass in der ursprünglichen Konfiguration der TLD-Teil meiner Bereichsdomäne immer fehlte (Domäne\Benutzer), aber nachdem ich ihn manuell konfiguriert hatte, musste ich meine Anmeldedomäne ändern, um den vollständigen Bereichsdomänennamen (Domäne.TLD\Benutzer) widerzuspiegeln, und Ich konnte mich bei meinem Windows-PC anmelden, obwohl die Authentifizierung jetzt länger zu dauern scheint.

Vor den Änderungen zeigte die Ausgabe von ksetup nur meinen Standardbereich, und zwar in Kleinbuchstaben.

Ich habe " nslookup -type=SRV _kerberos._tcp.domain.TLD " verwendet, um alle kdc-Server für meinen Bereich abzurufen.

Ich habe keine Flags gesetzt.

Ich habe meinen Benutzernamen " ksetup /mapuser [email protected] user "

zugeordnet

Von mir verwendete Ressourcen:https://wiki.ncsa.illinois.edu/display/ITS/Windows+7+Kerberos+Login+using+External+Kerberos+KDC

https://www.cgl.ucsf.edu/Security/CGLAUTH/CGLAUTH.html

Wenn jemand irgendwelche Vorschläge hat, die ich den Windows-Administratoren geben kann, wie sie das beheben können (ist es kaputt?), werde ich es weitergeben.


Linux
  1. Mit Putty scp von Windows nach Linux

  2. sshpass wird unter Windows nicht erkannt

  3. Authentifizieren Sie sich mit pyodbc von Linux zu Windows SQL Server

  4. Putty 0.61:Warum sehe ich die Meldung "Zugriff verweigert", nachdem ich meine Anmelde-ID eingegeben habe?

  5. Benötigen Linux-Server, die AD/Kerberos zur Authentifizierung/Autorisierung verwenden, Computerkonten?

So installieren Sie Python 3 unter Windows 10

8 beste PuTTY-Alternativen

Kerberos5

Ändern Sie die Textgröße in Putty dauerhaft / Windows / Linux / FreeBSD

10 PuTTY PLINK-Beispiele zur Automatisierung von Remote-Linux-Befehlen aus Windows-Stapeldateien

Linux vs. Windows-Sicherheit