Если вы какое-то время используете Linux, вы наверняка слышали об инструменте, известном как SSH. Secure Shell, широко известный как SSH, представляет собой сетевой протокол для установления безопасных соединений между клиентом и удаленным сервером. Он предназначен для того, чтобы пользователи могли безопасно входить в систему на различных типах компьютеров удаленно по сети. Здесь мы покажем вам, как легко настроить и скопировать ключи SSH на ваш сервер.
Также читайте: Как показать все активные SSH-соединения в Linux
Установка SSH
Для начала нам необходимо установить SSH-сервер. Вы можете найти и установить пакет openssh-server
в Центре программного обеспечения или в диспетчере пакетов. Альтернативно, если вы находитесь на сервере (или просто предпочитаете использовать терминал), откройте терминал и введите следующую команду:
# Ubuntu/Debian sudo apt installContents
Установка SSH
pan># Fedora/CentOS/REHL sudo dnf install openssh-server![Ssh при установке Ubuntu](https://saintist.ru/wp-content/uploads/2024/05/ssh-on-ubuntu-installing.jpg)
Читайте также: Как создать SSH-приманку для поимки хакеров на вашем Linux-сервере
Включить SSH в Linux
После установки сервера OpenSSH на ваш компьютер вам необходимо запустить и включить модуль системный . Для этого вы можете просто ввести в терминал следующую команду:
sudo systemctl enable --now ssh
![Ssh при включении Ubuntu](https://saintist.ru/wp-content/uploads/2024/05/ssh-on-ubuntu-enabling.jpg)
Полезно знать: вы можете подключать программы в Linux с помощью SSH-трубы .
Генерация ключей SSH
После установки сервера openssh вы можете начать генерировать пары ключей SSH. Прежде чем продолжить, убедитесь, что у вас нет существующей пары ключей, поскольку этот процесс перезапишет существующую.
Чтобы прове
Включить SSH в Linux
щая пара ключей, используйте команду:ls -la ~/.ssh
Если у вас уже есть пара ключей, приведенная выше команда должна отобразить файлы «id_rsa» и «id_rsa.pub».
![Лс Ла Сш](https://saintist.ru/wp-content/uploads/2024/05/ls-la-ssh.png)
Убедившись, что у вас нет существующей пары ключей SSH, вы можете приступить к созданию новой. В противном случае сохраните резервную копию старых ключей, чтобы не потерять их.
Чтобы сгенерировать новый ключ, используйте команду:
ssh-keygen -t rsa -b 4096
Приведенная выше команда вызывает утилиту ssh-keygen
для интерактивной генерации пары ключей SSH. Используя опцию -t
, мы указываем тип ключа, который нужно сгенерировать. В данном случае мы ге
Генерация ключей SSH
также используем параметр-b
, чтобы указать количество битов в ключе. Если вы используете ключ RSA, минимальный размер бит составляет 1024 бита. Если не указано, будет сгенерирован ключ длиной 3072 бита.
![Ssh Кейген RSA](https://saintist.ru/wp-content/uploads/2024/05/ssh-keygen-rsa.png)
Полезно использовать местоположение по умолчанию для хранения ключей SSH, чтобы не вводить путь при подключении к SSH с помощью ключей.
Если вы не хотите шифровать свой ключ с помощью парольной фразы, нажмите Enter, чтобы пропустить.
Копировать ключ на удаленный сервер
Теперь, когда мы создали новую пару ключей SSH, нам нужно загрузить ее на удаленный компьютер, которым мы хотим управлять.
Самый эффективный способ сделать это — использовать команду ssh-copy-id
. Используйте команду как:
ssh-copy-id remote_user@remote_IP
Если вы используете файл ключа с отдельным именем, вы можете использовать следующую команду, чтобы указать путь к файлу ключа.
ssh-copy-id -i ~/.ssh/id_rsa remote_user@remote_IP
Если вы входите на удаленный компьютер впервые, вам необходимо будет принять отпечаток пальца.
Далее введите пароль SSH для удаленного пользователя.
После аутентификации команда ssh-copy-id
добавит содержимое вашего ключа id_rsa.pub
в файл «~/.ssh/authorized_keys» на удаленном компьютере и закроет соединение..
![Идентификатор копирования SSH](https://saintist.ru/wp-content/uploads/2024/05/ssh-copy-id.png)
Войти на удаленный компьютер
После успешного выполнения всех вышеперечисленных шагов вы можете войти на удаленный сервер без необходимости ввода пароля.
Вы можете проверить это с помощью команды:
ssh remote_user@remote_ip
Если для вашего ключа не активирована парольная фраза, вы войдете в систему автоматически.
Часто задаваемые вопросы
1. Безопасен ли SSH?
SSH — это мощный инструмент безопасности, который позволяет аутентифицированным пользователям входить в удаленную систему. Однако он безопасен настолько, насколько позволяет его файл конфигурации. Ненастроенный/неправильно настроенный SSH-сервер может быть уязвим для хакеров и доступа третьих лиц. Обязательно защитите конфигурацию SSH сразу после установки.
2. Где находятся авторизованные ключи SSH?
Файл авторизованных_ключей SSH содержит файл открытого ключа каждого пользователя и определяет, каким пользователям разрешен вход на сервер. В Linux файл авторизованных ключей обычно находится в
Копировать ключ на удаленный сервер
я.3. Как исправить проблему с отказом в разрешении ssh-copy-id?
Это происходит только в том случае, если на удаленном сервере уже настроен открытый ключ и отключена аутентификация по паролю. Чтобы устранить эту проблему, сначала войдите на свой сервер, включите аутентификацию по паролю в файле «/etc/ssh/sshd_config», а затем снова запустите команду ssh-copy-id
.
После того как вы скопировали новый ключевой файл, не забудьте снова отключить опцию аутентификации по паролю.