Як підключитися до Linux VPS через SSH з ключем PuTTY | INTROSERV
EUR
european

EUR

usa

USD

Ukraine Ua
Ex. VAT Ex. VAT 0%

Як підключитися до Linux VPS через SSH з ключем PuTTY

PuTTY це безкоштовний SSH-клієнт для Windows. У посібнику описано підключення до Linux VPS з машини на Windows за SSH-ключем замість пароля, від завантаження PuTTY до першого успішного входу. Вам знадобиться адреса сервера, SSH-акаунт на ньому та пара SSH-ключів.

Рівень підготовки: початковий
Приблизний час: близько 20 хвилин
Кінцева мета: до кінця посібника ви входите на свій Linux VPS з Windows через PuTTY і SSH-ключ, не вводячи пароль облікового запису.

Що роблять SSH і PuTTY

Secure Shell (SSH) це мережевий протокол для роботи на віддаленій машині через недовірену мережу. Він шифрує всю сесію, розпізнає сервер до того, як ви надішлете йому будь-що, і приймає як доказ вашої особи або пароль, або ключ. На Linux VPS серверну частину SSH зазвичай обслуговує демон OpenSSH, який слухає TCP-порт 22.

PuTTY це безкоштовний SSH-клієнт для Windows і водночас те термінальне вікно, у якому ви працюєте після підключення. Поточний випуск 0.84. Один момент знімає плутанину надалі: інсталятор для Windows уже містить PuTTYgen, утиліту, яка в цьому посібнику створює та конвертує ключі, тому PuTTYgen ніколи не завантажують окремо. Той самий пакет встановлює утиліти передавання файлів PSCP і PSFTP, консольний інтерфейс Plink та агент аутентифікації Pageant.

Що потрібно підготувати перед підключенням

Зберіть усе перелічене до початку роботи:

  • Публічну IP-адресу сервера, нижче вона позначена як <YOUR_SERVER_IP>
  • Ім'я SSH-акаунта на сервері, нижче воно позначене як <YOUR_USERNAME>
  • SSH-порт, зазвичай 22, якщо провайдер або ви самі не задали інший
  • Файл приватного ключа на машині з Windows, у форматі PuTTY (.ppk) або у форматі OpenSSH
  • PuTTY 0.84 на Windows 10, Windows 11, Windows Server 2022 або Windows Server 2025. Встановлення описано в наступному розділі
  • Linux VPS із запущеним сервером OpenSSH, доступний мережею. Серверні команди нижче підходять для Ubuntu 24.04 LTS і 26.04 LTS, Debian 12 і 13, AlmaLinux 9 і 10, а також інших дистрибутивів з OpenSSH
  • Один робочий спосіб увійти, якщо публічного ключа на сервері ще немає: сесія за паролем, інший ключ або консоль у панелі провайдера
  • Близько 20 хвилин і знання Linux-шелу на базовому рівні

Пара ключів має дві половини з різними завданнями. Приватний ключ залишається на вашій машині з Windows і створює доказ вашої особи. Публічний ключ лежить на сервері в тому обліковому записі, куди ви входите, і дає серверу перевірити цей доказ.

Warning

Ніколи не завантажуйте, не надсилайте поштою і не вставляйте приватний ключ на сервер чи будь-яку іншу машину. Ваш комп'ютер покидає лише публічний ключ. Файл приватного ключа, який потрапив туди, де доступом розпоряджаєтесь не ви, вважається скомпрометованим, і правильна реакція це замінити пару.

Встановлення PuTTY

Завантажуйте PuTTY лише у самого проєкту. putty.software це короткий офіційний домен проєкту, який переспрямовує на сторінки завантаження автора на chiark.greenend.org.uk.

Warning

putty.org і puttygen.com до проєкту не належать і командою PuTTY не підтримуються. Ніщо не гарантує, що файли з цих адрес і є те програмне забезпечення, яке випустили автори.

Беріть MSI-інсталятор для Windows під свою архітектуру. Збірка для 64-bit x86, putty-64bit-0.84-installer.msi, підходить майже будь-якій сучасній машині. Збірка для 32-bit x86 існує для старого обладнання та старих версій Windows, а окрема збірка Arm64 закриває Windows-пристрої на процесорах Arm.

