1

в openssh вы можете ограничить вход в систему root (PermitRootLogin нет), но может ли он иметь исключение?

1 ответ1

5

Учитывая, что вход в систему как root не является хорошей идеей, взгляните на man-страницу sshd:

PermitRootLogin

Указывает, может ли root войти в систему с помощью ssh(1). Аргумент должен быть `` yes '', `` без пароля '', `` принудительно-только для команд '' или `` нет ''. По умолчанию это `` да ''.

Если для этой опции задано `` без пароля '', аутентификация пароля отключена для пользователя root.

Если для этой опции задано значение `` принудительная команда-только '', будет разрешен вход в систему root с аутентификацией с открытым ключом, но только если была указана опция команды (что может быть полезно для создания удаленных резервных копий, даже если вход в систему root обычно не позволил). Все остальные методы аутентификации отключены для root.

Если эта опция установлена на `` no '', root не может войти в систему.

Таким образом, вы можете использовать PermitRootLogin without-password чтобы разрешить аутентификацию с закрытым / открытым ключом и запретить аутентификацию по паролю; или, возможно, PermitRootLogin forced-commands-only для команд позволяет вам войти в систему как root, но без интерактивного доступа.

В последнем случае требуется отредактировать файл authorized_keys , чтобы указать, какая команда включена для регистрации пользователя, например, так:

command="rdiff-backup --server" ssh-rsa AAAAB3NzaC1y... (rest of key)

или, что еще лучше, разрешите вход в систему только для принудительных команд только с определенного IP-адреса:

from="10.1.1.1",command="/home/user/command/to/execute" ssh-rsa AAAAB3NzaC1y... (rest of key)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .