
Что такое PuTTY и зачем использовать SSH-ключи
Для начала давайте разберемся с понятием PuTTY. Данный бесплатный клиент используется для удаленного подключения к другим машинам по сети. С помощь этой программы-клиента можно легко подключать по SSH, предоставлять доступ к командной строке удаленного сервера или использовать Rlogin, Telnet, и Serial. Клиент предоставляет возможность управлять сервером со своего компьютера.
Что же касается, SSH — это защищенный протокол для удаленного доступа. И подключение к нему можно осуществить с помощью SSH-ключей или используя пароль. Использование SSH-ключей более безопасно и их очень сложно взломать. Кроме того, есть возможность автоматизации подключения.
Генерация SSH-ключей для безопасного доступа
На локальной станции, с которой вы планируете подключение к удаленному серверу нужно начать с запуска командной строки и создания SSH-ключа. Вот пример команды для создания ключа:
ssh-keygen -t ed25519
После создания ключа нужно его добавить в личный кабинет. По умолчанию ключи сохраняются в каталоге .ssh в профиле локального юзера. Откройте этот каталог и откройте файл любым доступным текстовым редактором и скопируйте его в буфер обмена.
Далее нужно перейти в сайт вашего хостинг провайдера и в настройках выбрать – Управление SSH-ключами и Добавить ключ.
После того как откроется окно в Публичном ключе нужно будет вставить сохраненный файл из буфера обмена. Также необходимо будет указать имя для сохранения и нажать на – Добавить ключ.
Настройка PuTTY для работы с приватным ключом
Если ключ находится в формате id_ed25519 его необходимо конвертировать для этого следуйте пошаговой инструкции:
- Запустите PuTTYgen
- Нажмите Load
- Выберите файл приватного ключа
- Далее нужно нажать на сохранить приватный ключ
- И сохранить его в формате .ppk
Следующим шагом будет настройка PuTTY. Для настройки нужно не забыть внесения порта 22 и выбрать тип соединения SSH.
Это интересно: CyberPanel vs. cPanel: Как выбрать идеальную панель управления?
Пошаговое подключение к серверу через SSH с PuTTY
После покупки нужного хостинга вы можете подключать к нему через SSH. На начальном этапе подключение будет возможно из командной строки с учетной записью root. Для подключения к серверу нужно открыть командную строку и ввести следующую команду:
ssh root@X.X.X.X
Вместо X.X.X.X необходимо будет ввести IP вашего виртуального сервера. После чего, нужно будет перенести SSH-ключ от root к другому пользователю. Для этого процесса надо сначала создать нового пользователя следующим образом:
# adduser Jane
Созданный пользователь должен быть наделен полномочиями админа для этого учетную запись нужно добавить в группу sudo. В зависимости от используемой ОС команда для данного процесса может немного отличатся, к примеру для CentOS:
# usermod -aG wheel Jane
Передача и настройка публичного ключа на сервере
Для того чтобы переключится на аккаунт новой учетной записи нужно использовать:
# su – Jane
Следующим шагом будет создание в домашней директории юзера каталога .ssh:
$ cd ~
$ mkdir -p ~/.ssh
Далее нужно завершить сессию своего юзера и вернутся в сеанс root с помощью комбинаций клавиш Ctrl D. Находясь в суперюзере нужно переместить ключ из этого юзер в профиль учетной записи и файл должен находится в каталоге .ssh:
# mv ~/.ssh/authorized_keys /home/jane/.ssh/
Потом подключитесь с помощью учетной записи вашего пользователя для корректной настройки прав доступа к директории с ключом.
# su – Jane
После подключения нужно удалить все права для других юзеров и групп внутри директории .ssh:
$ sudo chmod -R go= ~/.ssh
Кроме того, нужно изменить юзера в директории:
$ sudo chown -R $USER:$USER ~/.ssh
Чтобы проверить корректность настроек, нужно отключиться от сервера. И чтобы подключиться нужно с помощью командной строки выполнить следующую команду:
ssh your-user@X.X.X.X (замените IP и имя пользователя).

Часто спрашивают: Выделенный IP-адрес: нужен ли он вашему сайту и какие преимущества дает
Защита SSH-ключей и рекомендации по безопасности
Основные рекомендации по безопасности:
- Лучше всего использовать современные алгоритмы, хороший вариант Ed25519.
- Нужно использовать passphrase длинной приблизительно 15-20 символов и сохранять в password manager.
- Должна присутствовать защита на стороне сервера.
- Использование ssh-agent и регулярная ротация ключей.
Часто спрашивают: Первичный DNS: ключевая роль в работе домена и настройке сайта
Сравнение аутентификации: пароль vs SSH-ключ
Аутентификация по паролю функционирует следующим образом – юзер вводит пароль, хеш проверяется сервером, и если все совпадает осуществляется доступ. Среди основных трудностей, которые связаны с этим вариантом можно выделить большую вероятность фишинга, brute-force, повторное использование пароля, и тому подобные риски.
При аутентификации по SSH-ключу – у юзера есть закрытый ключ, на сервере находится публичный и клиент осуществляет вход с помощью приватного ключа. Таким образом, в данном подходе присутствует криптографическая стойкость, нет возможности передачи секрета, это отличный вариант для автоматизации, и невозможен фишинг.