Как отключить авторизацию по паролю ssh
Перейти к содержимому

Как отключить авторизацию по паролю ssh

  • автор:

Как отключить вход по SSH с паролем

Как настроить SSH ключи в Debian 10

Одним из основных шагов по усилению SSH является отключение входа по SSH на основе пароля.

Вы знаете, что вы можете использовать ssh с паролем root или другой учетной записи для удаленного входа на сервер Linux.

Но это создает угрозу безопасности, потому что огромное количество ботов всегда пытаются войти в вашу систему со случайными паролями. Это называется атакой грубой силы.

Вы мне не верите? Вы можете проверить логин на вашем сервере Linux. Вы будете удивлены, увидев так много неудачных попыток на вашем сервере.

root@myserver:~# lastb | tail root ssh:notty 23.211.87.212 Wed Apr 1 02:12 - 02:12 (00:00) aw ssh:notty 36.121.175.68 Wed Apr 1 02:12 - 02:12 (00:00) fx ssh:notty 133.23.164.34 Wed Apr 1 02:12 - 02:12 (00:00) fx ssh:notty 133.23.164.34 Wed Apr 1 02:12 - 02:12 (00:00) root ssh:notty 167.22.123.74 Wed Apr 1 02:12 - 02:12 (00:00)

Вот почему вы должны использовать надежный пароль. Правильный способ борьбы с ними — использовать такой инструмент, как fail2ban. Другой способ — отключить аутентификацию на основе пароля, чтобы никто не мог подключиться через пароль для входа.

Таким образом, только те системы, чьи открытые ssh-ключи добавлены на сервер (так называемая аутентификация на основе ключей), смогут подключаться к серверу. Читайте о настройке конфигурации SSH.

Отключить аутентификацию по паролю SSH

Прежде чем сделать это, вы должны помнить следующее:

  • Обязательно создайте пару ключей ssh на своем персональном/рабочем компьютере и добавьте этот открытый ключ SSH на сервер, чтобы по крайней мере вы могли войти на сервер.
  • Отключение аутентификации на основе пароля означает, что вы не можете подключиться к серверу ssh со случайных компьютеров.
  • Вы не должны терять свои ключи SSH. Если вы отформатируете свой персональный компьютер и потеряете ssh-ключи, вы никогда не сможете получить доступ к серверу.
  • Если вы заблокированы, вы никогда не сможете получить доступ к вашему серверу.

Некоторые поставщики облачных серверов предоставляют VNC-консоль, которая может вам помочь.

