PuTTY — лёгкий и проверенный временем SSH-клиент для Windows, удобный, когда нужны сохранённые сессии и графическое окно настроек. В этом руководстве вы подключитесь к VPS Linux Infrawire, не дадите сессии оборваться, перейдёте на вход по ключу с помощью PuTTYgen и Pageant и передадите файлы через pscp.
📋 Требования
- Windows 10 или 11.
- Работающий Linux VPS (Ubuntu 24.04, Debian 12, AlmaLinux 9 или Rocky 9).
- IP-адрес VPS и пароль root: в личном кабинете вы найдёте IP и пароль root вашего VPS.
- Установленный PuTTY, в состав которого входят
putty.exe,puttygen.exe,pageant.exeиpscp.exe.
Если у вас есть winget, установка занимает одну строку в PowerShell:
PowerShellwinget install PuTTY.PuTTY
🔌 Создание и сохранение сессии
- Запустите PuTTY. В разделе Session введите
VPS_IPв поле Host Name (or IP address). - Оставьте Port равным
22(или вашему нестандартному порту), а Connection type — SSH. - В поле Saved Sessions введите имя, например
myvps, и нажмите Save. - По желанию: в Connection > Data укажите
rootв Auto-login username, чтобы логин не запрашивался. - Вернитесь в Session, выберите
myvps, снова нажмите Save, затем Open.
При первом подключении PuTTY показывает окно PuTTY Security Alert с отпечатком ключа сервера. Нажимайте Accept, только если доверяете серверу: ключ запомнится в реестре.
⏱️ Защита от разрывов с помощью keepalive
Простаивающие сессии часто обрывают маршрутизаторы и брандмауэры. Откройте Connection, установите Seconds between keepalives равным 30, вернитесь в Session и снова сохраните myvps. Теперь PuTTY будет отправлять небольшой пакет каждые 30 секунд.
🔑 Создание пары ключей в PuTTYgen
Откройте PuTTYgen, выберите тип ключа EdDSA (Ed25519) и нажмите Generate, двигая мышью по пустой области. Затем:
- Введите Key passphrase и подтвердите её.
- Нажмите Save private key и сохраните файл
.ppkв надёжном месте. - Скопируйте текст из Public key for pasting into OpenSSH authorized_keys file.
Войдите по паролю и установите открытый ключ на VPS (вставьте скопированную строку в файл):
Bashmkdir -p ~/.ssh && chmod 700 ~/.ssh nano ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys
В PuTTY откройте Connection > SSH > Auth > Credentials, укажите ваш .ppk в Private key file for authentication, вернитесь в Session и сохраните. Чтобы использовать уже имеющийся закрытый ключ OpenSSH, воспользуйтесь PuTTYgen: Conversions > Import key, затем Save private key.
🧩 Однократная загрузка ключа в Pageant
Pageant — это агент ключей PuTTY. Запустите pageant.exe, он появится в области уведомлений, щёлкните правой кнопкой по его значку, выберите Add Key, укажите .ppk и один раз введите парольную фразу. Пока Pageant работает, PuTTY и pscp используют ключ без повторных запросов. Закройте Pageant, чтобы ключ был забыт.
📂 Передача файлов через pscp
pscp.exe — консольная утилита копирования из набора PuTTY. Обратите внимание на заглавную -P для порта. В PowerShell:
PowerShell# Отправить файл pscp -P 22 C:\Users\USER\Documents\site.zip root@VPS_IP:/root/ # Скачать файл pscp -P 22 root@VPS_IP:/var/log/syslog C:\Users\USER\Downloads\ # Отправить целую папку pscp -r -P 22 C:\Users\USER\project root@VPS_IP:/root/ # Использовать конкретный ключ pscp -i C:\keys\vps.ppk site.zip root@VPS_IP:/root/
Если pscp не найден, вызовите его по полному пути, например & 'C:\Program Files\PuTTY\pscp.exe'.
✅ Проверка подключения
После входа убедитесь, что используется ключ и что вы на нужной машине:
Bashwhoami hostname cat /etc/os-release sudo grep 'Accepted publickey' /var/log/auth.log | tail -n 3
Последняя команда работает в Ubuntu/Debian; в AlmaLinux/Rocky используйте sudo journalctl -u sshd | grep Accepted | tail -n 3. В заголовке окна PuTTY отображается подключённая сессия, а Event Log (правый щелчок по заголовку) показывает этапы аутентификации.
🛠️ Устранение неполадок
Network error: Connection timed out / refused. Проверьте VPS_IP и порт, запущен ли VPS и слушает ли SSH (sudo systemctl status ssh в Ubuntu/Debian, sshd в AlmaLinux/Rocky). Порт также может блокировать локальный брандмауэр или корпоративная сеть.
Server refused our key / Disconnected: No supported authentication methods available. Открытый ключ вставлен не одной строкой, указан не тот пользователь или права слишком широкие. Перепроверьте authorized_keys, выполните chmod 700 ~/.ssh и chmod 600 ~/.ssh/authorized_keys и убедитесь, что .ppk соответствует открытому ключу.
Unable to use key file (OpenSSH SSH-2 private key). PuTTY не может прочитать этот формат. Преобразуйте ключ в PuTTYgen (Conversions > Import key) или обновите PuTTY до актуальной версии.
Сессия зависает через несколько минут. Задайте интервал keepalive, описанный выше.
🚀 PuTTY настроен: сохранённая сессия, вход по ключу и передача файлов. Следующий шаг: отключить вход по паролю, когда ключ заработает.