Как настроить SSH в CentOS

SSH (Secure Shell) — это широко используемый сетевой протокол, который обеспечивает безопасный удаленный вход в систему и передачу файлов по незащищенным сетям. Он обеспечивает безопасный способ доступа и управления удаленными серверами или устройствами. В этой статье мы расскажем вам, как настроить SSH в CentOS, популярном дистрибутиве Linux.
Содержание

- Введение в SSH
- Предпосылки
- Шаг 1. Установка OpenSSH
- Шаг 2. Настройка SSH
- Шаг 3. Генерация пары ключей SSH
- Шаг 4. Отключение аутентификации по паролю
- Шаг 5: Подключение к SSH-серверу
- Шаг 6: Настройка брандмауэра
- Заключение
- Часто задаваемые вопросы
Введение в SSH
SSH — это криптографический сетевой протокол, обеспечивающий безопасную связь между двумя удаленными устройствами. Он шифрует данные, передаваемые по сети, что делает практически невозможным перехват и расшифровку информации неавторизованными пользователями. Этот протокол широко используется системными администраторами, разработчиками и ИТ-специалистами для безопасного управления удаленными серверами.
Предпосылки
Перед настройкой SSH на CentOS вам необходимо иметь следующее:
- Сервер или машина CentOS
- Root-доступ или sudo-доступ к серверу
- Базовые знания команд Linux и редактирования текста
Шаг 1. Установка OpenSSH

Чтобы начать, нам сначала нужно установить OpenSSH, который представляет собой реализацию протокола SSH с открытым исходным кодом. Откройте терминал или подключитесь к серверу CentOS через SSH и выполните следующую команду:
sudo yum install openssh-server Эта команда установит сервер OpenSSH на ваш компьютер с CentOS.
Шаг 2. Настройка SSH
Далее нам нужно настроить SSH-сервер. Файл конфигурации OpenSSH находится по адресу /etc/ssh/sshd_config.
. Откройте файл с помощью текстового редактора:
sudo vi /etc/ssh/sshd_config Внутри файла вы найдете различные варианты конфигурации. Не стесняйтесь изменять их в соответствии с вашими требованиями. Однако обязательно раскомментируйте и отредактируйте следующие строки:
Port 22 Change the default SSH port if desired
PermitRootLogin no Disable root login for better security Сохраните изменения и выйдите из текстового редактора.
Шаг 3. Генерация пары ключей SSH
SSH поддерживает аутентификацию на основе сертификатов с использованием пар открытого и закрытого ключей. Чтобы сгенерировать пару ключей, выполните следующую команду:
ssh-keygen -t rsa -b 4096 Эта команда сгенерирует 4096-битную пару ключей RSA. Нажмите Enter, чтобы принять путь к файлу по умолчанию, и введите парольную фразу для защиты вашего закрытого ключа. Не забудьте сохранить парольную фразу в надежном месте.
Шаг 4. Отключение аутентификации по паролю
Для дальнейшего повышения безопасности рекомендуется отключить аутентификацию по паролю и использовать только аутентификацию на основе ключей. Снова откройте файл конфигурации SSH:
sudo vi /etc/ssh/sshd_config Найдите следующую строку и измените ее значение на нет:
PasswordAuthentication no Сохраните изменения и выйдите из текстового редактора.
Шаг 5: Подключение к SSH-серверу
Теперь, когда мы настроили SSH в CentOS, давайте подключимся к серверу с помощью SSH. Откройте терминал на своем локальном компьютере и выполните следующую команду:
ssh username@server_ip_address Замените имя пользователя своим именем пользователя CentOS, а server_ip_address — IP-адресом или именем хоста вашего сервера CentOS. Если вы использовали собственный порт SSH, укажите его с помощью -p
флаг:
ssh -p custom_port username@server_ip_address Введите парольную фразу для вашего закрытого ключа, когда будет предложено. Если все настроено правильно, вы будете подключены к серверу CentOS через SSH.
Шаг 6: Настройка брандмауэра
По умолчанию CentOS поставляется со встроенным брандмауэром под названием firewalld. Если вы еще не настроили его, возможно, вам придется разрешить трафик SSH через брандмауэр. Запустите следующую команду, чтобы открыть порт SSH:
sudo firewall-cmd --permanent --add-port=22/tcp
sudo firewall-cmd --reload Эти команды добавляют порт SSH в список разрешенных брандмауэров, а затем перезагружают правила брандмауэра.
Заключение

Настройка SSH в CentOS имеет решающее значение для безопасного удаленного доступа и управления вашим сервером Linux. Выполнив шаги, упомянутые в этой статье, вы сможете установить безопасное соединение SSH и повысить общую безопасность вашего сервера.
Часто задаваемые вопросы
Вопрос 1: Могу ли я изменить номер порта SSH по умолчанию?
A1: Да, вы можете изменить номер порта SSH, отредактировав файл конфигурации SSH.
Вопрос 2. Что делать, если я забыл парольную фразу для своего SSH-ключа?
О2: К сожалению, если вы забудете парольную фразу для своего SSH-ключа, восстановить его будет невозможно. Вам нужно будет создать новую пару ключей и обновить открытый ключ на удаленном сервере.
Вопрос 3: Как включить root-вход через SSH?
A3: Обычно рекомендуется отключить root-вход для большей безопасности. Однако при необходимости вы можете включить root-вход, установив PermitRootLogin
на да в файле конфигурации SSH.
Вопрос 4: Можно ли настроить SSH без пароля для закрытого ключа?
О4: Да, вы можете не устанавливать парольную фразу для вашего закрытого ключа. Однако настоятельно рекомендуется использовать парольную фразу для дополнительного уровня безопасности.
Вопрос 5: Могу ли я использовать SSH в Windows?
О5: Да, вы можете использовать SSH в Windows, установив стороннее программное обеспечение, такое как PuTTY или подсистему Windows для Linux (WSL).

