Базовая настройка SSH на новом сервере
Несколько строк конфигурации, которые я добавляю на каждую машину.
Новый сервер начинают перебирать по паролю в первые минуты после появления в сети. Достаточно нескольких настроек, чтобы этот шум перестал быть проблемой.
Ключи
ssh-keygen -t ed25519 -C "laptop"
ssh-copy-id -i ~/.ssh/id_ed25519.pub admin@server
Перед отключением паролей обязательно проверьте вход по ключу в отдельной сессии, не закрывая текущую.
Конфигурация
Удобнее не править основной файл, а положить отдельный в sshd_config.d:
# /etc/ssh/sshd_config.d/50-local.conf
PasswordAuthentication no
KbdInteractiveAuthentication no
PermitRootLogin prohibit-password
MaxAuthTries 3
LoginGraceTime 20
sshd -t && systemctl reload ssh
sshd -T | grep -E 'passwordauth|permitroot'
sshd -t проверяет синтаксис до перезагрузки, а sshd -T показывает итоговые значения с учётом всех подключённых файлов — так видно, не переопределяет ли что-то вашу настройку.
Файрвол
Если администрируете с постоянных адресов, разрешите порт SSH только с них. Остальное сделает политика по умолчанию drop.