Запустіть завантажений файл .msi. Натисніть Next на вітальній сторінці, залиште каталог встановлення за замовчуванням, залиште набір компонентів за замовчуванням і натисніть Install. Підтвердьте запит адміністратора Windows, якщо він з'явиться, потім закрийте майстер кнопкою Finish.

У меню «Пуск» тепер є пункти PuTTY і PuTTYgen, а разом з ними встановлено й перелічені вище утиліти.

Info

Проєкт також публікує актуальні інсталятори в Microsoft Store, зазвичай через кілька днів після випуску. Обидва джерела дають ту саму збірку.

Перевірка або конвертація SSH-ключа

PuTTY читає приватні ключі у власному форматі, у файлі .ppk. Подальші дії залежать від того, що у вас уже є.

Якщо у вас уже є файл .ppk

Конвертувати нічого не потрібно. Запам'ятайте, де лежить файл, і переходьте до налаштування PuTTY нижче.

Якщо ключ у форматі OpenSSH

Ключі, створені через ssh-keygen, мають назви на кшталт id_rsa або id_ed25519, зазвичай без розширення, і PuTTY не читає їх безпосередньо. Такий ключ конвертують один раз, а далі працюють з результатом.

Запустіть PuTTYgen і натисніть Load. Діалог вибору файлу відкривається з фільтром за приватними ключами PuTTY, який ховає все, що не завершується на .ppk, тому перемкніть фільтр на All Files перед тим, як шукати свій ключ. Виберіть файл приватного ключа та введіть його passphrase, якщо вона задана. PuTTYgen повідомляє, що ключ не у рідному форматі, і все одно завантажує його. Натисніть Save private key, задайте ім'я файлу та залиште розширення .ppk. Passphrase переходить без змін, якщо ви навмисно не введете нову.

У меню Conversions ту саму операцію винесено окремою командою Import key. Обидва шляхи дають однаковий файл .ppk.

Якщо ключа поки немає

Створіть пару в PuTTYgen. Залиште тип ключа RSA з довжиною 2048 біт або більше чи виберіть EdDSA з довжиною 255 біт для ключа Ed25519, потім натисніть Generate. Водіть вказівником миші по порожній області вікна, доки смуга прогресу не заповниться: PuTTYgen збирає випадковість саме з цих рухів. Коли ключ з'явиться, введіть passphrase у поле Key passphrase, повторіть її у Confirm passphrase і збережіть обидві половини кнопками Save public key та Save private key.

Info

PuTTY працює з ключами RSA та Ed25519, а також з ECDSA і DSA. На знімках цього посібника показано ключ RSA. Для нової пари на сучасних системах Ed25519 добрий вибір за замовчуванням.

Додавання публічного ключа на сервер

Пропустіть цей розділ, якщо провайдер уже поклав ключ в обліковий запис або якщо пару створювали для цього сервера. Інакше вам потрібен один робочий спосіб увійти: сесія за паролем, інший ключ або консоль провайдера.

Відкрийте сесію від того облікового запису, який користуватиметься ключем, і підготуйте каталог:

mkdir -p ~/.ssh chmod 700 ~/.ssh touch ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys chown -R <YOUR_USERNAME>:<YOUR_USERNAME> ~/.ssh

Команди створюють ~/.ssh і порожній authorized_keys, якщо чогось із цього немає, а потім виставляють власника та права, яких вимагає OpenSSH. Для звичайного облікового запису на кшталт admin або ubuntu повний шлях виглядає як /home/ /.ssh/authorized_keys. Для облікового запису root це /root/.ssh/authorized_keys. Пильнуйте назву каталогу: .ssh, з точкою на початку і без пробілів у шляху.

Відкрийте файл на редагування:

nano ~/.ssh/authorized_keys

Перейдіть у вікно PuTTYgen, виділіть увесь вміст поля з підписом Public key for pasting into OpenSSH authorized_keys file і скопіюйте його. Повернувшись у термінал, вставте текст останнім рядком файлу. Правий клік мишею вставляє вміст буфера обміну у вікно PuTTY. Збережіть файл і закрийте редактор.

Warning

