Я хотел бы условно отключить интерактивный вход в ubuntu в случае, если пользователь пытается войти в оболочку ssh с недопустимым именем пользователя.
Скажем, у меня есть пользователь bob на моем сервере, но пользователь fred; не является действующим пользователем.
Когда Боб входит в систему с
ssh bob@my_ip_address
Я хочу интерактивный вход
Когда кто-то входит в систему с
ssh fred@my_ip_address
Я не хочу никакого интерактивного входа в систему и прекращения попытки входа в систему.
Как это можно сделать в Ubuntu?
Вы действительно не хотите этого делать. OTOH, fail2ban делает примерно то, что вы хотите. Вы можете настроить его для обнаружения и запрета IP-адресов, которые пытаются войти в систему как недействительный пользователь в течение определенного периода времени.
joet3ch также прав, говоря, что переключение на вход только с открытым и закрытым ключом было бы наиболее безопасным.
В /etc/ssh/sshd_config
, вы можете использовать AllowUsers
параметр, чтобы указать, каким пользователям разрешено входить в систему через SSH:
AllowUsers
This keyword can be followed by a list of user name patterns, separated by spaces. If specified, login is allowed only for user names that match one of the patterns. Only
user names are valid; a numerical user ID is not recognized. By default, login is allowed for all users. If the pattern takes the form USER@HOST then USER and HOST are
separately checked, restricting logins to particular users from particular hosts. The allow/deny directives are processed in the following order: DenyUsers, AllowUsers,
DenyGroups, and finally AllowGroups.
See PATTERNS in ssh_config(5) for more information on patterns.
Кроме того, я бы очень рекомендовал использовать ключи SSH вместо паролей для защиты соединений.
Вы понимаете, что таким образом будет очень легко найти действительное имя пользователя? Вы всегда хотите, чтобы любой злоумышленник имел как можно меньше информации о вашей системе!
В качестве альтернативы fail2ban вы также можете использовать denyhosts
похоже, что он будет делать то же самое, что и fail2ban.