Узнайте, как включить SSH на CentOS 7, следуя инструкциям в этом кратком учебнике.
Предварительные требования
- Система CentOS 7 для использования в качестве SSH-сервера
- Пользователь с необходимыми правами
- Доступ к командной строке (Ctrl-Alt-T)
- yum (включен по умолчанию)
Установка и включение OpenSSH на CentOS 7
Пакеты программного обеспечения SSH включены в CentOS по умолчанию. Однако, если эти пакеты отсутствуют в вашей системе, легко установите их, выполнив Шаг 1, описанный ниже.
Шаг 1: Установка пакета программного обеспечения сервера OpenSSH
Введите следующую команду из вашего терминала, чтобы начать процесс установки:
sudo yum –y install openssh-server openssh-clients
Эта команда устанавливает как клиентские приложения OpenSSH, так и демон сервера OpenSSH, sshd.
В этом примере система информирует нас, что последняя версия уже присутствует.
Шаг 2: Запуск службы SSH
Чтобы запустить демон SSH на сервере OpenSSH:
sudo systemctl start sshd
Когда активен sshd, он постоянно прослушивает подключения клиентов от любого из инструментов клиента. При запросе на подключение sshd настраивает правильное подключение.
Шаг 3: Проверка статуса sshd
Проверьте статус демона SSH:
sudo systemctl status sshd
Поскольку мы уже запустили службу, вывод подтверждает, что она активна.
Чтобы остановить демона SSH, введите:
systemctl stop sshd
Мы можем проверить, остановилась ли служба, проверив статус. В выводе показано, что служба неактивна и время и дата последнего изменения статуса.
Шаг 4: Включение службы OpenSSH
Включите SSH для автоматического запуска после каждой перезагрузки системы, используя команду systemctl:
sudo systemctl enable sshd
Чтобы отключить SSH после перезагрузки, введите:
sudo systemctl disable sshd
Конфигурация сервера OpenSSH
Правильная конфигурация файла конфигурации sshd усиливает безопасность сервера. Самые распространенные настройки для улучшения безопасности – изменение номера порта, отключение входа под root и ограничение доступа только для определенных пользователей.
Чтобы отредактировать эти настройки, получите доступ к файлу /etc/ssh/sshd_config:
sudo vim /etc/ssh/sshd_config
После того как вы получите доступ к файлу с помощью текстового редактора (в этом примере мы использовали vim), вы можете отключить вход под root и изменить номер порта по умолчанию:
- Чтобы отключить вход под root:
PermitRootLogin no
- Измените порт SSH на использование нестандартного порта. Например:
Port 2002
Не забудьте раскомментировать строки, которые вы редактируете, удалив хэштег.
Сохраните
и закройте файл. Перезапустите sshd:
service sshd restart
Настройки брандмауэра
После успешного включения SSH и настройки файла sshd, настройте параметры брандмауэра, чтобы убедиться, что нет проблем совместимости.
Также можно ограничить доступ по IP для улучшения безопасности подключения.
Чтобы ограничить доступ по IP, отредактируйте файл iptables, введя:
sudo vim /etc/sysconfig/iptables
Чтобы разрешить доступ с использованием порта, определенного в файле конфигурации sshd, добавьте следующую строку в файл iptables:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 2002 -j ACCEPT
Чтобы ограничить доступ к определенному IP, например, 133.123.40.166, отредактируйте строку следующим образом:
-A RH-Firewall-1-INPUT -s 133.123.40.166 -m state --state NEW -p tcp --dport 2002 -j ACCEPT
Если ваш сайт использует IPv6, и вы редактируете ip6tables, используйте строку:
-A RH-Firewall-1-INPUT -m tcp -p tcp --dport 2002 -j ACCEPT
Сохраните и выйдите из файла, нажав Escape (Esc) на клавиатуре и введя:
:X
Press Enter to confirm.
Перезапустите iptables, чтобы применить изменения:
sudo systemctl restart iptables
Заключение
В этом учебнике мы узнали, как включить SSH на сервере CentOS 7. Кроме того, мы настроили брандмауэр и правила SSH для ограничения доступа.
Ваш сервер CentOS 7 теперь может принимать подключения по SSH.
Ищете виртуальные частные серверы? Опыт лучшей производительности и конфиденциальности с виртуализированными полностью виртуальными серверами KVM от Beehosting.