Публічний ключ займає рівно один рядок, від ssh-rsa або ssh-ed25519 до кінця коментаря ключа. Не розбивайте його, не дозволяйте редакторові переносити його і не додавайте в цей рядок жодних власних коментарів. Ключ, розірваний на рядки або доповнений сторонніми символами, відхиляється, і сервер не повідомляє нічого змістовнішого за відмову в ключі.

Тепер у файлі по одному рядку на кожен дозволений ключ, а рядки, які там уже були, залишаються як є.

Налаштування PuTTY

Запустіть PuTTY. Першою відкривається панель Session. Введіть адресу сервера в поле Host Name (or IP address), задайте в Port значення 22 або той порт, який слухає ваш сервер, і залиште Connection type на SSH.

Тепер вкажіть PuTTY приватний ключ. У дереві зліва розкрийте Connection, потім SSH, потім Auth, потім Credentials і кнопкою Browse поруч з полем Private key file for authentication виберіть свій файл .ppk. Це дерево трохи відрізняється між версіями PuTTY, а у старіших випусках поле розташоване прямо на панелі Auth, тому орієнтуйтесь на назву поля, а не на точний шлях.

Збережена сесія окупає кілька секунд, витрачених на неї. Повернітесь на Session, введіть назву в Saved Sessions і натисніть Save. Назва з'являється у списку, а вибір її та кнопка Load відновлюють адресу, порт і шлях до ключа.

Підключення і вхід

Натисніть Open. При першому підключенні до сервера, якого PuTTY раніше не бачив, програма зупиняється і показує ключ хоста цього сервера:

The host key is not cached for this server: <YOUR_SERVER_IP> (port 22) The server's ssh-ed25519 key fingerprint is: ssh-ed25519 255 SHA256:<FINGERPRINT_STRING>

Порівняйте відбиток з тим, який провайдер опублікував для сервера. More info... показує повний публічний ключ, якщо порівнювати його зручніше. Коли відбиток збігається, натисніть Accept: PuTTY кешує ключ, підключення продовжується, і для цього хоста питання більше не виникає. Connect Once підключає без кешування. Cancel скасовує підключення, і це правильний вибір, коли відбиток не збігається ні з чим очікуваним.

Warning

Попередження про ключ хоста при наступному підключенні до того самого сервера, у різкішому формулюванні про можливе порушення безпеки, означає, що сервер надав інший ключ. Так поводиться перевстановлений сервер, і це законно. Так само поводиться атакувальник, який перенаправив ваше з'єднання. З'ясуйте, який із двох випадків ваш, перед тим як щось набирати у вікні.

Коли з ключем хоста розібрались, термінал показує запит на вхід:

login as:

Введіть ім'я облікового запису і натисніть Enter. Далі PuTTY використовує налаштований ключ. Якщо у ключа є passphrase, PuTTY запитує її в тому самому вікні, і символи під час введення не відображаються.

Три речі тут легко переплутати:

  • Ім'я облікового запису визначає користувача на сервері, root або звичайний запис на кшталт admin.
  • Passphrase ключа розшифровує файл приватного ключа на вашій власній машині, і сервер її ніколи не бачить.
  • Пароль облікового запису належить запису на сервері. За працюючої аутентифікації за ключем він для входу не потрібен.

Перевірка того, що аутентифікація за ключем працює

Відсутність запиту пароля і є підтвердженням. Якщо сесія відкривається після passphrase ключа або взагалі без запитів, сервер прийняв ключ. Дві команди показують результат прямо:

whoami hostname

Очікуваний вивід:

admin vps-01

Перший рядок називає обліковий запис, від імені якого йде сесія, і він мусить збігатися з тим записом, у чиєму файлі authorized_keys лежить публічний ключ. Другий називає сервер.

Усунення неполадок

