Использование ключа для подключения по SSH

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

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

При подключении публичный ключ взаимодействует с приватным ключом и открывается доступ к удаленном управлению сервером.

Подключение на Windows

Для удобства будем использовать программу PuTTy. Вместе с ней устанавливается утилита PuTTY Generator, в которой мы будем генерировать публичные и приватные ключи.

  1. Запускаем программу PuTTY Generator.
  2. Нажимаем на кнопку Generate.
  3. Нужно водить курсором мышки по рабочему столу, чтобы сгенерировались ключи.

  1. Нажимаем на кнопку Save private key, чтобы сохранить приватный ключ на нашем компьютере. Место хранения можно указать любое, месторасположения ключа нужно будет указать в параметрах PuTTY. Данный шаг сделаем позже.
  2. Копируем публичный ключ и закрываем PuTTY Generator.

Теперь нужно скопировать публичный ключ на сервер. Запускаем программу PuTTY и подключаемся к серверу с помощью пароля. Затем последовательно вводим следующие команды:

mkdir ~/.ssh
chmod 0700 ~/.ssh
touch ~/.ssh/authorized_keys
chmod 0644 ~/.ssh/authorized_keys

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

Далее мы копируем публичный ключ в файл authorized_keys. Для этого используем команду nano .ssh/authorized_keys. После ввода команды используем комбинацию клавиш Shift+Insert, чтобы вставить публичный ключ. Далее нажимаем клавиши Ctrl+X, И нажимаем клавишу Y, чтобы сохранить изменения в данном файле. Таким образом мы скопировали публичный ключ на сервер.

Открываем настройки программы PuTTY. Переходим в раздел Connection SSH Auth. Нажимаем на кнопку Browse и указываем путь к приватному ключу, который мы ранее сохранили на нашем компьютере.

Теперь для подключения к серверу через SSH достаточно будет указать только логин пользователя и IP-адрес сервера.

Генерирование ключа и подключение на Linux

В данном варианте рассмотрим, как подключиться через SSH ключи на Linux.

1. Открываем терминал на локальном компьютере.

2. Выполняем команду ssh-keygen, чтобы сгенерировать ключи.

3. Нажимаем на Enter, чтобы сохранить ключи.

Появится уведомление о том, чтобы создать кодовую фразу для ключа, это дополнительная мера безопасности: при подключении к серверу будет запрашиваться кодовая фраза, которую будете знать только Вы. Можно отказаться от этой меры защиты, просто нажав на клавишу Enter.

После этого ключи будут успешно сгенерированы. Файлы d_rsa (приватный ключ) и id_rsa.pub (публичный ключ) хранятся в папке ~/.ssh/.



Теперь скопируем публичный ключ на удаленный сервер:

  1. Открываем терминал
  2. И выполняем команду ssh-copy-id [email protected], где root — логин для подключения к серверу по SSH, а 109.95.212.20 — IP-адрес сервера.

После выполнения этой команды публичный ключ будет скопирован на сервер. Теперь мы можем подключаться к удаленной машине с помощью логина и IP-адреса — например, ssh [email protected]. Ключи будут сопоставляться автоматически.

Отключение запроса пароля

Если мы попытаемся подключиться к серверу с другого компьютера, где нет ключа, то мы увидим запрос на ввод пароля. Чтобы авторизоваться можно было только по ключу, нужно запретить использования пароля при подключении по SSH.

  1. Подключаемся по SSH к нашему серверу.
  2. Выполняем команду nano /etc/ssh/sshd_config.
  3. Нам нужно найти строку Password Authentication yes и изменяем ее на Password Authentication no.
  4. Сохраняем изменения и перезапускаем службу SSH командой service ssh restart или systemctl restart ssh.

Авторизация по паролю отключена. Теперь подключиться к серверу можно только с компьютера, на котором сохранен приватный ключ.

Смотрите рейтинг лучших VPS-провайдеров в России, на нашем сайте.

Комментарии ()

  1. Ярослав 08 ноября 2022, 11:22 # 0
    Отличная статья. Много информации и все понятным языком!

    Последние отзывыpic


    Handyhost.ru

    Серёга, 7 февраля 2023 оценил

    Хорошие VPSки у данного провайдера. Качественные и стабильные. пинг хороший. Для моего сайта работает вполне хорошо. Никаких задер...


    xhost24.com

    Михаил548, 6 февраля 2023 оценил

    Перенес сюда свой сайт бесплатно, пользуюсь пару месяцев. Все устраивает, стоимость нормальная, сервис на высоте


    prohoster.info

    Сергей, 6 февраля 2023 оценил

    Решил попробовать данный хост, все работает стабильно. Адекватная цена, вопросов по работе не возникало, скорость устраивает. Подд...


    cloud4box.com

    Алиса Иванова, 6 февраля 2023 оценил

    Уже поменяла несколько хостингов. Выбор остановила на Клаудфобокс. Служба поддержки общается вежливо, чувствуется, что клиентов це...


    pq.hosting

    Константин, 3 февраля 2023 оценил

    Как по мне оптимальное соотношение цены и качества. Замечу, что в месяц аренда VPS обходится мне всего лишь в 8 долларов, что с уч...


    новые Статьи

    Установка Home Assistant на VPS c OC Ubuntu
    Установка NextCloud на VPS
    Установка PostgreSQL на VPS Ubuntu
    Установка Redmine на VPS c Ubuntu
    Сброс root пароля MySQL на VPS
    Читать все статьи