fisistew
Goto Top

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
firewall
keygen
ordner programdata ssh
programdata ssh
permissions2
permissions1
system variable
install ssh
permissions user
user ssh

Content-ID: 390347

Url: https://administrator.de/contentid/390347

Ausgedruckt am: 25.11.2024 um 00:11 Uhr

certifiedit.net
certifiedit.net 23.10.2018 um 11:41:40 Uhr
Goto Top
Hast du den SSH-Key mit Password generiert?
FISIStew
FISIStew 23.10.2018 um 11:43:01 Uhr
Goto Top
Hallo certifiedit.net,

Nein, dieser wurde ohne Passwort generiert!
SlainteMhath
SlainteMhath 23.10.2018 um 11:45:20 Uhr
Goto Top
Moin,

wenn das der Namensgebung unter Linux folgt, dann muss die Config Datei

sshd_config

benannt werden

lg,
Slainte
aqui
aqui 23.10.2018 um 11:52:44 Uhr
Goto Top
...und der SSH Daemon natürlich neu gestartet werden face-wink
FISIStew
FISIStew 23.10.2018 um 11:54:53 Uhr
Goto Top
wenn das der Namensgebung unter Linux folgt, dann muss die Config Datei

sshd_config

benannt werden



Hallo Slainte, ich werde es testen face-smile
FISIStew
FISIStew 23.10.2018 um 11:55:41 Uhr
Goto Top
...und der SSH Daemon natürlich neu gestartet werden face-wink


Hallo aqui, diesen habe ich neugestartet! face-wink
aqui
aqui 23.10.2018 aktualisiert um 12:20:39 Uhr
Goto Top
Du musst nicht jedem User hier in Einzelthreads mit Minutenabstand antworten ! Mit einen "@" davor geht das auch platzsparend in einem ! face-wink
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 ...
129580
129580 23.10.2018 aktualisiert um 12:57:49 Uhr
Goto Top
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
FISIStew
FISIStew 23.10.2018 um 13:48:57 Uhr
Goto Top
@SlainteMhath
Sry, hier habe ich nur das d vergessen beim beschreiben ;)

@129580
Was steht in der SSHD Config bei AuthorizedKeysFile?
.ssh/authorized_keys
Ist der öffentliche Schlüssel in diesem Pfad hinerlegt?
ich habe nur den generierten Schlüssel in meine neu erstellte authorized_keys hinterlegt, ansonsten befindet sich nichts anderes in diesem Ordner ssh unter dem Usernamen
Welche Berechtigung hast du dem öffentlichen Schlüssel vergeben?
Owner, Adminstrator, System (wurde durch das PS Script repaired)
Was sagen die SSH Auth Logs?
Leider steht dort nichts drin, der Ordner Log ist leer trotz Verbindungsversuchen.
Vom AIX System bekomme ich
debug1: No more authentication methods to try.
Permission denied (publickey, keyboard-interactive)
lost connection


Jetzt wollte ich meinen Beitrag bearbeiten mit Screenshots, aber wird nicht zugelassen, da zuviel bearbeitet wird!
Nun habe ich mal einfach die Screenshots so angehängt.
aqui
aqui 23.10.2018 um 16:33:15 Uhr
Goto Top
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.
Bei Winblows Maschinen steht zu befürchten das es ersteres ist...! Dann musst du die Firewall entsprechend customizen.
Sie lässt per Default auch keine Verbindungen aus anderen IP Netzen zu, nur vom lokalen. Auch das solltest du genau überprüfen !
FISIStew
FISIStew 24.10.2018 um 08:31:22 Uhr
Goto Top
@aqui

Also eine Anmeldung über SSH via Putty und Username/Passwort ist ja möglich!
Daher vermute ich, das es nicht an der Firewall liegt.

in der sshd_config steht unter Logging:

#SyslogFacility AUTH
#LogLevel INFO

selbst wenn sich der User mit PW anmeldet, bekomme ich keinen Logeintrag ???
SlainteMhath
SlainteMhath 24.10.2018 um 08:34:35 Uhr
Goto Top
selbst wenn sich der User mit PW anmeldet, bekomme ich keinen Logeintrag ???
Einfach mal die # entfernen .)
aqui
aqui 24.10.2018 um 10:41:49 Uhr
Goto Top
Sollte man als Unix Admin aber auch wissen das mit "#" immer auskommentiert wird face-wink
FISIStew
FISIStew 24.10.2018 um 11:17:52 Uhr
Goto Top
@SlainteMhath

habe ich entfernt aber bringt nach wie vor kein Ergebnis!

@aqui

wenn man # entfernt wird die Änderung überschrieben laut Dokumentation.
Trotzdem, ich bekomme keine Log geschrieben. Auch habe ich die Windows Firewall deaktiviert falls hier das Problem bestehen sollte, aber auch keinen Erfolg.
Der User kann sich ja mit PW anmelden, nur ohne nicht. face-sad
aqui
aqui 24.10.2018 aktualisiert um 11:31:29 Uhr
Goto Top
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
SlainteMhath
SlainteMhath 24.10.2018 um 11:38:30 Uhr
Goto Top
Vielleicht wäre es jetzt auch mal ander Zeit, deine komplette sshd_config zu posten.

Gffs. könntest du dem Dienst auch mal per Startparameter den Pfad zur config mitgeben, nur um sicherzustellen das auch die korrekte config Datei geladen wird.
FISIStew
FISIStew 24.10.2018 um 11:58:54 Uhr
Goto Top
@aqui

Das AIX System steht in einem fremden Netz!
Leider kann ich keinen Testrechner o.ä. nutzen, da die Server in einem RZ sind und die Rechte sehr eingeschränkt hier im Netzwerk.
Das AIX System liegt auch nicht in unserem Aufgabenbereich was die Sache zusätzlich erschwert face-sad
Anbei mal ein Trace vom AIX aus.

@SlainteMhath

Die sshd_config wird richtig gezogen, denn ich habe zum Test

PasswordAuthentication

von YES auf NO gestellt und dann war ein anmelden über Putty nicht mehr möglich. Erst nach dem Umstellen wieder!
Anbei mal der Trace.

1

2

CONFIG

3

4
FISIStew
FISIStew 30.10.2018 um 09:08:42 Uhr
Goto Top
Hallo zusammen,

ich habe nun herausgefunden, das mein Key "to open" ist.
Welche Berechtigungen benötige ich auf Windows Ebene?

Im Inet findet man etwas mit chmod und widersprüchliche Angaben.

Derzeit habe ich die Berechtigung:

Owner = System
SYSTEM > FullControll
Administratoren > FullControll
<User>\Domain > Read & Execute
FISIStew
FISIStew 30.10.2018 um 11:08:27 Uhr
Goto Top
Hallo zusammen,

an alle vielen Dank für die Mühe!
Der Zugang funktioniert nun und ich werde eine kleine Dokumentation hierfür erstellen für Euch alle.

Viele Grüße

Stew
aqui
aqui 30.10.2018 um 14:44:43 Uhr
Goto Top
Glückwunsch ! face-smile
Ein kleines Tutorial hier dazu wäre in der Tat sehr hilfreich !