PuTTY — это популярный графический SSH-клиент для Windows, который также доступен и для Linux, включая Debian. Он предоставляет удобный интерфейс для подключения к удалённым серверам, управления сохранёнными сессиями, передачи файлов (PSCP) и генерации ключей (PuTTYgen). Если вы только начинаете знакомство с Linux или привыкли к PuTTY на Windows, он может стать удобной альтернативой консольному ssh.
В этом руководстве я покажу два способа установки PuTTY на Debian:
- APT — из официальных репозиториев (рекомендуемый для большинства)
- Flatpak — для получения более свежей версии в изолированной среде
| Метод | Канал | Версия | Обновления | Для кого |
|---|---|---|---|---|
| APT | Репозитории Debian | Зависит от релиза (0.83.x на Debian 13) | Через apt upgrade | Большинство пользователей |
| Flatpak | Flathub | Последняя стабильная | Через flatpak update | Те, кто хочет свежую версию в изоляции |
⚠️ Важно: PuTTY не входит в стандартную установку Debian, но доступен в официальных репозиториях.
Предварительные требования
Перед установкой убедитесь, что:
- У вас есть доступ к интернету
- Вы имеете права
sudo(администратора)
⚠️ ВАЖНО: Проверьте права sudo перед установкой
Если вы не уверены, есть ли у вашего пользователя права администратора, выполните в терминале:
sudo whoami
Что делает: sudo — выполняет команду от имени суперпользователя; whoami — показывает имя текущего пользователя.
✅ Ожидаемый вывод в терминале:
root
❌ Если выводит is not in the sudoers file — сначала пройдите наше руководство по настройке sudo.
Способ 1: Установка PuTTY через APT (рекомендуемый)
Этот способ наиболее привычен для Debian: программа устанавливается через apt и обновляется вместе с системой.
Шаг 1: Обновите систему
sudo apt update && sudo apt upgrade -y
Шаг 2: Установите PuTTY и дополнительные инструменты
sudo apt install -y putty putty-tools
Что делает:
putty— графический SSH-клиентputty-tools— утилиты командной строки:pscp(копирование файлов),psftp(FTP-подобная передача),puttygen(генерация ключей)
Шаг 3: Проверьте установку
pscp --version
✅ Ожидаемый вывод (зависит от версии Debian):
- Debian 13:
pscp: Release 0.83 - Debian 12:
pscp: Release 0.78 - Debian 11:
pscp: Release 0.74
Способ 2: Установка PuTTY через Flatpak (альтернатива)
Этот способ подойдёт, если вы предпочитаете изолированные приложения или хотите получить более свежую версию.
Шаг 1: Установите Flatpak (если ещё не установлен)
Если Flatpak не установлен, сначала пройдите наше руководство по установке Flatpak на Debian.
Шаг 2: Добавьте репозиторий Flathub (если ещё не добавлен)
sudo flatpak remote-add --system --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
Шаг 3: Установите PuTTY
sudo flatpak install --system flathub uk.org.greenend.chiark.sgtatham.putty
Шаг 4: Проверьте установку
flatpak list | grep -i putty
✅ Ожидаемый вывод:
PuTTY uk.org.greenend.chiark.sgtatham.putty 0.83 stable flathub
Шаг 5: Запустите Flatpak-версию
flatpak run uk.org.greenend.chiark.sgtatham.putty
⚠️ Примечание для Flatpak: Версия PuTTY из Flatpak работает в изолированной среде. Для передачи файлов через pscp может потребоваться дополнительная настройка прав. В большинстве случаев проще использовать APT-версию.
Запуск PuTTY
Запуск из терминала
putty
Запуск из меню приложений
Найдите PuTTY в меню приложений (обычно в категории «Интернет» или «Сеть»). В GNOME: Activities → Показать приложения → PuTTY SSH Client.
Основы работы с PuTTY
Сохранение SSH-сессий
- Запустите
putty - В поле Host Name (or IP address) введите адрес сервера
- Убедитесь, что порт 22 и тип подключения SSH
- В поле Saved Sessions введите имя сессии (например,
My Server) - Нажмите Save
В следующий раз вы сможете загрузить сессию двойным щелчком по имени в списке.
Настройка внешнего вида
- Шрифт: Window → Appearance → Change
- Цвета: Window → Colours → Modify
- Прозрачность (X11): Window → Behaviour → Adjust window transparency slider
Генерация SSH-ключей (PuTTYgen)
PuTTY использует свой формат ключей .ppk. Чтобы сгенерировать пару ключей:
mkdir -p ~/.ssh && chmod 700 ~/.ssh
puttygen -t ed25519 -o ~/.ssh/putty-key.ppk
Что делает: Генерирует приватный ключ в формате PuTTY (Ed25519 — наиболее безопасный алгоритм). При запросе введите парольную фразу (passphrase) для защиты ключа.
Извлечение публичного ключа в формате OpenSSH (для добавления на сервер):
puttygen -L ~/.ssh/putty-key.ppk > ~/.ssh/putty-key.pub
cat ~/.ssh/putty-key.pub
Копирование публичного ключа на удалённый сервер:
ssh-copy-id -i ~/.ssh/putty-key.pub user@remote-server
Настройка PuTTY для использования ключа:
- Загрузите сессию
- Перейдите в Connection → SSH → Auth → Credentials
- В поле Private key file for authentication выберите
~/.ssh/putty-key.ppk - Сохраните сессию
Настройка X11 Forwarding
Если вам нужно запускать графические приложения с удалённого сервера, включите X11 Forwarding.
На сервере: убедитесь, что в /etc/ssh/sshd_config есть X11Forwarding yes:
grep X11Forwarding /etc/ssh/sshd_config
Если нет — добавьте и перезапустите SSH.
В PuTTY:
- Загрузите сессию
- Перейдите в Connection → SSH → X11
- Отметьте Enable X11 forwarding
- Сохраните сессию
После подключения проверьте переменную DISPLAY и запустите тестовое приложение:
echo $DISPLAY # должно выдать localhost:10.0
sudo apt install -y x11-apps # если xeyes не установлен
xeyes
Передача файлов с PSCP
PSCP — командная утилита для копирования файлов, входящая в putty-tools.
Загрузить файл на сервер:
pscp local-file.txt user@remote-server:/path/to/destination
Скачать файл с сервера:
pscp user@remote-server:/path/to/remote-file.txt local-destination
Скопировать директорию рекурсивно:
pscp -r local-directory user@remote-server:/path/to/destination
Использование с ключом (если настроен ключ в PuTTYgen):
pscp -i ~/.ssh/putty-key.ppk local-file.txt user@remote-server:/path/to/destination
На нестандартном порту SSH (например, 2222):
pscp -P 2222 local-file.txt user@remote-server:/path/to/destination
Решение типичных проблем
8.1 Ошибка: Network error: Connection refused
Симптом: PuTTY не может подключиться к серверу, выдаёт ошибку.
Причина: SSH-сервер не запущен или не слушает порт 22, или порт заблокирован файрволом.
Пошаговое решение:
Шаг 1: На удалённом сервере проверьте статус SSH:
sudo systemctl status ssh
✅ Ожидаемый вывод: Active: active (running)
Шаг 2: Если SSH не запущен — запустите и включите автозагрузку:
sudo systemctl enable --now ssh
Шаг 3: Проверьте, открыт ли порт 22 в файрволе (на удалённом сервере):
sudo ufw status | grep 22
Если порт не разрешён — разрешите:
sudo ufw allow ssh
8.2 Ошибка: Host key verification warning
Симптом: PuTTY выдаёт предупреждение о том, что ключ хоста не совпадает.
Причина: Вы подключаетесь к серверу впервые (нормально) или ключ сервера действительно изменился (переустановка ОС, замена IP).
Пошаговое решение:
Шаг 1: Если вы подключаетесь впервые — убедитесь, что отпечаток ключа соответствует ожидаемому, и нажмите Accept.
Шаг 2: Если сервер переустанавливался и вы уверены в безопасности — удалите старый ключ в PuTTY (Tools → Clean up saved host keys) или в файле ~/.putty/sshhostkeys.
Шаг 3: Если предупреждение появляется для сервера, к которому вы подключались раньше и не меняли его — обратитесь к администратору сервера (возможно, атака).
8.3 Ошибка: Disconnected: No supported authentication methods available (publickey)
Симптом: PuTTY не может войти по ключу, хотя ключ вроде бы добавлен.
Причина: Неправильные права на ~/.ssh/ или authorized_keys на сервере, или публичный ключ в неверном формате.
Пошаговое решение:
Шаг 1: На сервере проверьте права:
ls -la ~/.ssh/
Права: ~/.ssh = 700, authorized_keys = 600.
Если не так — исправьте:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
Шаг 2: Убедитесь, что вы экспортировали публичный ключ в OpenSSH-формате (команда puttygen -L). Проверьте содержимое ~/.ssh/authorized_keys — там должна быть строка, начинающаяся с ssh-ed25519 или ssh-rsa.
Шаг 3: В PuTTY проверьте, что в Connection → SSH → Auth → Credentials указан правильный путь к .ppk-файлу.
8.4 Ошибка: puttygen: command not found
Симптом: Команда puttygen не найдена.
Причина: Не установлен пакет putty-tools.
Пошаговое решение:
Шаг 1: Установите пакет:
sudo apt install -y putty-tools
Шаг 2: Проверьте:
puttygen --help
8.5 Проблема: X11 forwarding не работает
Симптом: Вы включили X11 forwarding, но при запуске графического приложения (например, xeyes) оно не появляется или выдаёт ошибку cannot open display.
Причина: X11 forwarding не включён на сервере, или xauth не установлен, или у вас нет локального X-сервера (на Linux он обычно есть).
Пошаговое решение:
Шаг 1: На сервере проверьте настройки:
grep X11Forwarding /etc/ssh/sshd_config
Должно быть X11Forwarding yes. Если нет — раскомментируйте или добавьте, затем перезапустите SSH:
sudo sed -i 's/^#*X11Forwarding.*/X11Forwarding yes/' /etc/ssh/sshd_config
sudo systemctl restart ssh
Шаг 2: На сервере установите xauth:
sudo apt install -y xauth
Шаг 3: В PuTTY: Connection → SSH → X11 → отметьте Enable X11 forwarding.
Шаг 4: После подключения проверьте переменную DISPLAY:
echo $DISPLAY
✅ Ожидаемый вывод: localhost:10.0 или подобное.
Шаг 5: Установите тестовое приложение (если нет) и проверьте:
sudo apt install -y x11-apps
xeyes
Что делает: x11-apps — пакет с простыми X11-программами. xeyes — маленькое приложение, которое рисует глаза, следящие за курсором мыши. Если окно xeyes появилось на вашем локальном экране — X11 forwarding работает.
Чек-лист: что проверить после установки
- [ ] PuTTY установлен:
putty --helpвыводит справку (или открывается окно) - [ ] Утилиты командной строки установлены:
pscp --versionпоказывает версию - [ ] Можно сохранить сессию: откройте PuTTY, введите hostname, нажмите Save
- [ ] Генерация ключей работает:
puttygen -t ed25519 -o test.ppkсоздаёт файл - [ ] PSCP копирует файлы:
pscp local.txt user@host:/tmp/успешно выполняется
Удаление PuTTY
Удаление APT-версии
sudo apt remove putty putty-tools
sudo apt autoremove
Удаление Flatpak-версии
sudo flatpak uninstall uk.org.greenend.chiark.sgtatham.putty
Удаление пользовательских настроек (опционально)
rm -rf ~/.putty
Часто задаваемые вопросы (FAQ)
Вопрос: PuTTY уже есть в репозиториях Debian?
Ответ: Да. Установка через apt — стандартный и рекомендуемый способ.
Вопрос: В чём разница между PuTTY и OpenSSH?
Ответ: OpenSSH — консольный SSH-клиент, стандартный для Linux. PuTTY — графический, удобен для сохранения сессий и для тех, кто привык к нему на Windows. Оба используют одинаковые протоколы и безопасны.
Вопрос: Поддерживает ли PuTTY Ed25519 ключи?
Ответ: Да, начиная с версии 0.68. В Debian 11, 12, 13 все версии новее, поэтому можно использовать puttygen -t ed25519.
Вопрос: Как использовать PuTTY для подключения по SSH через нестандартный порт?
Ответ: В поле Port укажите нужный порт (например, 2222) или в командной строке: putty -P 2222 user@host.
Вопрос: Нужно ли устанавливать putty-tools для работы pscp?
Ответ: Да, pscp, psftp и puttygen входят в пакет putty-tools. Сам графический клиент — в putty.
Заключение
Теперь PuTTY установлен на вашем Debian. Вы можете:
- Подключаться к серверам по SSH через удобный графический интерфейс
- Сохранять сессии и настройки
- Использовать X11 forwarding для запуска графических приложений с сервера
- Передавать файлы через PSCP
Что дальше?
- Настройте сервер OpenSSH для безопасного подключения
- Установите FileZilla для графического SFTP
- Усильте безопасность сервера с помощью Fail2ban