Sanes
@Sanes

Как запретить пользователю root авторизацию в SSH по паролю?

Задача следующая:
  1. Пользователь root может авторизоваться в SSH только по ключу
  2. Остальные пользователи могут авторизоваться в SSH по паролю

Как это можно решить? Никогда с подобным не приходилось связываться.
Текущий конфиг
Port 22

Protocol 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
UsePrivilegeSeparation yes

KeyRegenerationInterval 3600
ServerKeyBits 1024

SyslogFacility AUTH
LogLevel INFO

LoginGraceTime 120
PermitRootLogin yes
StrictModes yes

RSAAuthentication yes
PubkeyAuthentication yes

IgnoreRhosts yes
RhostsRSAAuthentication no
HostbasedAuthentication no

PermitEmptyPasswords no

ChallengeResponseAuthentication no


#Match User root
PasswordAuthentication yes
GSSAPIAuthentication no

X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes


AcceptEnv LANG LC_*

Subsystem sftp /usr/lib/openssh/sftp-server

UsePAM yes
UseDNS no
  • Вопрос задан
  • 2794 просмотра
Пригласить эксперта
Ответы на вопрос 3
@sazhyk
А что если удалить у рута пароль, выставить
PermitRootLogin without-password
Запретить пустые пароли
PermitEmptyPasswords no
И коннектиться с ключом. Если я ничего не путаю, вы получите
1. Рут сможет приконнектиться только с ключом (пароля у него нет, а с пустым нельзя)
2. Остальные холят по паролям
Ответ написан
p1r4te
@p1r4te
Sysadmin, Linux, Nginx
PermitRootLogin yes -> PermitRootLogin no

И авторизовываться не под рутом. Вообще плохо рутом ходить куда-либо. Лучше отключить его, предварительно добавив вашего пользователя в sudoers и в группу с root-правами.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы