Aktionen

Anmeldung per SSH-Key nicht möglich wenn der home-Ordner auf einem NFS-Share liegt

Aus znilwiki

Version vom 24. Juni 2024, 11:54 Uhr von BLinz (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „<u>'''ChangeLog:'''</u> * 24.06.2024 erste Version ---- ==Vorwort== Das hat mich gerade über 3h Stunden gekostet.<br> Eine Software eines Kunden in einer Serverfarm benutzt passwortlose SSH-Anmeldungen um Prozesse auf diversen Servern unter einem bestimmten Benutzer zu starten.<br> Und der Hersteller möchte das auf allen Servern das identische Profil verwendet wird. Weshalb es auf dem Master-Knoten als NFS-Share frei gegeben ist und alle Worker-Knoten d…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

ChangeLog:

  • 24.06.2024 erste Version

Vorwort

Das hat mich gerade über 3h Stunden gekostet.
Eine Software eines Kunden in einer Serverfarm benutzt passwortlose SSH-Anmeldungen um Prozesse auf diversen Servern unter einem bestimmten Benutzer zu starten.
Und der Hersteller möchte das auf allen Servern das identische Profil verwendet wird. Weshalb es auf dem Master-Knoten als NFS-Share frei gegeben ist und alle Worker-Knoten dieses in das Home-Verzeichnis des Benutzers gemountet haben (Benutzer hat überall die gleiche UID/GID).

Aber auf einem Knoten klappt das Passwortlose SSH-Login nicht, er wollte immer das Passwort.
Bis ich endlich mal die richtige Frage bei Google gestellt habe, die Lösung fand ich hier:

Es liegt an SELinux!


Prüfen ob es an SELinux liegt

Testet diesen Befehl:

getsebool use_nfs_home_dirs

Beispielausgabe 1 => Ihr habt das Problem gefunden:

use_nfs_home_dirs --> off

Bedeutet das SELinux aktiv ist und dieser Parameter die Ausführung verhindert.
Ist SELinux deaktiviert kommt die folgende Ausgabe:

getsebool:  SELinux is disabled

Dann liegt es vermutlich an falschen Veruechnis und Dateirechten, das Verzeichnis des Benutzers muss

chmod 700 .ssh

sein, die authorized_keys Datei darf nur für den Besitzer rw sein:

chmod 600 .ssh/authorized_keys



Es liegt an SELinux - Lösung 1

Setzt den Parameter das die Verwendung von NFS Shares erlaubt wird:

setsebool -P use_nfs_home_dirs 1

Das funktioniert dann unmittelbar und ohne Neustart!


Es liegt an SELinux - Lösung 2

Variante 2 ist das wir SELinux ganz deaktivieren: