Як створити ключ SSH у Linux

Основні моменти

  • Ключі SSH забезпечують надійний спосіб підключення до віддалених серверів, відмовляючись від паролів. Вони складаються з двох частин: відкритого та закритого ключів.
  • Для генерації пари ключів SSH в Linux використовуйте команду ssh-keygen. Розгляньте можливість встановлення парольної фрази для підвищення безпеки.
  • Передайте свій відкритий ключ SSH на віддалений сервер, застосовуючи утиліту ssh-copy-id або вставивши його вручну в файл authorized_keys.

SSH-ключ гарантує захищений доступ до облікових записів на віддалених серверах, дозволяючи підключення без використання пароля. Створення ключа в Linux є простим процесом.

Що таке SSH-ключ?

SSH-ключ – це криптографічно створений ключ, який дозволяє вам авторизуватися на віддалених комп’ютерах. Він представляє собою “пару ключів”, що включає відкритий та закритий ключі. Відкритий ключ можна розмістити на віддалених машинах, щоб вони могли вас ідентифікувати. Закритий ключ, як випливає з назви, є персональним і має зберігатися на вашому локальному комп’ютері.

Ніколи не розголошуйте свій закритий ключ SSH!

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

Як згенерувати віддалений ключ?

Щоб згенерувати пару ключів SSH, просто виконайте команду “ssh-keygen” у терміналі Linux. Вам буде запропоновано вибрати місце зберігання файлу, а потім ввести та підтвердити парольну фразу, якщо ви бажаєте її використовувати. Парольна фраза додає ще один рівень захисту до вашого ключа.

Якщо ви використовуєте парольну фразу, запам’ятайте її! Якщо забудете, ви не зможете авторизуватися з цим ключем.

Для входу без пароля залиште парольну фразу порожньою.

За замовчуванням ssh-keygen використовує алгоритм Ed25519. Це цілком достатньо для більшості випадків, оскільки цей алгоритм є дуже надійним. За потреби ви можете задати конкретний тип алгоритму за допомогою параметра -t. Зазвичай це не потрібно, якщо тільки сервер не підтримує інший алгоритм, ніж той, що ви використовували. Детальну інформацію про створення інших пар ключів можна знайти на сторінці посібника ssh-keygen.

Як перенести новий SSH-ключ на віддалену машину?

Після того, як ви згенерували пару ключів, необхідно передати свій відкритий ключ на віддалений сервер. Це можна зробити двома способами.

Перший і найпростіший спосіб – використовувати утиліту ssh-copy-id. Запустіть її, вказавши ім’я користувача та адресу вашого віддаленого сервера:

 ssh-copy-id [email protected]

Введіть свій пароль, і ваш відкритий ключ буде скопійовано.

Тепер ви можете увійти на віддалений сервер:

 ssh [email protected] 

Якщо цей спосіб не спрацював, доведеться скопіювати та вставити відкритий ключ вручну. Ваш відкритий ключ зберігається у файлі з розширенням “.pub” в каталозі .ssh вашої домашньої директорії. Відкрийте цей файл, скопіюйте його вміст і вставте у файл .ssh/authorized_keys на віддаленій машині.

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