Підключення по протоколу SSH (Secure Shell) є надійним і безпечним способом віддаленого доступу до сервера. Однак кожен раз при підключенні необхідно вводити пароль, що може бути незручно і затратно за часом. У даній статті ми розглянемо, як налаштувати підключення по SSH без пароля, реалізувавши авторизацію за допомогою ключів.
Авторизація по ключах SSH грунтується на криптографічної парі ключів: публічному і приватному. Публічний ключ зберігається на віддаленому сервері, а приватний ключ-на локальній машині користувача. Підключення здійснюється шляхом порівняння публічного і приватного ключів. Якщо ключі збігаються, то користувач авторизується без введення пароля.
Щоб налаштувати З'ЄДНАННЯ SSH без пароля, потрібно виконати кілька простих кроків. По-перше, згенерувати криптографічну пару ключів на локальній машині. По-друге, передати публічний ключ на віддалений сервер. І, нарешті, налаштувати файли конфігурації SSH на локальній машині і віддаленому сервері. Завдяки цим крокам, ви зможете підключатися до сервера без введення пароля, використовуючи тільки свій приватний ключ.
Використання SSH без пароля: крок за кроком
Крок 1: Встановіть OpenSSH на обидва комп'ютери.
На сервері та клієнті повинні бути встановлені пакети OpenSSH. Якщо їх немає, виконайте наступні команди:
sudo apt-get update
sudo apt-get install openssh-server
Крок 2: Створіть новий ключ SSH на клієнтській машині.
Для цього введіть команду:
Після цього система запитає вас про вибір розташування файлу і пароля. Залиште значення за замовчуванням, натискаючи Enter.
Крок 3: Передайте відкритий ключ клієнта на сервер.
Виконайте наступну команду на клієнтському комп'ютері:
Замінивши username на своє ім'я Користувача, а server_ip_address на IP-адресу свого сервера.
Вам буде запропоновано ввести пароль для підтвердження. Введіть його та натисніть Enter.
Крок 4: Спробуйте підключитися до сервера без пароля.
Введіть наступну команду на клієнтському комп'ютері:
Тепер ви повинні бути підключені до сервера без введення пароля.
Налаштування сервера
Перш ніж налаштувати з'єднання ssh без пароля, вам потрібно переконатися, що ваш сервер правильно налаштований та доступний ззовні. У цьому розділі описані основні кроки налаштування сервера.
1. Встановіть операційну систему на ваш сервер. Виберіть операційну систему, з якою ви працюєте, і дотримуйтесь інструкцій із встановлення.
2. Оновіть усі пакети та програми на сервері, щоб переконатися, що у вас встановлена ОСТАННЯ версія операційної системи.
3. Встановіть та налаштуйте OpenSSH сервер на вашому сервері. OpenSSH є стандартним інструментом для роботи з протоколом SSH і надає необхідні для цього можливості.
4. Відкрийте файл конфігурації OpenSSH (/etc/ssh / sshd_config) і внесіть необхідні зміни. Налаштуйте порт, на якому буде працювати сервер SSH, і ввімкніть ключову автентифікацію.
5. Запустіть сервер SSH і переконайтеся, що він успішно запущений і готовий приймати з'єднання.
6. Перевірте налаштування брандмауера на своєму сервері. Переконайтеся, що порт, вказаний у налаштуваннях сервера SSH, не заблокований брандмауером і доступний ззовні.
7. Налаштування сервера завершено. Тепер ви можете перейти до Налаштування з'єднання ssh без пароля.
Налаштування клієнта
1. Відкрийте термінал на своєму комп'ютері та виконайте таку команду:
ssh-keygen -t rsa
2. Введіть шлях до файлу, де буде збережено ваш приватний ключ, або просто залиште поле порожнім, щоб зберегти його в стандартному місці.
3. Введіть пароль, якщо хочете встановити його для Вашого приватного ключа. Якщо ви не хочете, залиште поле порожнім і натисніть Enter.
4. Після успішного створення ключів, перейдіть в ваш домашній каталог і відкрийте файл з публічним ключем наступною командою:
5. Скопіюйте вміст файлу за допомогою публічного ключа (Ctrl + Shift + C) і вставте його у файл ~/.ssh / authorized_keys на віддаленому сервері. Якщо файл ~/.ssh / authorized_keys не існує, створіть його за допомогою наступної команди:
6. Закрийте редактор і скористайтеся командою chmod 600 ~/.ssh / authorized_keys для встановлення правильних дозволів на файл.
7. Спробуйте підключитися до віддаленого сервера без введення пароля за допомогою команди:
8. Якщо підключення пройшло успішно без запиту пароля, то ви успішно налаштували підключення по ssh без пароля.