Вход по ssh, отключение доступа по паролю и отключение root аутентификации

Шёл 2021 год, а я всё никак не хотел запоминать эти простые действия, ну что же, как обычно запишу сюда микромануал чтобы не гуглить больше.

Итак, стоит задача чуть-чуть засекурить вновь арендованный сервер, а именно создать нового пользователя, настроить ему логин по ssh ключу, отключить доступ по паролю и отключить аутентификацию от root пользователя.

  1. Да сотворю я пользователя нового и добавлю его в группу админску, дабы умел он пользоваться всеми благами sudo:
adduser manjarqo

вводим дважды пароль никому не ведаемый, дабы супостат не смог прознать тайны заветной(ясно-понятно вместо manjarqo имя своего юзера). Потом добавляем ему sudo привелегии:

usermod -aG sudo manjarqo

2. На локальной машине если ещё не создан ssh ключ то генерим:

ssh-keygen -t rsa

Если уже есть то сразу выполняем:

ssh-copy-id [email protected]

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

ssh [email protected]

Если залогинился то переходим к следующему пункту, если не залогинился, то разбирайтесь что пошло ни так и потом переходите к следующему пункту.

3. После входа на сервер по ключу от нового пользователя открываем для редактирования ssh конфиг и чуть-чуть его правим:

sudo nano /etc/ssh/sshd_config

В нём приводим строку к виду PasswordAuthentication no, предварительно раскомментировав если закоментирована и строку к виду PermitRootLogin no, так же раскомментировав, после чего перезапускаем службу ssh командой:

sudo service ssh restart

Если всё прошло хорошо, то под root пользователем больше не зайти, что сразу же обломит тех кто непрерывно брутфорсит наш сервак и вообще вход возможен только человеку у которого в папке ~/ssh лежит именно ваш ключик, так что берегите его.
Всем добра!

Leave a Comment