Проблема Причина Рішення
Server refused our key Публічний ключ встановлено для цього облікового запису неправильно Перевірте, що в ~/.ssh/authorized_keys ключ лежить одним рядком, що на ~/.ssh права 700, на authorized_keys права 600 і що обидва належать цьому обліковому запису
No supported authentication methods available PuTTY нічого не має запропонувати як ключ, а сервер не приймає паролі Задайте файл .ppk у Connection, SSH, Auth, Credentials
Access denied Ім'я облікового запису вказано неправильно Уточніть ім'я запису на сервері. PuTTY не дає виправити помилку в тій самій сесії, тому закрийте вікно і підключіться знову
Network error: Connection timed out Неправильна адреса чи порт або брандмауер відкидає трафік Перевірте IP-адресу та порт, потім перевірте брандмауер на сервері та на шляху до нього
Network error: Connection refused На цьому порту ніщо не слухає, бо служба SSH зупинена або займає інший порт Перевірте стан служби SSH і порт, який вона слухає, через консоль провайдера, якщо іншого доступу немає
Passphrase відхиляється Passphrase приватного ключа введено неправильно Наберіть її знову. Якщо не допомагає, візьміть ключ з відомою вам passphrase або створіть нову пару
Ключ працює в іншому клієнті, але не в PuTTY Ключ у форматі OpenSSH, а не .ppk Конвертуйте його в PuTTYgen, як описано вище

Безпека SSH-ключів

  • Тримайте приватний ключ на своїй машині і не передавайте його нікому. Будь-хто, у кого є цей файл, увійде як ви.
  • Захистіть ключ passphrase і виберіть таку, якою більше ніде не користуєтесь.
  • Зберігайте файл ключа там, де його читає лише ваш обліковий запис, і включіть його в особисті резервні копії. Втрачений приватний ключ з публічної половини не відновити.
  • Заводьте окремі ключі під окремі сервери або ролі там, де це практично, щоб один витеклий ключ не відкривав усе відразу.
  • Будь-яку підозру на витік вважайте фактом: створіть нову пару, встановіть новий публічний ключ і приберіть старий рядок з authorized_keys на кожному сервері.

Info

Коли аутентифікація за ключем стійко працює, дві зміни на боці сервера додатково знижують ризик: вимкніть аутентифікацію за паролем у конфігурації OpenSSH і обмежте SSH-порт у брандмауері тими адресами, з яких ви підключаєтесь.

Відкат змін

Щоб прибрати ключ із сервера, спершу збережіть копію файлу, потім видаліть рядок із публічним ключем:

cp ~/.ssh/authorized_keys ~/.ssh/authorized_keys.bak nano ~/.ssh/authorized_keys

Warning

Переконайтесь, що інший спосіб увійти ще працює, перед тим як видаляти ключ. Обліковому запису, який залишився без робочого ключа і без входу за паролем, для відновлення знадобиться консоль провайдера.

Щоб видалити PuTTY з Windows, спершу очистіть його збережені налаштування, оскільки видалення програми їх не торкається. Виконайте наступне в командному рядку або в діалозі «Виконати» і підтвердьте запит, що з'явиться:

putty.exe -cleanup

Потім відкрийте Settings, перейдіть у Apps, потім у Installed apps, знайдіть у списку PuTTY і виберіть Uninstall. Файл .ppk видаліть самі, якщо ключ більше не потрібен.

Висновок і подальші кроки

Ваша машина з Windows тепер дістає до Linux VPS через PuTTY за ключем замість пароля, сесія збережена для повторного використання, а ключ хоста сервера перевірено та закешовано. Аутентифікацію за паролем на сервері тепер можна вимкнути, і це прибирає найбільш обстрілюваний вхід у машину з публічною адресою. Pageant, встановлений разом з PuTTY, тримає розшифрований ключ на час сесії Windows і звільняє від введення passphrase при кожному підключенні. За суміжними завданнями дивіться Підключення через SSH про доступ за паролем, Зміна порту SSH про перенесення служби з порту 22 і Підключення до сервера по SSH на MacOS про те саме завдання з macOS.

Версія документа: 1.0
Оновлено: Серпень 2026
Власник: Команда технічної документації

VAT

  • Other

    Ex. VAT

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    22%
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • germany
  • Español
  • Italiano
  • Poland
  • Русский
  • Slovenski
  • Türkçe
  • ukraine
  • kingdom
  • French
  • Hrvatska
  • Other
  • Austria
  • Belgium
  • Bulgaria
  • Croatia
  • Cyprus
  • Czech Republic
  • Denmark
  • Estonia
  • Finland
  • France
  • Germany
  • Greece
  • Hungary
  • Ireland
  • Italy
  • Latvia
  • Lithuania
  • Luxembourg
  • Malta
  • Netherlands
  • Poland
  • Portugal
  • Romania
  • Slovakia
  • Slovenia
  • Spain
  • Sweden
  • USA