[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: ssh-login auf einen Server ohne logind



Am Dienstag, 23. Februar 2016, 21:10:52 CET schrieb Sven Hartge:
> Marc Haber <mh+debian-user-german@zugschlus.de> wrote:
> > On Tue, 23 Feb 2016 19:26:16 +0100, Sven Hartge <sven@svenhartge.de> 
wrote:
> >> Marc Haber <mh+debian-user-german@zugschlus.de> wrote:
> >>> in jessie scheint ein ssh-Server 25 Sekunden lang auf logind zu
> >>> warten, wenn man sich per ssh aus der Ferne einlogged.
> >> 
> >> Da hat jemand dbus neugestartet. Das triggert diesen Bug. Lösung:
> >> systemd-logind neu starten, dann klappt der Login wieder sofort.
> > 
> > Brauche ich den logind überhaupt? Geht es auch ohne?
> 
> systemd ohne logind? Eher logind ohne systemd (via shim).

/lib/systemd/systemd-logind ist Bestandteil des Systemd-Paketes, daher gehe 
ich auch erstmal davon aus, dass das so vorgesehen ist.

Ich nehme an, dass

libpam-systemd:amd64: /lib/x86_64-linux-gnu/security/pam_systemd.so

logind bei SSH-Sitzungen aufruft.

in /etc/pam.d

./common-session:session        optional        pam_systemd.so

und das ruft dann /etc/pam.d/sshd auf:

# Standard Un*x session setup and teardown.
@include common-session


Und in pam_systemd.so ist:

merkaba:~> strings /lib/x86_64-linux-gnu/security/pam_systemd.so | grep logind
Asking logind to create session: uid=%u pid=%i service=%s type=%s class=%s 
desktop=%s seat=%s vtnr=%u tty=%s display=%s remote=%s remote_user=%s 
remote_host=%s
Reply from logind: id=%s object_path=%s runtime_path=%s session_fd=%d seat=%s 
vtnr=%u original_uid=%u

Also nehme ich mal an, dass es so verdrahtet ist.


Allerdings ist "pam_systemd.so" in "common-session" als optional markiert. 
Daher könnte es reichen, den Eindruck dort auszukommentieren. Allerdings hat 
das, da auch andere PAM-Konfigurationsdateien "common-session" einbinden, 
möglicherweise auch unbeabsichtigte Auswirkungen.

Eine Möglichkeit wäre, denke ich, "common-session" nach "common-session-ssh" 
zu kopieren oder so und dann nur dort den systemd-Eintrag auszukommentieren 
und dann das Include-Statement in der "sshd"-Datei entsprechend abzuändern.


Inwiefern die SSH-Sitzung nach einer solchen Änderung noch funktioniert, weiß 
ich nicht. Ich verstehe optional ja tatsächlich als optional, und daher würde 
ich erwarten, dass es funktioniert.

Ciao,
-- 
Martin


Reply to: