Zainstalowałem Google-Authenticator na maszynie CentOS 6.5 i skonfigurowałem niektórych użytkowników do obsługi OTP.
Podczas edycji /etc/ssh/sshd_config
widziałem dyrektywę „ PermitRootLogin
”, która jest domyślnie komentowana.
Chciałbym ustawić „ PermitRootLogin no
”, ale nadal będę mógł ssh do komputera jako root tylko z sieci lokalnej.
Czy to jest możliwe?
sudo - su
rootowania, ani robienia czegokolwiek, czego jego użytkownicy nie potrzebują (w sudoerach używasz białej listy do poleceń). Jeśli potrzebujesz roota, musisz fizycznie być przy konsoli - tj. Rootowanie nad SSH nigdy nie powinno być dozwolone ... klucze czy nie.Odpowiedzi:
Użyj
Match
parametru config w/etc/ssh/sshd_config
:Widzieć
man sshd_config
źródło
~root/.ssh/authorized_keys
. Przedrostek klucza za pomocąfrom="192.168.0.0/24 "
.AllowUser root
Match address
Metoda została już wspomniano, ale można także ograniczyć użytkowników (lub grupy), które są dozwolone, aby zalogować się na systemie. Na przykład, aby ograniczyć logowanie do użytkownikaitai
(z dowolnego miejsca) iroot
(z określonej sieci), użyj:Zapobiega to
apache
logowaniu się przez wszystkich innych użytkowników (np. ) Za pośrednictwem protokołu SSH.Zobacz także
AllowUsers
słowo kluczowe w podręczniku sshd_config (5) .źródło
AllowGroups
i dodaję wszystkich użytkowników, którzy powinni mieć możliwość zalogowania się przy użyciu SSH do określonej grupy. Zgadnij, to kwestia gustu, ale wydaje się, że to mniej edycji sshd_config (co przekłada się na mniejsze ryzyko zepsucia i zablokowania wszystkich).AllowUsers itai [email protected].*
iAllowGroups ssh-users
nie spowoduje to przypadkowej blokady w przypadku, gdy stażysta przypadkowo wyczyści grupę :)