Jak powstrzymać użytkowników przed przejściem na użytkownika root

12

Wyłączyłem logowanie użytkownika root z pliku Sshd.conf, więc teraz nikt nie może zalogować się przy użyciu użytkownika root, nawet jeśli zna hasło SOMEHOW.

Teraz mam 3 użytkowników na serwerze ROOT, EMERG i ORACLE. Chcę zezwolić na przejście do ROOT tylko dla użytkownika EMERG przy użyciu su - a nie dla użytkownika ORACLE.

ponieważ normalnie, jeśli użytkownicy znają hasło ROOT, mogą przełączyć się na rootowanie za pomocą su -. Chcę, aby ta funkcja była dostępna tylko dla użytkownika EMERG.

Jak to zrobić

Z góry dziękuję......

OmiPenguin
źródło
11
Spójrz na sudoto pozwala na znacznie lepszą i bardziej szczegółową kontrolę dostępu. Plus może uwierzytelniać użytkowników z ich haseł.
Peter
1
Jeśli mój anser działa dla ciebie, możesz oznaczyć go jako poprawny.
Bananguin

Odpowiedzi:

16

su(głównie) używa pam do uwierzytelnienia, a pam ma moduł o nazwie pam_wheel, który sprawdza przynależność do grupy użytkownika uwierzytelniającego. Krótko mówiąc, dodając

auth       required   pam_wheel.so group=becomeroot

do pliku /etc/pam.d/su, tylko użytkownicy będący członkami grupy becomerootmogą zostać rootowani przy użyciu su. Teraz upewniasz się, że tylko Twój użytkownik EMERG jest członkiem grupy root-root. Niektóre dystrybucje mają / używają nazwanej wheeldo tego grupy.

groupadd becomeroot         #add the group becomeroot to your system
gpasswd -a EMERG becomeroot # add the user EMERG to the group becomeroot

Dalsze czytanie: PAM (7) pam_wheel (8) groupadd (8) gpasswd (1) i wiele dystrybucje nie wyjaśniając komentarze /etc/pam.d/su, jak również

Bananguin
źródło
2
Nie wszystkie dystrybucje mają wheelgrupę lub można ją nazwać inaczej.
vonbrand