SSH Server unter Windows und authorized keys funktioniert nicht
Hallo Community,
ich benötige Hilfestellung bei einem SSH vorhaben und hoffe, das jemand mir helfen kann und ich meinen Beitrag im richtigem Bereich habe!
Zur Situation:
Ich benötige einen SSH Zugang von einem AIX System nach Windows um Dateien auf dem Windows Server in einen Ordner abzulegen.
Der Zugang soll mit einem generierten Schlüssel ohne Passwortabfrage funktionieren, da sich das System automatisiert anmeldet.
Was bisher geschah:
Als Vorbereitung habe ich in den System Variablen unter Path den Pfad von OpenSSH-Win64 hinzugefügt.
Zusätzlich habe ich unter %ProgramData% den Ordner ssh erstellt.
Der SSH Service wurde mit folgenden Parametern installiert und die Schlüssel erzeugt:
.\install-sshd.ps1
.\ssh-keygen.exe -A
Alle Schlüssel wurden erfolgreich erstellt!
Nachdem ich auch die ssh_config_default in den Ordner %ProgramData%/ssh kopiert und auf ssh_config umbenannt habe, führte ich das Script aus um die Permissions zu reparieren:
Powershell.exe -ExecutionPolicy Bypass -Command '..\FixHostFilePermissions.ps1 -Confirm:$false'
Alle Permissions wurden repaired und es kam bei allen Dateien ein Successfull.
Als nächstes habe ich eine authorized_keys.pub erstellt und den generierten Schlüssel dort eingetragen. Alles in einer Zeile:
ssh-rsa AAAAB3N.............. user@test
Die authorized_keys.pub file habe ich dann unter den Pfad des Users abgelegt der sich anmelden soll: C:\Users\User\ssh\authorized_keys
Hier habe ich folgende Permissions überprüft:
System
Administartoren
User
Am AIX System wurde der Key ebenfalls ordnungsgemäß abgelegt!
In der ssh_config File im Pfad: %ProgramData%/ssh/ habe ich die Werte:
#PasswordAuthentication yes
#PermitEmptyPasswords no
in folgende Werte geändert:
PasswordAuthentication yes
PermitEmptyPasswords yes
Zu allerletzt habe ich in der Windows Firewall den Port 22 freigegeben!
Problem:
Wenn ich mich jetzt vom AIX System aus am Windows Server anmelden möchte, funktioniert der SSH Dienst zwar, allerdings benötige ich trotzdem ein Passwort um mich anzumelden!
Kann mir vielleicht jemand auf die Sprünge helfen wo ich einen Fehler gemacht habe ?
Vielen Dank im voraus!
VG
Stew
ich benötige Hilfestellung bei einem SSH vorhaben und hoffe, das jemand mir helfen kann und ich meinen Beitrag im richtigem Bereich habe!
Zur Situation:
Ich benötige einen SSH Zugang von einem AIX System nach Windows um Dateien auf dem Windows Server in einen Ordner abzulegen.
Der Zugang soll mit einem generierten Schlüssel ohne Passwortabfrage funktionieren, da sich das System automatisiert anmeldet.
Was bisher geschah:
Als Vorbereitung habe ich in den System Variablen unter Path den Pfad von OpenSSH-Win64 hinzugefügt.
Zusätzlich habe ich unter %ProgramData% den Ordner ssh erstellt.
Der SSH Service wurde mit folgenden Parametern installiert und die Schlüssel erzeugt:
.\install-sshd.ps1
.\ssh-keygen.exe -A
Alle Schlüssel wurden erfolgreich erstellt!
Nachdem ich auch die ssh_config_default in den Ordner %ProgramData%/ssh kopiert und auf ssh_config umbenannt habe, führte ich das Script aus um die Permissions zu reparieren:
Powershell.exe -ExecutionPolicy Bypass -Command '..\FixHostFilePermissions.ps1 -Confirm:$false'
Alle Permissions wurden repaired und es kam bei allen Dateien ein Successfull.
Als nächstes habe ich eine authorized_keys.pub erstellt und den generierten Schlüssel dort eingetragen. Alles in einer Zeile:
ssh-rsa AAAAB3N.............. user@test
Die authorized_keys.pub file habe ich dann unter den Pfad des Users abgelegt der sich anmelden soll: C:\Users\User\ssh\authorized_keys
Hier habe ich folgende Permissions überprüft:
System
Administartoren
User
Am AIX System wurde der Key ebenfalls ordnungsgemäß abgelegt!
In der ssh_config File im Pfad: %ProgramData%/ssh/ habe ich die Werte:
#PasswordAuthentication yes
#PermitEmptyPasswords no
in folgende Werte geändert:
PasswordAuthentication yes
PermitEmptyPasswords yes
Zu allerletzt habe ich in der Windows Firewall den Port 22 freigegeben!
Problem:
Wenn ich mich jetzt vom AIX System aus am Windows Server anmelden möchte, funktioniert der SSH Dienst zwar, allerdings benötige ich trotzdem ein Passwort um mich anzumelden!
Kann mir vielleicht jemand auf die Sprünge helfen wo ich einen Fehler gemacht habe ?
Vielen Dank im voraus!
VG
Stew
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 390347
Url: https://administrator.de/contentid/390347
Ausgedruckt am: 25.11.2024 um 00:11 Uhr
20 Kommentare
Neuester Kommentar
Du musst nicht jedem User hier in Einzelthreads mit Minutenabstand antworten ! Mit einen "@" davor geht das auch platzsparend in einem !
Ein paar hilfreiche Infos zu dem Thema findet man auch hier:
https://www.heise.de/ct/ausgabe/2015-4-Dienste-sicher-ins-Netz-bringen-2 ...
https://www.heise.de/ct/ausgabe/2018-14-Verbindungen-mit-SSH-verschluess ...
Ein paar hilfreiche Infos zu dem Thema findet man auch hier:
https://www.heise.de/ct/ausgabe/2015-4-Dienste-sicher-ins-Netz-bringen-2 ...
https://www.heise.de/ct/ausgabe/2018-14-Verbindungen-mit-SSH-verschluess ...
Hallo,
wenn du den SSH Daemon für die Authentifizierung mit Public/Private Key eingerichtet hast und du beim Anmelden mit dem privaten Schlüssel dennoch nach einem Passwort gefragt wirst, bedeutet das, dass der SSH Daemon auf den öffentlichen Schlüssel nicht zugreifen kann. Entweder falsche Berechtigungen, falscher Pfad in der SSHD Konfiguration eth. Oder du nutzt einen falschen privaten Schlüssel. Genaueres kann dir das SSHD Auth Log sagen.
Was steht in der SSHD Config bei AuthorizedKeysFile?
Ist der öffentliche Schlüssel in diesem Pfad hinerlegt?
Welche Berechtigung hast du dem öffentlichen Schlüssel vergeben?
Was sagen die SSH Auth Logs?
P.S. Bitte verwende zukünftig die Code Tags für Quelltext, Konfigurationen eth. Dann wird das deutlich übersichtlicher.
Außerdem kann man Beiträge nachträglich editieren.... ;)
Viele Grüße,
Exception
wenn du den SSH Daemon für die Authentifizierung mit Public/Private Key eingerichtet hast und du beim Anmelden mit dem privaten Schlüssel dennoch nach einem Passwort gefragt wirst, bedeutet das, dass der SSH Daemon auf den öffentlichen Schlüssel nicht zugreifen kann. Entweder falsche Berechtigungen, falscher Pfad in der SSHD Konfiguration eth. Oder du nutzt einen falschen privaten Schlüssel. Genaueres kann dir das SSHD Auth Log sagen.
Was steht in der SSHD Config bei AuthorizedKeysFile?
Ist der öffentliche Schlüssel in diesem Pfad hinerlegt?
Welche Berechtigung hast du dem öffentlichen Schlüssel vergeben?
Was sagen die SSH Auth Logs?
P.S. Bitte verwende zukünftig die Code Tags für Quelltext, Konfigurationen eth. Dann wird das deutlich übersichtlicher.
Außerdem kann man Beiträge nachträglich editieren.... ;)
Viele Grüße,
Exception
Was sagen die SSH Auth Logs? Leider steht dort nichts drin,
Das kann unmöglich sein und kann nur 2 Ursachen haben !- Die lokale Firewall blockt vollständig Port TCP 22 Zugriffe auf den SSH Daemon so das gar kein Verbindungsversuch ankommt !
- Das Logging ist in der Konfig Datei explizit ausgeschaltet.
Sie lässt per Default auch keine Verbindungen aus anderen IP Netzen zu, nur vom lokalen. Auch das solltest du genau überprüfen !
Nicht normal ist das keinerlei Logs geschrieben werden. Das ist höchst unüblich bei einem SSH Daemon und zeigt das da irgendwas mau ist.
Ggf. liest er wie vermutet die Konfig Datei gar nicht ein und startet mit irgendeiner Default Konfig.
Das würde dann auch das Ignorieren der Keys erklären.
Es gäbe ja noch einen Workaround...
Sofern der AIX Samba supportet startest du da einen Samba Client und machst eine SMB/CIFS Verbindung auf einen Share des Winblows Servers.
Das geht aber nur wenn du dich im lokalen Netzwerk bewegst, da unverschlüsselt. Sofern du über öffentliche- oder fremde Netze gehst ist das natürlich dann ein sofortiges NoGo !
Es muss aber natürlich auch mit SSH sprich SCP funktionieren !!
Kannst du testweise mal einen Raspberry Pi oder anderen Testrechner mit unixoidem OS einrichten und den Zugang mit Keys mal darauf testen ?
Wenn das fehlerfrei klappt, was es auf Anhieb sollte, dann weisst du ganz sicher das der Fehler in der SSHd Konfig des Winblows Rechners liegt
Ggf. liest er wie vermutet die Konfig Datei gar nicht ein und startet mit irgendeiner Default Konfig.
Das würde dann auch das Ignorieren der Keys erklären.
Es gäbe ja noch einen Workaround...
Sofern der AIX Samba supportet startest du da einen Samba Client und machst eine SMB/CIFS Verbindung auf einen Share des Winblows Servers.
Das geht aber nur wenn du dich im lokalen Netzwerk bewegst, da unverschlüsselt. Sofern du über öffentliche- oder fremde Netze gehst ist das natürlich dann ein sofortiges NoGo !
Es muss aber natürlich auch mit SSH sprich SCP funktionieren !!
Kannst du testweise mal einen Raspberry Pi oder anderen Testrechner mit unixoidem OS einrichten und den Zugang mit Keys mal darauf testen ?
Wenn das fehlerfrei klappt, was es auf Anhieb sollte, dann weisst du ganz sicher das der Fehler in der SSHd Konfig des Winblows Rechners liegt