[gn_box title=»Предупреждение» box_color=»#ff8d8c» title_color=»#000000″]Отключайте аутентификацию SSH на основе пароля только в том случае, если вы знакомы с SSH и другими концепциями системного администратора. Вы также должны знать, как использовать текстовый редактор на основе терминала, такой как Vim или Nano.[/gn_box]

Ладно. Итак, теперь вы знаете риски, связанные с отключением входа по SSH с помощью пароля. Посмотрим, как это сделать.

Войдите в систему как root на ваш сервер Linux, используя аутентификацию на основе ключей. Используйте редактор, такой как Nano или Vim, для редактирования следующего файла:

/etc/ssh/sshd_config

Найдите следующую строку:

PasswordAuthentication yes

И измените его на:

PasswordAuthentication no

Если в начале этой строки есть символ # (закомментированный), удалите его.

Сохраните файл после внесения этих изменений и перезапустите службу SSH с помощью этой команды:

systemctl restart ssh

Вот и все. Вы успешно отключили аутентификацию на основе пароля в SSH.

Вопросы и предложения всегда приветствуются.

Аутентификация с помощью SSH ключей и отключение доступа по паролю

Каким образом настроить доступ на сервер с помощью SSH ключей и отключить аутентификацию по паролю?

Зарегистрируйтесь или Войдите , чтобы комментировать

ОТВЕТЫ НА ВОПРОС

Что такое аутентификация с помощью SSH ключей, как она работает и для чего используют?

Аутентификация с помощью SSH ключей является чрезвычайно безопасным способом входа на сервер. В данном случае используются два криптографических ключа, каждая пара ключей состоит из открытого и закрытого ключа. Открытый ключ можно не опасаясь распространять т.к. он служит для шифрования сообщений, которые можно расшифровать только имея закрытый ключ.

Закрытый ключ необходимо очень надежно хранить! Мы крайне рекомендуем в качестве дополнительной меры предосторожности защитить его парольной фразой.

Публичный ключ вы можете добавить в разделе «Мои Серверы», вкладка «SSH-ключи».

autentifikatsiya-s-pomoshchyu-ssh-klyuchey-i-otklyuchenie-dostupa-po-parolyu-0.png

Есть возможность добавить сразу несколько ключей

autentifikatsiya-s-pomoshchyu-ssh-klyuchey-i-otklyuchenie-dostupa-po-parolyu-1.png

В дальнейшем, при заказе сервера, вы можете выбрать этот ключ.

autentifikatsiya-s-pomoshchyu-ssh-klyuchey-i-otklyuchenie-dostupa-po-parolyu-2.png

Если на своём сервере вы настроили доступ с помощью SSH ключей, то панель автоматически загрузит открытый ключ в файл ~/.ssh/authorized_keys на вашем сервере. Когда пользователь попытается подключиться к серверу с помощью SSH-ключей, то он проверяет клиента на наличие у него закрытого ключа. Таким образом происходит аутентификация.

Как сгенерировать ключи?

В Windows это можно сделать с помощью Putty, скачиваем программу и запускаем файл puttygen.exe. Тип ключа выбираем RSA, а длину 2048 бит, нажимаем Generate, при генерации произвольно водим курсором мыши.

autentifikatsiya-s-pomoshchyu-ssh-klyuchey-i-otklyuchenie-dostupa-po-parolyu-3.png

Сохраните сгенерированную пару ключей на компьютере, для этого используйте кнопки Save public key и Save private key. Не забудьте защитить закрытый ключ секретной фразой/паролем (необходимо ввести в поле Key passphrase/Confirm passphrase). Скопируйте сгененированный публичный ключ и вставьте его в соответствующее поле нашей панели управления.

autentifikatsiya-s-pomoshchyu-ssh-klyuchey-i-otklyuchenie-dostupa-po-parolyu-4.png

В Linux или MacOS откройте терминал и выполните следующую команду

ssh-keygen -t rsa

Вы увидите следующий ответ компьютера

Enter file in which to save the key (/root/.ssh/id_rsa):

Вам необходимо нажать на клавишу Enter и ввести фразу/пароль для дополнительной защиты закрытого ключа, система попросит ввести его 2 раза

Enter passphrase (empty for no passphrase):

После этого ключ будет создан, а на консоль будет сообщение приблизительно такого содержания

Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: bf:9b:79:ca:9f:96:bb:4c:b9:67:e9:e6:4d:1f:30:e1 root@xxx.macloud.ru The key's randomart image is: +--[ RSA 2048]----+ | | | | | . | | . . | | S E | | . .o | | . o. o.| | . *+o=oo| | B*BOo o| +-----------------+

Чтобы получить открытый ключ вводим в терминале команду

cat ~/.ssh/id_rsa.pub

Полученный ключ вводим в соответствующее поле нашей панели управления. В дальнейшем вы сможете подключаться со своего ПК к серверу с помощью команды

ssh root@[IP-адрес сервера]

Дополнительная защита сервера при использовании SSH ключей: отключение парольной аутентификации

ВНИМАНИЕ! Прежде чем выполнять этот пункт обязательно проверьте работу SSH ключей и входа на сервер по ним.

Если у вас вышло подключиться к серверу с помощью SSH-ключей, то в качестве дополнительной меры безопасности можно отключить аутентификацию через пароль. Для этого открываем конфигурационный файл демона SSH /etc/ssh/sshd_config и раскомментируем директиву PasswordAuthentication, а также установим ей значение no.

PasswordAuthentication no 

Сохраняем изменения и перезапускаем сервис

# Ubuntu/Debian sudo systemctl restart ssh # CentOS/Fedora sudo service sshd restart

Статья Как отключить вход по ssh паролю на Linux для повышения безопасности

Я хочу отключить доступ для ssh-клиентов с помощью пароля и разрешить только авторизацию ssh с помощью SSH-ключей. Как отключить аутентификацию паролей для SSH в операционных системах Linux?

Во-первых, вам нужно настроить обычную учетную запись пользователя. Затем настройте SSH-ключи для входа. После того, как вы настроили SSH-ключи, вам необходимо отключить пароль для всех пользователей, включая root. В этом руководстве показано:

Как создать ключ ssh и отключить аутентификацию пароля в системе на базе Linux или Unix

29048

В целях демонстрации я использую Ubuntu Linux

Шаг 1 – Вход на удаленный сервер

Используйте команду ssh или клиент вроде Putty:

Шаг 2 – Создание нового пользовательского аккаунта

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

# useradd -m -s /bin/bash vivek

Аутентификация с помощью SSH ключей и отключение доступа по паролю

Каким образом настроить доступ на сервер с помощью SSH ключей и отключить аутентификацию по паролю?

06.06.2018 11:08 Сотрудник Михаил Обновлено 07.11.2019 13:30
06.06.2018 11:08
Для комментирования вопроса нужно зарегистрироваться или авторизоваться.
Ответы на вопрос — 1
Сотрудник Михаил

Что такое аутентификация с помощью SSH ключей, как она работает и для чего используют?

Аутентификация с помощью SSH ключей является чрезвычайно безопасным способом входа на сервер. В данном случае используются два криптографических ключа, каждая пара ключей состоит из открытого и закрытого ключа. Открытый ключ можно не опасаясь распространять т.к. он служит для шифрования сообщений, которые можно расшифровать только имея закрытый ключ.

Закрытый ключ необходимо очень надежно хранить! Мы крайне рекомендуем в качестве дополнительной меры предосторожности защитить его парольной фразой.

Публичный ключ вы можете добавить в разделе «Мои Серверы», вкладка «SSH-ключи».

autentifikatsiya-s-pomoshchyu-ssh-klyuchey-i-otklyuchenie-dostupa-po-parolyu-1.png

Есть возможность добавить сразу несколько ключей

autentifikatsiya-s-pomoshchyu-ssh-klyuchey-i-otklyuchenie-dostupa-po-parolyu-2.png

В дальнейшем, при заказе сервера, вы можете выбрать этот ключ.

autentifikatsiya-s-pomoshchyu-ssh-klyuchey-i-otklyuchenie-dostupa-po-parolyu-3.png

Если на своём сервере вы настроили доступ с помощью SSH ключей, то панель автоматически загрузит открытый ключ в файл ~/.ssh/authorized_keys на вашем сервере. Когда пользователь попытается подключиться к серверу с помощью SSH-ключей, то он проверяет клиента на наличие у него закрытого ключа. Таким образом происходит аутентификация.

Как сгенерировать ключи?

В Windows это можно сделать с помощью Putty, скачиваем программу и запускаем файл puttygen.exe. Тип ключа выбираем RSA, а длину 2048 бит, нажимаем Generate, при генерации произвольно водим курсором мыши.

autentifikatsiya-s-pomoshchyu-ssh-klyuchey-i-otklyuchenie-dostupa-po-parolyu-4.png

Сохраните сгенерированную пару ключей на компьютере, для этого используйте кнопки Save public key и Save private key. Не забудьте защитить закрытый ключ секретной фразой/паролем (необходимо ввести в поле Key passphrase/Confirm passphrase). Скопируйте сгененированный публичный ключ и вставьте его в соответствующее поле нашей панели управления. Эту же программу используйте в дальнейшем для подключения со сгенерированным ключом.

autentifikatsiya-s-pomoshchyu-ssh-klyuchey-i-otklyuchenie-dostupa-po-parolyu-5.png

В Linux или MacOS откройте терминал и выполните следующую команду

ssh-keygen -t rsa

Вы увидите следующий ответ компьютера

Enter file in which to save the key (/root/.ssh/id_rsa):

Вам необходимо нажать на клавишу Enter и ввести фразу/пароль для дополнительной защиты закрытого ключа, система попросит ввести его 2 раза

Enter passphrase (empty for no passphrase):

После этого ключ будет создан, а на консоль будет сообщение приблизительно такого содержания

Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: bf:9b:79:ca:9f:96:bb:4c:b9:67:e9:e6:4d:1f:30:e1 root@xxx.vdsina.ru The key's randomart image is: +--[ RSA 2048]----+ | | | | | . | | . . | | S E | | . .o | | . o. o.| | . *+o=oo| | B*BOo o| +-----------------+

Чтобы получить открытый ключ вводим в терминале команду

cat ~/.ssh/id_rsa.pub

Полученный ключ вводим в соответствующее поле нашей панели управления. В дальнейшем вы сможете подключаться со своего ПК к серверу с помощью команды

ssh root@[IP-адрес сервера]

Дополнительная защита сервера при использовании SSH ключей: отключение парольной аутентификации

ВНИМАНИЕ! Прежде чем выполнять этот пункт обязательно проверьте работу SSH ключей и входа на сервер по ним.

Если у вас вышло подключиться к серверу с помощью SSH-ключей, то в качестве дополнительной меры безопасности можно отключить аутентификацию через пароль. Для этого открываем конфигурационный файл демона SSH /etc/ssh/sshd_config и раскомментируем директиву PasswordAuthentication, установим ей значение no.

PasswordAuthentication no

Сохраняем изменения и перезапускаем сервис

# Ubuntu/Debian sudo systemctl restart ssh # CentOS/Fedora sudo service sshd restart

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *