Два способа зайти на сервер из Windows: клиент ssh в PowerShell и PuTTY. От первого входа по паролю до входа по ключу без пароля.
SSH - это способ управлять сервером из командной строки. Разберём, как подключиться к серверу через PuTTY и через встроенный в Windows клиент ssh (он работает в PowerShell и Windows Terminal). Оба способа делают одно и то же - ниже оба, от первого входа по паролю до входа по ключу без пароля.
Коротко. Возьмите в панели IP-адрес сервера и пароль root. Встроенный клиент:ssh root@IP, подтвердите отпечаток, введите пароль. Затем создайте ключssh-keygenи скопируйте его на сервер - пароль больше не понадобится. В PuTTY то же самое: адрес в поле Host Name, ключ в разделе Auth.
Что нужно перед началом
Откройте в панели страницу вашего сервера. Там есть IPv4-адрес и пароль пользователя root - это данные для входа. Пароль скопируйте сразу: при вводе в терминал он не отображается. Если сервера ещё нет, сначала закажите его по инструкции «Как заказать первый VPS».
Путь A. Подключение через встроенный клиент Windows (PowerShell / Windows Terminal)
В Windows 10 и 11 клиент SSH уже установлен. Отдельная программа не нужна: открываете Terminal или PowerShell и работаете. Везде ниже 203.0.113.10 - это пример, подставьте IP своего сервера.
Шаг 1. Проверить, что клиент на месте
Откройте PowerShell (или Windows Terminal) и наберите:
ssh -VОтвет вида OpenSSH_for_Windows_9.5p1, LibreSSL 3.8.2 - клиент есть. Если пишет, что команда не найдена: Параметры -> Приложения -> Дополнительные компоненты -> Добавить компонент -> «Клиент OpenSSH».
Шаг 2. Первое подключение по паролю
Подключаемся под root по адресу из панели:
ssh [email protected]В самый первый раз клиент показывает отпечаток ключа сервера и просит подтверждение:
The authenticity of host '203.0.113.10' can't be established.ED25519 key fingerprint is SHA256:cKeo+ciXwbZg9QmHHyE95H852Bl2tZtd7O48ewydBC8.Are you sure you want to continue connecting (yes/no/[fingerprint])?Это защита от подмены сервера. Сверьте отпечаток с тем, что показывает панель, наберите yes - отпечаток запомнится и больше спрашиваться не будет. Затем введите пароль root (символы при вводе не появляются - это нормально) и нажмите Enter. Вы на сервере.
Шаг 3. Создать ключ, чтобы не вводить пароль
Ключ - это пара файлов на вашем компьютере. Закрытый остаётся у вас, открытый кладётся на сервер; кто предъявил закрытый ключ, того сервер и пускает. Перебрать ключ нельзя, пароль больше не нужен. Создаём пару на своём компьютере:
ssh-keygen -t ed25519 -C "you@laptop"На все три вопроса можно нажать Enter. Passphrase (пароль на сам ключ) ставить не обязательно, но с ним надёжнее, если ноутбук потеряется. Появятся два файла в C:\Users\Имя\.ssh: id_ed25519 - закрытый, никому не передавать; id_ed25519.pub - открытый, идёт на сервер.
Шаг 4. Скопировать открытый ключ на сервер
Команды ssh-copy-id в Windows нет, поэтому копируем одной строкой: читаем локальный .pub-файл и дописываем его в authorized_keys на сервере.
type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh [email protected] "mkdir -p ~/.ssh; cat >> ~/.ssh/authorized_keys; chmod 600 ~/.ssh/authorized_keys"Пароль root спросят в последний раз.
Шаг 5. Вход по ключу
Подключаемся снова:
ssh [email protected]Теперь вход происходит сразу, без запроса пароля.
Шаг 6. Короткое имя вместо IP
Чтобы не печатать адрес и имя пользователя каждый раз, опишите сервер в файле %USERPROFILE%\.ssh\config (создайте, если его нет):
Host web-01 HostName 203.0.113.10 User root IdentityFile ~/.ssh/id_ed25519После этого достаточно:
ssh web-01Путь B. Подключение через PuTTY
PuTTY - бесплатная программа с putty.org. Удобна тем, что все настройки в одном окне и сохраняются профилем. При установке ставятся и вспомогательные puttygen.exe (генератор ключей) и plink.exe (тот же клиент для командной строки). Если подключиться через PuTTY не удаётся, смотрите раздел «Частые ошибки» ниже.
Шаг 1. Session: адрес и порт
В поле Host Name (or IP address) впишите IP из панели, Port оставьте 22, тип соединения - SSH.
Шаг 2. Сохранить профиль
Впишите имя в поле Saved Sessions и нажмите Save. В следующий раз выберете профиль из списка и нажмёте Load.
Шаг 3. Имя пользователя
Слева раскройте Connection -> Data, в поле Auto-login username впишите root (или имя вашего пользователя) - тогда PuTTY не будет спрашивать логин при каждом входе.
Шаг 4. Ключ вместо пароля
PuTTY использует свой формат ключа - .ppk. Запустите PuTTYgen, нажмите Generate, подвигайте мышью в окне для случайности, затем Save private key. Текст из верхнего поля PuTTYgen (открытый ключ) скопируйте на сервер в authorized_keys - как в шаге 4 пути A.
Затем в PuTTY: Connection -> SSH -> Auth -> Credentials, поле Private key file for authentication - укажите сохранённый .ppk.
Шаг 5. Первое подключение
Нажмите Open. При первом соединении PuTTY покажет Security Alert с отпечатком ключа сервера - тот же контроль подлинности, что и yes во встроенном клиенте. Сверьте отпечаток с панелью и нажмите Accept.
plink: PuTTY из командной строки
Если PuTTY уже настроен, из PowerShell можно подключаться и без окна:
plink -ssh [email protected]Первый раз спросит Store key in cache? (y/n) - нажмите y, затем введите пароль (или сработает ключ, если он указан в профиле).
Частые ошибки
Connection timed out- до сервера не доходит: неверный IP, сервер выключен или порт закрыт файрволом. Проверьте адрес в панели и состояние сервера.Connection refused- сервер отвечает, но на 22-м порту никто не слушает:sshdне запущен или SSH на другом порту. Зайдите через веб-консоль в панели.Permission denied (publickey,password)- неверный пароль либо вход по паролю выключен, а ключ не подхватился. Проверьте на сервере права:~/.ssh- 700,authorized_keys- 600.REMOTE HOST IDENTIFICATION HAS CHANGED- ключ сервера изменился (обычно после переустановки ОС). Удалите старую запись командойssh-keygen -R 203.0.113.10и подключитесь заново.
Вопросы и ответы
Нужен ли PuTTY в Windows 10 и 11?
Нет. В Windows 10 и 11 уже есть встроенный клиент OpenSSH - команда ssh в PowerShell или Windows Terminal. PuTTY ставят, когда нужен графический интерфейс с сохранёнными профилями подключений.
Что делать, если не удаётся подключиться через PuTTY?
Проверьте IP-адрес и порт 22 в поле Host Name, статус сервера в панели и сообщение об ошибке. Разбор частых сообщений («Connection timed out», «Connection refused», «Permission denied») - в разделе «Частые ошибки». Если SSH недоступен совсем, зайдите на сервер через веб-консоль в панели.
PuTTY или встроенный клиент - что выбрать?
Для разовых задач - встроенный ssh: он уже есть и работает так же, как в macOS и Linux. PuTTY удобнее, когда серверов много и нужны профили с сохранёнными настройками.
Где в Windows лежат ключи?
В папке C:\Users\Имя\.ssh. Встроенный клиент ищет их там сам. Для PuTTY нужен файл .ppk, путь к нему задаётся в настройках профиля.
Можно ли ключ из встроенного клиента использовать в PuTTY?
Да. Откройте id_ed25519 в PuTTYgen (Conversions -> Import key) и сохраните как .ppk.
Нужно ли менять пароль root после настройки ключа?
Пароль root в панели остаётся - он нужен для веб-консоли. А вход по паролю в SSH после настройки ключа стоит выключить на стороне сервера.
Коротко
- IP и пароль root - на странице сервера в панели.
- Встроенный клиент:
ssh root@IP, подтвердить отпечаток, ввести пароль. - Ключ:
ssh-keygen -t ed25519, затем скопироватьid_ed25519.pubвauthorized_keysна сервере - вход без пароля. - PuTTY: адрес в Session, логин в Connection > Data, ключ
.ppkв SSH > Auth > Credentials. - Отпечаток при первом подключении сверяйте с панелью - это защита от подмены сервера.
~/.ssh/config- чтобы вместо длинной команды писатьssh web-01.
