Установка и настройка Centos 7 ssh
Обновлено: 21.11.2024
Secure Shell (SSH) — это криптографический протокол, который позволяет клиенту взаимодействовать с удаленным сервером в безопасной среде.
Шифрование высокого уровня защищает обмен конфиденциальной информацией и позволяет безопасно передавать данные или выполнять команды на удаленных компьютерах.
Узнайте, как включить SSH в CentOS 7, следуя инструкциям в этом кратком руководстве.
- Система CentOS 7 для работы в качестве SSH-сервера
- Пользователь с необходимыми разрешениями
- Доступ к командной строке (Ctrl-Alt-T)
- утилита yum (включена по умолчанию)
Установка и включение OpenSSH в CentOS 7
Программные пакеты SSH включены в CentOS по умолчанию. Однако, если эти пакеты отсутствуют в вашей системе, легко установите их, выполнив шаг 1, описанный ниже.
Шаг 1. Установите программный пакет OpenSSH Server
Введите в терминале следующую команду, чтобы начать процесс установки:
Эта команда устанавливает как клиентские приложения OpenSSH, так и демон сервера OpenSSH, sshd.
В этом примере система сообщает нам, что последняя версия уже установлена.
Шаг 2. Запуск службы SSH
Чтобы запустить демон SSH на сервере OpenSSH:
Когда sshd активен, он постоянно прослушивает клиентские подключения из любых клиентских инструментов. Когда возникает запрос на подключение, sshd устанавливает правильное подключение.
Шаг 3. Проверьте статус sshd
Проверьте состояние демона SSH:
Поскольку мы ранее запустили службу, выходные данные подтверждают, что она активна.
Чтобы остановить демон SSH, введите:
Мы можем проверить, остановилась ли служба, проверив статус. Вывод показывает, что служба неактивна, а также дату и время последнего изменения статуса.
Шаг 4. Включите службу OpenSSH
Включите автоматический запуск SSH после каждой перезагрузки системы с помощью команды systemctl:
Чтобы отключить SSH после перезагрузки, введите:
Конфигурация сервера OpenSSH
Правильная настройка файла конфигурации sshd повышает безопасность сервера. Наиболее распространенными настройками для повышения безопасности являются изменение номера порта, отключение входа в систему с правами суперпользователя и ограничение доступа только для определенных пользователей.
Чтобы изменить эти настройки, откройте файл /etc/ssh/sshd_config:
После того как вы получите доступ к файлу с помощью текстового редактора (в этом примере мы использовали vim), вы можете отключить вход в систему root и изменить номер порта по умолчанию:
PermitRootLogin №
- Измените порт SSH, чтобы он работал на нестандартном порту. Например:
Порт 2002
Не забудьте раскомментировать строки, которые вы редактируете, удалив хэштег.
Сохраните и закройте файл. Перезапустите sshd:
Примечание. Мы рекомендуем создавать ключи SSH для аутентификации в качестве более безопасной альтернативы паролям.
Настройки брандмауэра
После успешного включения SSH и настройки файла sshd измените настройки брандмауэра, чтобы убедиться в отсутствии проблем с совместимостью.
Также можно ограничить доступ по IP, чтобы сделать соединение еще более безопасным.
Чтобы ограничить доступ по IP, отредактируйте файл iptables, набрав:
Чтобы разрешить доступ через порт, указанный в файле конфигурации sshd, добавьте следующую строку в файл iptables:
Чтобы ограничить доступ к определенному IP-адресу, например 133.123.40.166, отредактируйте строку следующим образом:
Если ваш сайт использует IPv6 и вы редактируете ip6tables, используйте строку:
Сохраните и закройте файл, нажав Escape (Esc) на клавиатуре и введя:
:Х
Нажмите Enter для подтверждения.
Перезапустите iptables, чтобы изменения вступили в силу:
В этом руководстве мы узнали, как включить SSH на сервере CentOS 7. Кроме того, мы настроили правила брандмауэра и SSH для ограничения доступа.
Ваш сервер CentOS 7 теперь может принимать SSH-соединения.
Ознакомьтесь с нашим руководством по ошибке «ssh_exchange_identification: Чтение: сброс соединения по узлу», если вы заметили ее при подключении к удаленному серверу.
В этом руководстве я покажу вам, как настроить сервер openssh на компьютере с RedHat/CentOS 7. OpenSSH — это бесплатный и самый популярный пакет с открытым исходным кодом, используемый практически во всех типах серверов Linux для удаленного входа в систему с использованием протокола SSH. Он обеспечивает зашифрованный уровень для защиты всей связи между SSH-сервером и SSH-клиентом. Это также помогает в устранении прослушивания, перехвата соединения и других атак. Подробнее на официальном сайте Openssh.
Комплект OpenSSH состоит из следующих инструментов:-
-
, scp и sftp.
- Управление ключами с помощью ssh-add, ssh-keysign, ssh-keyscan и ssh-keygen.
- Сервисная сторона состоит из sshd, sftp-сервера и ssh-агента.
Пошаговое руководство по настройке сервера OpenSSH в Linux (RHEL / Centos 7/8)
Шаг 1. Предварительные требования
a) У вас должен быть работающий сервер RHEL/CentOS 7/8.
c) У вас должно быть доступное сетевое подключение для подключения и загрузки пакетов из Repo.
Шаг 2. Установите сервер OpenSSH
Обычно пакеты OpenSSH Server и Client устанавливаются во время сборки сервера, но если он у вас не установлен, вы можете быстро установить его из репозитория с помощью команды yum install -y openssh-server openssh-clients. Эта команда должна установить пакеты сервера и клиента.
После успешной установки вы увидите файл конфигурации sshd_config, доступный по пути /etc/ssh. Вы можете установить все необходимые параметры из этой конфигурации, а затем запустить или перезапустить службу sshd, чтобы отразить изменения.
Шаг 3. Настройка пересылки X11
Если вы хотите разрешить пользователю запускать графические приложения из командной строки Linux, вы можете установить для параметра X11Forwarding значение yes, как показано ниже.
Шаг 4. Настройка корневого входа
По умолчанию ssh не разрешает авторизацию пользователя root. Если вы хотите разрешить вход в систему root через порт SSH, вам необходимо установить для PermitRootLogin значение yes, как показано ниже.
Шаг 5. Настройте LogLevel
Шаг 6. Настройте порт SSH
Если вы хотите изменить номер порта с порта 22 по умолчанию, вы можете изменить его здесь, где вы можете указать другой порт SSH. На данный момент мы сохраняем порт 22 по умолчанию.
Шаг 7. Запустите и включите службу SSH
После того как служба SSH настроена, вы можете запустить ее с помощью команды systemctl start sshd, а затем включить ее с помощью команды systemctl enable sshd . Если все пойдет хорошо, вы сможете увидеть статус успеха с помощью команды systemctl status sshd. В случае, если вы измените какую-либо конфигурацию из файла sshd_config, вам необходимо один раз перезапустить службу с помощью команды systemctl restart sshd.
Для подключения к серверу SSH на клиентском компьютере должны быть установлены клиентские программы OpenSSH.
На компьютере с CentOS или RHEL вы можете установить клиентские программы OpenSSH с помощью следующей команды:
Должны быть установлены клиентские программы SSH. В моем случае он уже установлен.
Если вы хотите подключиться к серверу CentOS 8 с помощью SSH, на вашем компьютере с CentOS 8 должно быть установлено программное обеспечение сервера SSH.
Чтобы установить программное обеспечение SSH-сервера на вашем компьютере с CentOS 8, выполните следующую команду:
Должен быть установлен серверный пакет OpenSSH. В моем случае он уже установлен.
Управление службой сервера OpenSSH:
После того как на вашем компьютере с CentOS 8 установлено серверное программное обеспечение OpenSSH, проверьте, запущена ли служба sshd, с помощью следующей команды:
Как видите, служба sshd активна/работает. Он также может запускаться автоматически при загрузке системы.
SSH-сервер прослушивает все сетевые интерфейсы (0.0.0.0) через порт 22 по умолчанию.
Если служба sshd по какой-то причине не запущена на вашем компьютере с CentOS 8, вы можете запустить ее вручную с помощью следующей команды:
Если служба sshd не включена для автоматического запуска при загрузке системы, вы можете добавить ее в автозагрузку системы следующим образом:
Точно так же, если вы не хотите, чтобы служба SSH автоматически запускалась при загрузке системы (из соображений безопасности), удалите службу sshd из автозагрузки системы следующим образом:
Если вы хотите остановить службу sshd после настройки сервера CentOS 8, вы можете сделать это следующим образом:
Если вы измените файлы конфигурации сервера SSH, то, чтобы изменения вступили в силу, вам придется перезапустить службу sshd. Вы можете перезапустить службу sshd следующим образом:
Подключение к SSH-серверу:
Чтобы подключиться к серверу SSH, вам необходимо знать IP-адрес вашего сервера CentOS 8, если у вас установлено программное обеспечение сервера SSH.
Чтобы найти IP-адрес, выполните следующую команду на своем компьютере с CentOS 8.
Как видите, IP-адрес моего компьютера с CentOS 8 — 192.168.21.226. Для вас это будет иначе. Поэтому обязательно замените его своим.
Теперь с клиентского компьютера (должны быть установлены клиентские программы SSH) выполните следующую команду, чтобы подключиться к серверу CentOS 8 с помощью SSH:
Теперь введите yes и нажмите .
Теперь введите пароль вашего имени_пользователя и нажмите .
Вы должны войти в систему с CentOS 8 через SSH.
Теперь вы можете запустить любую команду на сервере CentOS 8 из клиента.
После завершения закройте сеанс SSH следующим образом:
Сеанс SSH должен быть закрыт.
Файлы конфигурации SSH:
В CentOS 8 файлы конфигурации сервера и клиента SSH находятся в каталоге /etc/ssh.
Содержимое каталога /etc/ssh показано на снимке экрана ниже.
Здесь ssh_config и ssh_config.d/05-redhat.conf — это файлы конфигурации клиента SSH.
sshd_config — это файл конфигурации сервера SSH. Файл sshd_config находится в центре внимания в этой статье.
Настройка SSH-сервера:
Чтобы отредактировать файл sshd_config, вы можете использовать стандартный текстовый редактор CentOS 8 vi.
Чтобы открыть файл конфигурации /etc/ssh/sshd_config в текстовом редакторе vi, выполните следующую команду:
Должен быть открыт файл конфигурации. Чтобы изменить файл, нажмите i, чтобы перейти в режим вставки.
После редактирования файла конфигурации нажмите , чтобы вернуться в командный режим.
Если вы хотите сохранить файл и закрыть текстовый редактор vi, введите :wq! и нажмите .
Если вы хотите отменить изменения и закрыть текстовый редактор vi, введите :q! и нажмите .
Изменение порта SSH-сервера:
Если вы хотите изменить порт SSH-сервера с порта 22 по умолчанию на какой-либо другой (скажем, 8111) из соображений безопасности, раскомментируйте строку, отмеченную на снимке экрана ниже, в файле конфигурации sshd_config.
После установки порта файл конфигурации должен выглядеть следующим образом. Когда закончите, сохраните файл.
Теперь настройте SELinux, чтобы разрешить порт 8111 для SSH, с помощью следующей команды:
Прежде чем завершить изменение порта, обязательно разрешите трафик на новый порт через брандмауэр, если он запущен. Например, следующая последовательность команд:
Теперь перезапустите службу sshd следующим образом:
С этого момента сервер SSH должен работать на порту 8111.
Изменение адреса прослушивания:
Если вы хотите, чтобы сервер SSH прослушивал только один сетевой интерфейс, добавьте следующую строку в файл sshd_config.
Адрес прослушивания IP_ADDRESS_OF_INTERFACE
После установки ListenAddress файл конфигурации должен выглядеть следующим образом.
Отключить вход root:
По умолчанию CentOS 8 разрешает вход пользователю root через SSH. Если вы этого не хотите, измените PermitRootLogin yes на PermitRootLogin no в файле конфигурации sshd_config.
Файл конфигурации должен выглядеть следующим образом, если для параметра PermisRootLogin задано значение no.
Настройка максимального количества сеансов и максимального количества попыток ввода пароля:
Если вы хотите ограничить количество пользователей, которые могут оставаться на вашем сервере CentOS 8 через SSH, раскомментируйте MaxSessions в файле sshd_config и установите желаемый номер сеанса (по умолчанию 10).
Файл конфигурации должен выглядеть следующим образом, если для параметра MaxSessions установлено значение 10.
Таким же образом вы можете установить ограничение на количество неудачных попыток входа в систему. Просто раскомментируйте MaxAuthTries и укажите, сколько неудачных попыток входа вы хотите разрешить перед закрытием соединения.
Файл конфигурации должен выглядеть следующим образом, если для параметра MaxAuthTries задано значение 3.
Итак, вот как установить и настроить SSH-сервер в CentOS 8. Спасибо, что прочитали эту статью.
Это руководство по настройке OpenSSH в CentOS 7. Secure Shell или SSH — это протокол, который позволяет пользователям подключаться к удаленной системе с использованием архитектуры клиент-сервер. Сеанс входа в систему зашифрован и очень безопасен. Сегодня мы собираемся показать вам, как настроить и использовать OpenSSH на Linux VPS с использованием CentOS 7 в качестве операционной системы. Настройка OpenSSH в CentOS 7 — довольно простая задача, если внимательно следовать приведенному ниже руководству.
CentOS 7 предоставляет пакеты openssh openssh-server и openssh-clients. Пакет openssh требует, чтобы в системе были установлены библиотеки openssl, так как он предоставляет несколько очень важных криптографических библиотек.
Если вы закажете CentOS VPS Hosting у нас, все эти пакеты будут установлены на вашем сервере. Если нет, вам нужно будет установить их вручную.
Для этого вы можете использовать следующую команду:
После установки пакетов вы готовы подключиться к серверу через SSH. Файл конфигурации по умолчанию для демона sshd — /etc/ssh/sshd_config, и большинство настроек демона определяются в этом файле. Прежде чем вносить какие-либо изменения, рекомендуется сделать копию исходного файла конфигурации, чтобы, если у вас возникнут проблемы, вы могли вернуть изменения к значениям по умолчанию.
Для просмотра и редактирования файла конфигурации вы можете использовать любой текстовый редактор. Мы будем использовать nano из-за его простоты.
Первое, что вы, возможно, захотите изменить, — это номер порта для прослушивания. По умолчанию демон SSH прослушивает порт 22, и из соображений безопасности вы можете изменить номер на другой. Измените строку:
Вы можете использовать номер порта по вашему выбору, который не используется какой-либо другой службой на вашем CentOS VPS. После внесения изменений вы можете сохранить и закрыть файл. Чтобы изменения вступили в силу, необходимо перезапустить демон SSH.
Для дальнейшего повышения безопасности рекомендуется использовать аутентификацию на основе ключей. Аутентификация на основе ключа позволит вам подключиться к вашему серверу через SSH без использования пароля пользователя вашей системы. Вместо этого вам нужно будет использовать ключи SSH. Для получения дополнительной информации о том, как войти через SSH без пароля с помощью ключей SSH, мы рекомендуем вам прочитать наше специальное руководство.
Конечно, вам не нужно знать, как настраивать и использовать OpenSSH в CentOS 7, если вы используете одну из наших услуг хостинга CentOS 7 VPS, и в этом случае вы можете просто попросить наших опытных администраторов Linux помочь вам с Конфигурация и настройка OpenSSH на CentOS 7. Они доступны круглосуточно и без выходных и немедленно обработают ваш запрос.
ПС. Если вам понравился этот пост о том, как настроить OpenSSH на CentOS 7, поделитесь им с друзьями в социальных сетях, используя кнопки слева, или просто оставьте ответ ниже. Спасибо.
Читайте также: