Administruję środowiskiem sieciowym i miałem wczoraj ciekawą sytuację. Gdy host musi zostać zamknięty przez zwykłego użytkownika, odmawia tego, jeśli inni użytkownicy są zalogowani lokalnie. Nie dzieje się tak jednak, gdy inni użytkownicy są zalogowani za pośrednictwem SSH. Jeśli jeden użytkownik jest zalogowany lokalnie, a jeden użytkownik jest zalogowany za pośrednictwem SSH, a użytkownik zalogowany lokalnie próbuje zamknąć system, to udaje się to bez ostrzeżenia, a połączenie SSH drugiego użytkownika zostaje nagle przerwane. Moje pytanie brzmi: czy istnieje sposób, aby temu zapobiec, podobnie jak zasady obowiązujące lokalnych użytkowników? Już szukałem strony podręcznika użytkownika sshd_config
i nie mogłem znaleźć niczego, co mogłoby się wydawać powiązane.
EDYCJA (dodatkowe informacje.):
W sieci znajdują się 4 systemy operacyjne: Mandriva 2009, Mandriva 2010.2, Mandriva 2011 i Ubuntu 11.04. Konkretny przypadek, o którym mówię, to użytkownik SSH na hoście Mandriva 2009 i użytkownik lokalny na hoście Mandriva 2011.
Hosty Mandriva 2009 używają środowiska GNOME 2.28, hosty 2010.2 używają GNOME 2.32, hosty 2011 używają KDE Plazmy, a hosty Ubuntu 11.04 używają Unity.
Aktualizacja
Jak zauważyłem w tym pytaniu , przejrzałem polkit
akcje poniżej /usr/share/polkit-1/actions/
i znalazłem (w pliku org.freedesktop.consolekit.policy
) akcję wywoływaną, org.freedesktop.consolekit.system.stop-multiple-users
która rzuca komunikat
System policy prevents stopping the system when other users are logged in
Myślę (ze względu na org.freedesktop.*
konwencję nazewnictwa), że jest to jakiś sygnał wysyłany do DM przez D-BUS. Myślę, że jeśli mogę dowiedzieć się, jaki sygnał wyzwala to polkit
działanie, powinienem być w stanie zmodyfikować jego zachowanie. Jakieś pomysły?
Aktualizacja 2
Próbowałem dzisiaj małego eksperymentu, który dał mi bardzo dziwne wyniki. Próbowałem zalogować się przez SSH do jednego urządzenia i upewniłem się, że żaden inny użytkownik nie jest zalogowany na żadnym VT. Jeśli wybiorę Shutdown
z menu „Działania” GDM, dostaję długo oczekiwany komunikat o polityce, który informuje mnie, że nie można tego zrobić bez uwierzytelnienia, ponieważ inni użytkownicy są zalogowani. Jeśli jednak używam GDM do lokalnego logowania i wybrania aby zamknąć okno z menu GNOME, sesja SSH jest zablokowana jak poprzednio. Jak to jest możliwe? Czy zachowanie różni się, gdy inicjuję shutdown
żądanie od GDM, niż gdy inicjuję je z poziomu gnome-session
? Czy to mówi komukolwiek coś, co może mi pomóc rozwiązać problem?