opened image

Подключение к VPS серверу по SSH ключу

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

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

К примеру Вы уже пробрели сервер из личного кабинета. Как это сделать описано в данной статье. Далее в личном кабинете скопируйте данные доступа из Инструкции.


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


В поле Host Name (or IP address) вводим IP Вашего сервера. В поле Port вводим 22.

Для генерации пары ключей, есть утилита ssh-keygen. По умолчанию она уже установлена, Она создает пару 2048-битных ключей RSA, которые нам подходят.
 

От имени пользователя, для которого нужно создать ключи выполнить команду (в данном случае это root):

 

ssh-keygen


На задаваемые вопросы в процессе генерации, можете просто нажать Enter. Так как наша цель просто сгенерировать ключ. 

И получаем приблизительную картину:



После этого, содержимое файла id_rsa.pub , следующей командой, помещаем в файл ~/.ssh/authorized_keys:

 

 

 

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

 


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

 

 

 

 

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

 

Теперь, что бы авторизоваться по созданному ключу, необходимо включить аутентификацию по ключу в файле /etc/ssh/sshd_config. Для этого отредактируем его. 

 

vim /etc/ssh/sshd_config


Находим строку PubkeyAuthentication , расскоментируем ее если она закомментирована, и приводим ее к виду:

 

 

 

PubkeyAuthentication yes

 


Сохраняем изменения. 

 

 

 

После чего перезапускаем службу:

 

 

 

service sshd reload

 

Теперь выводим в консоль ключ, что бы скопировать себе на ПК.

 

 

cat ~/.ssh/id_rsa




Копируем от начала: 

 

-----BEGIN OPENSSH PRIVATE KEY-----


До конца:

 

 

 

-----END OPENSSH PRIVATE KEY-----

 

Добавляем в PuttyGen. Данная программа установилась вместе с Putty.


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



Можем теперь использовать приватный ключ для подключения по SSH.

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



После этого возвращаемся в категорию Session, в поле Host Name (or IP adress) вводим IP Вашего сервера. В поле Port вводим 22. В Поле Saved Sessions, введите любое имя, и нажмите Save

Теперь для подключения по ключу, выберите свой сервер из списка Saved Sessions, и нажмите Load и Open

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

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