SSH — основной способ работать с Linux-сервером: через него вы вводите команды, копируете файлы и настраиваете проект. Хорошая новость: отдельные программы почти никому не нужны — SSH-клиент уже встроен в Windows 10 и 11, macOS и любой Linux. Разберём, как подключиться к VPS в первый раз, как перейти с пароля на ключ и что делать с типичными ошибками.
Что понадобится. IP-адрес сервера, имя пользователя (на новом сервере это root) и пароль или SSH-ключ. В Verdian Cloud всё это есть в карточке сервера в личном кабинете.
Подключение из Windows
В Windows 10 и 11 клиент OpenSSH установлен по умолчанию. Откройте Терминал или PowerShell (правый клик по кнопке «Пуск») и выполните:
ssh [email protected]Вместо 203.0.113.10 подставьте IP-адрес своего сервера. Если Windows отвечает, что команда ssh не найдена, клиент отключён: включите его в «Параметры → Система → Дополнительные компоненты → Клиент OpenSSH».
Раньше для Windows обычно советовали PuTTY. Он по-прежнему работает, но у него свой формат ключей (.ppk), который нужно конвертировать через PuTTYgen. Если вы начинаете с нуля, проще пользоваться встроенным ssh — команды будут такими же, как во всех инструкциях в интернете.
Подключение из macOS и Linux
Откройте приложение «Терминал» и выполните ту же команду:
ssh [email protected]Если SSH на сервере слушает нестандартный порт, укажите его флагом -p:
ssh -p 2222 [email protected]Первое подключение: отпечаток сервера
При первом подключении клиент спросит, доверяете ли вы серверу:
The authenticity of host '203.0.113.10' can't be established.
ED25519 key fingerprint is SHA256:...
Are you sure you want to continue connecting (yes/no/[fingerprint])?Это нормально: клиент ещё не знает ключ этого сервера. Введите yes — отпечаток сохранится в файле ~/.ssh/known_hosts, и в следующий раз вопроса не будет. Затем введите пароль. Символы при вводе пароля не отображаются — это тоже нормально, просто наберите его и нажмите Enter.
Вход по ключу вместо пароля
Пароль можно подобрать перебором, ключ — практически нет. Создайте пару ключей на своём компьютере — команда одинакова для Windows, macOS и Linux:
ssh-keygen -t ed25519 -C "my-laptop"Появятся два файла: закрытый id_ed25519, который никому не передаётся, и открытый id_ed25519.pub, который кладут на серверы.
- Для нового сервера проще всего добавить открытый ключ в профиле личного кабинета и выбрать его при заказе или переустановке системы — он сразу окажется на сервере.
- Для уже работающего сервера в macOS и Linux выполните
ssh-copy-id [email protected]. В Windows такой команды нет — откройте на сервере файл~/.ssh/authorized_keysи вставьте в него содержимоеid_ed25519.pubодной строкой.
После этого ssh [email protected] будет пускать без пароля. Следующий шаг — запретить вход по паролю совсем; как сделать это безопасно, рассказали в статье «Первые 15 минут после покупки VPS».
Короткие имена для серверов
Чтобы не помнить IP-адреса, опишите серверы в файле ~/.ssh/config (в Windows — C:\Users\Имя\.ssh\config):
Host prod
HostName 203.0.113.10
User deploy
IdentityFile ~/.ssh/id_ed25519Теперь достаточно набрать ssh prod. Это же имя понимают scp, rsync и Git.
Как скопировать файлы на сервер
Для одного-двух файлов хватит scp, который идёт вместе с SSH:
scp ./backup.sql [email protected]:/root/
scp [email protected]:/var/log/nginx/error.log ./Для каталогов и регулярной синхронизации удобнее rsync — он передаёт только изменившиеся файлы. Если привычнее работать мышкой, подойдут WinSCP или FileZilla: выберите протокол SFTP и укажите те же адрес, пользователя и ключ.
Частые ошибки
| Сообщение | Что значит и что делать |
|---|---|
Connection timed out | Пакеты не доходят до сервера. Проверьте IP-адрес, что сервер включён, и правила файрвола. |
Connection refused | Сервер отвечает, но SSH на этом порту не слушает. Проверьте порт и что служба ssh запущена. |
Permission denied (publickey) | Сервер не принял ключ: на сервере нет вашего открытого ключа, выбран не тот пользователь или вход по паролю отключён. |
REMOTE HOST IDENTIFICATION HAS CHANGED | У сервера новый ключ — так бывает после переустановки системы. Если вы переустанавливали сервер сами, удалите старую запись: ssh-keygen -R 203.0.113.10. |
Если доступа по SSH нет совсем. Например, вы закрыли порт 22 файрволом или сломали сетевые настройки. Откройте VNC-консоль сервера в личном кабинете: она работает прямо в браузере и не зависит от SSH и сети на сервере — это как подключить к серверу монитор и клавиатуру.
Что дальше
Когда подключение работает, настройте базовую защиту сервера и поставьте нужный стек. Если проект запускается в контейнерах, пригодится инструкция по установке Docker на VPS. А если сервера ещё нет, посмотрите сравнение тарифов — все они на AMD EPYC 7713 с NVMe.
