В этой статье мы расскажем, как пошагово происходит настройка SSH в CentOS.
SSH ― это протокол безопасного удаленного доступа, который позволяет пользователю управлять и вносить изменения на его удаленный сервер через интернет.
Чтобы получить доступ по SSH, нужно вводить пароль при каждом подключении к серверу. Это неудобно, если вы подключаетесь к серверу часто. Чтобы можно было входить в систему без пароля, на удаленном сервере должна быть настроена аутентификация (вход) с помощью ключей SSH.
Этап 1. Создание ключей
Для аутентификации на сервере нужно создать пару SSH-ключей — открытый и закрытый.
-
1
Создайте пару ключей:
ssh-keygen
-
2
Появится строка, в которой нужно указать путь хранения ключа. Введите путь или оставьте путь по умолчанию. Нажмите Enter:
-
3
Создайте надежный пароль для учетной записи:
-
4
На экране появится ключ и его изображение:
CentOS install SSH
Готово, вы создали открытый и закрытый ключи. Теперь для входа в систему с помощью SSH-ключей нужно разместить открытый ключ на сервере и отключить аутентификацию (вход) по паролю.
Этап 2. Копирование открытого ключа на сервер
Копировать ключ на сервер можно двумя способами:
- с помощью утилиты ssh-copy-id,
- с помощью SSH.
Способ 1. Копирование открытого ключа с помощью утилиты ssh-copy-id
-
1
Копирование открытого ключа через утилиту ssh-copy-id ― самый быстрый и удобный способ.
Введите утилиту:
ssh-copy-id username@IP
Где:
- username — логин пользователя,
- IP — IP-адрес сервера.
-
2
При первом соединении появится сообщение о том, что сервер является ненадежным источником. Для подключения введите в консоли yes и нажмите Enter:
- 3 Введите пароль от учетной записи и нажмите Enter.
Готово, вы скопировали открытый ключ на сервер.
Способ 2. Копирование открытого ключа с помощью SSH
Перед началом этих действий надо выполнить подключение по SSH обычным способом (через пароль) и произвести запуск удаленного соединения.
-
1
Введите команду:
cat ~/.ssh/id_rsa.pub | ssh username@remote_host "mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys && chmod -R go= ~/.ssh && cat >> ~/.ssh/authorized_keys"
-
2
При первом соединении появится сообщение о том, что локальный компьютер не распознает хост. Для подключения введите в консоли yes и нажмите Enter:
CentOS 7 SSH установка и настройка
- 3 Введите пароль от учётной записи и нажмите Enter.
Готово, вы скопировали открытый ключ на сервер.
Этап 3. Отключение аутентификации по паролю
- 1 Убедитесь, что вы настроили вход с помощью SSH-ключей для учетной записи root на сервере.
-
2
Откройте файл конфигурации демона SSH:
sudo nano /etc/ssh/sshd_config
-
3
Найдите в файле директиву PasswordAuthentication. Установите значение no:
- 4 Сохраните и закройте файл.
-
5
Перезапустите службу sshd:
sudo systemctl restart sshd.service
Готово, вы отключили вход по паролю.
Этап 4. Аутентификация на сервере
Если всё настроено верно, включить SSH-подключение можно без пароля с помощью команды:
ssh username@IP
Где:
- username — логин пользователя,
- IP — IP-адрес сервера.
Готово, теперь вы можете открыть SSH без пароля.
Помогла ли вам статья?
Спасибо за оценку. Рады помочь 😊