Здравствуйте, уважаемые клиенты и случайно заглянувшие искатели решения своей проблемы.
Сегодня рассмотрим подключение к серверу по протоколу SSH c помощью rsa ключей. Этот способ подключения к серверу, мало того что супер надежен, он еще и сверх удобен.
Смысл данного способа в чем, простыми словами, мы создаем 2 цифровых ключа, точнее можно сказать уникального «ключа» и уникального «замка». Они представляют собой хаотичный набор символов. «Замочек» мы кладем на наш сервер, «ключик» с помощью которого открывать, оставляем на своем ПК/Ноутбуке.
test_vpn_pub — наш «замочек».(pub — publick). Который, к слову, мы можем распределять на множество серверов, если у нас их несколько, что значительно упрощает жизнь при обслуживании.
test_vpn — наш уникальный «ключ», который ни в коем случае и ни под каким соусом, нельзя никому показывать(содержимое) или передавать файл.
Переходим к настройке.
Открываем PuttyGen
Нажимаем Generate
Надпись please generate some randomness by moving the mouse over the blank area гласит «Пожалуйста, хаотично водите мышью внутри серого прямоугольника»(это не дословный перевод, но суть в этом), очень грубо говоря, на основании этих движений будет создан ваш ключ.
Далее, мы можем закрепить надежность нашей ключевой пары, собственным паролем. Даже если ваш «ключ» каким -то образом и попадет в руки злоумышленников, без пароля от вашего ключа они не смогут им воспользоваться вашим. Данная процедура не обязательна, но желательна.
Сохраняем наши Приватный ключ обязательно куда-нибудь, где он не потеряется в случае сбоя системы и переустановки ОС, не на рабочий стол, как у меня (=
И Публичный ключ, выделяем от начала до конца и сохраняем в блокнотик
Далее, запускаем Pagent
Он открывается в свернутом режиме со всеми остальными приложениями на панели задач, кликаем add key
Выбираем наш ключ, вводим пароль подтверждения.
Проверяем наличие… Все получилось, ключ установился.
Далее, открываем Putty и логинемся на сервере для настройки сервера.
Вводим либо Хостнейм либо IP вашего сервера, если порт не стандартный, изменяем на свой.
Либо как у меня, вышеперечисленные данные уже заполнены и сохранены, я просто загружаюсь.
Вводим логин и пароль….
Открываем конфиг sshd, в любом, установленном у вас текстовом редакторе, у меня это nano. Для зеленого администратора как я это удобнее, нежели продвинутый vi / vim )
nano /etc/ssh/sshd_config
Изменяем данные значения.
PubkeyAuthentication yes — разрешаем аутентификацию по rsa ключам.
PasswordAuthentication no — аутентификация по паролю — нет.
PermitEmptyPasswords no — пустой пароль нет.
Выходим…
Ctrl + X
Сохраняем
Y Enter
Подтверждаем имя файла
Enter
Перезапускаем сервис sshd
service sshd restart
Переходим в каталог .ssh
cd .ssh
Смотрим наличие файла authorized_keys (в моем случае он уже создан, у вас скорее всего его не будет.)
создаем файл
nano authorized_keys
В него нам необходимо вставить содержимое нашего публичного ключа.
Выделяем содержимое, копируем содержимое и вставляем его в наш вновь созданный файл на сервере.
!!! ВАЖНО !!! Когда будете открывать ваш публичный ключ через текстовый редактор, не перепутайте его с приватным.
Выходим…
Ctrl + X
Сохраняем
Y Enter
Подтверждаем имя файла
Enter
Проверяем…
cat authorized_keys
Вот в общем-то и все настройки. Выходим с сервера и логинемся заново..
Как мы видим, в данный раз, мы авторизовались без пароля, при помощи нашей ключевой пары.
Как я писал выше, Публичный ключ мы можем раскидать по разным серверам, разумеется это несколько компрометирует данный способ защиты. Если ваш головной ключ попадет к злоумышленникам и он каким-то образом подберет пароль, он попадет на все ваши сервера. Но это уже как говориться, совершенно другая история.) Учитывайте данный момент при использовании данного способа.
А на этом у меня всё, Всем море удачи и дачу у моря =)