Настройка Centos 8 ssh

Обновлено: 21.11.2024

SSH, или безопасная оболочка, представляет собой зашифрованный протокол, используемый для администрирования и связи с серверами. При работе с сервером CentOS вы, скорее всего, будете проводить большую часть времени в терминальном сеансе, подключенном к вашему серверу через SSH.

В этом руководстве мы сосредоточимся на настройке ключей SSH для сервера CentOS 8. Ключи SSH обеспечивают простой и безопасный способ входа на сервер и рекомендуются для всех пользователей.

Шаг 1. Создание пары ключей RSA

Первый шаг — создать пару ключей на клиентском компьютере (обычно это ваш локальный компьютер):

После ввода команды вы должны увидеть следующее приглашение:

Нажмите ENTER, чтобы сохранить пару ключей в подкаталог .ssh/ в вашем домашнем каталоге, или укажите альтернативный путь.

Если вы ранее создали пару ключей SSH, вы можете увидеть следующее приглашение:

Если вы решите перезаписать ключ на диске, вы больше не сможете проходить аутентификацию с использованием предыдущего ключа. Будьте очень осторожны, выбирая «да», так как это разрушительный процесс, который невозможно обратить вспять.

Вы должны увидеть следующее приглашение:

Здесь вы можете дополнительно ввести безопасную парольную фразу, что настоятельно рекомендуется. Парольная фраза добавляет дополнительный уровень безопасности вашему ключу, предотвращая вход неавторизованных пользователей.

Вы должны увидеть следующий вывод:

Теперь у вас есть открытый и закрытый ключи, которые вы можете использовать для аутентификации. Следующим шагом является получение открытого ключа на вашем сервере, чтобы вы могли использовать аутентификацию на основе ключа SSH для входа в систему.

Шаг 2 — Копирование открытого ключа на ваш сервер CentOS

Самый быстрый способ скопировать ваш открытый ключ на хост CentOS — использовать утилиту ssh-copy-id . Этот метод настоятельно рекомендуется, если он доступен. Если у вас нет ssh-copy-id на клиентском компьютере, вы можете использовать один из двух альтернативных методов (копирование через SSH на основе пароля или копирование ключа вручную).

Копирование открытого ключа с помощью ssh-copy-id

Инструмент ssh-copy-id включен по умолчанию во многие операционные системы, поэтому он может быть доступен в вашей локальной системе. Чтобы этот метод работал, у вас уже должен быть доступ к серверу по SSH на основе пароля.

Чтобы использовать утилиту, вам нужно только указать удаленный хост, к которому вы хотите подключиться, и учетную запись пользователя, к которой у вас есть пароль SSH-доступа. Это учетная запись, в которую будет скопирован ваш открытый SSH-ключ:

Вы можете увидеть следующее сообщение:

Это означает, что ваш локальный компьютер не распознает удаленный хост. Это произойдет при первом подключении к новому хосту. Введите yes и нажмите ENTER, чтобы продолжить.

Далее утилита просканирует вашу локальную учетную запись на наличие ключа id_rsa.pub, который мы создали ранее. Когда он найдет ключ, он запросит у вас пароль учетной записи удаленного пользователя:

Введите пароль (ваш ввод не будет отображаться в целях безопасности) и нажмите ENTER . Утилита подключится к учетной записи на удаленном хосте, используя предоставленный вами пароль. Затем он скопирует содержимое вашего ключа ~/.ssh/id_rsa.pub в файл ~/.ssh/authorized_keys удаленной учетной записи.

Вы должны увидеть следующий вывод:

На данный момент ваш ключ id_rsa.pub загружен в удаленную учетную запись. Вы можете перейти к шагу 3.

Копирование открытого ключа с помощью SSH

Если у вас нет доступного ssh-copy-id, но у вас есть SSH-доступ к учетной записи на вашем сервере на основе пароля, вы можете загрузить свои ключи, используя более традиционный метод SSH.

Мы можем сделать это, используя команду cat, чтобы прочитать содержимое открытого ключа SSH на нашем локальном компьютере и передать его через SSH-соединение на удаленный сервер.

С другой стороны, мы можем убедиться, что каталог ~/.ssh существует и имеет правильные разрешения для используемой нами учетной записи.

Затем мы можем вывести переданный контент в файл с именем author_keys в этом каталоге. Мы будем использовать символ перенаправления >> для добавления содержимого вместо его перезаписи. Это позволит нам добавлять ключи, не уничтожая ранее добавленные ключи.

Полная команда выглядит так:

Вы можете увидеть следующее сообщение:

Это означает, что ваш локальный компьютер не распознает удаленный хост. Это произойдет при первом подключении к новому хосту. Введите yes и нажмите ENTER, чтобы продолжить.

После этого вам будет предложено ввести пароль учетной записи удаленного пользователя:

После ввода пароля содержимое вашего ключа id_rsa.pub будет скопировано в конец файла author_keys учетной записи удаленного пользователя. Перейдите к шагу 3, если все прошло успешно.

Копирование открытого ключа вручную

Если у вас нет доступа к серверу по SSH на основе пароля, вам придется выполнить описанный выше процесс вручную.

Мы вручную добавим содержимое вашего id_rsa.pub в файл ~/.ssh/authorized_keys на удаленном компьютере.

Чтобы отобразить содержимое вашего ключа id_rsa.pub, введите его на локальном компьютере:

Вы увидите содержимое ключа, которое должно выглядеть примерно так:

Войдите на удаленный хост любым доступным способом.

После того как вы получите доступ к своей учетной записи на удаленном сервере, убедитесь, что каталог ~/.ssh существует. Эта команда создаст каталог, если это необходимо, или ничего не сделает, если он уже существует:

Теперь вы можете создать или изменить файл author_keys в этом каталоге. Вы можете добавить содержимое вашего файла id_rsa.pub в конец файла author_keys, создав его при необходимости, с помощью этой команды:

В приведенной выше команде замените строку public_key_string выводом команды cat ~/.ssh/id_rsa.pub, которую вы выполнили в своей локальной системе. Он должен начинаться с ssh-rsa AAAA. .

Наконец, мы удостоверимся, что для каталога ~/.ssh и файла author_keys установлены соответствующие разрешения:

Это рекурсивно удаляет все «групповые» и «другие» разрешения для каталога ~/.ssh/.

Если вы используете учетную запись root для настройки ключей для учетной записи пользователя, также важно, чтобы каталог ~/.ssh принадлежал пользователю, а не root :

В этом руководстве нашего пользователя зовут sammy, но вы должны подставить соответствующее имя пользователя в приведенную выше команду.

Теперь мы можем попытаться выполнить аутентификацию на основе ключа на нашем сервере CentOS.

Шаг 3. Вход на сервер CentOS с использованием ключей SSH

Если вы успешно выполнили одну из описанных выше процедур, теперь вы сможете войти на удаленный хост без пароля удаленной учетной записи.

Первоначальный процесс такой же, как и при аутентификации на основе пароля:

Если вы впервые подключаетесь к этому хосту (если вы использовали последний способ, описанный выше), вы можете увидеть что-то вроде этого:

Это означает, что ваш локальный компьютер не распознает удаленный хост. Введите yes и нажмите клавишу ВВОД, чтобы продолжить.

Если вы не указали парольную фразу при создании пары ключей на шаге 1, вы сразу же войдете в систему. Если вы указали парольную фразу, вам будет предложено ввести ее сейчас. После аутентификации для вас должен открыться новый сеанс оболочки с настроенной учетной записью на сервере CentOS.

Если аутентификация на основе ключа прошла успешно, продолжайте изучать способы дополнительной защиты вашей системы, отключив аутентификацию на основе пароля вашего SSH-сервера.

Шаг 4. Отключение аутентификации по паролю на вашем сервере

Если вам удалось войти в свою учетную запись с помощью SSH без пароля, вы успешно настроили аутентификацию на основе SSH-ключа для своей учетной записи. Однако ваш механизм аутентификации на основе пароля по-прежнему активен, а это означает, что ваш сервер по-прежнему подвергается атакам грубой силы.

Прежде чем выполнять действия, описанные в этом разделе, убедитесь, что у вас настроена аутентификация на основе ключа SSH для учетной записи root на этом сервере или, что предпочтительнее, аутентификация на основе ключа SSH настроена для учетной записи без полномочий root. учетная запись на этом сервере с привилегиями sudo. Этот шаг заблокирует входы на основе пароля, поэтому очень важно убедиться, что вы по-прежнему сможете получить доступ с правами администратора.

После того, как вы подтвердите, что у вашей удаленной учетной записи есть права администратора, войдите на удаленный сервер с ключами SSH либо с правами root, либо с учетной записью с правами sudo. Затем откройте файл конфигурации демона SSH:

Когда вы закончите вносить изменения, нажмите ESC, а затем :wq, чтобы записать изменения в файл и выйти. Чтобы реализовать эти изменения, нам нужно перезапустить службу sshd:

В качестве меры предосторожности откройте новое окно терминала и проверьте, правильно ли работает служба SSH, прежде чем закрыть текущий сеанс:

Убедившись, что служба SSH по-прежнему работает правильно, вы можете безопасно закрыть все текущие сеансы сервера.

Демон SSH на вашем сервере CentOS теперь отвечает только на ключи SSH. Аутентификация на основе пароля успешно отключена.

Заключение

Теперь на вашем сервере должна быть настроена аутентификация на основе SSH-ключа, что позволит вам входить в систему без ввода пароля учетной записи.

Если вы хотите узнать больше о работе с SSH, ознакомьтесь с нашим руководством по основам SSH.

Хотите узнать больше? Присоединяйтесь к сообществу DigitalOcean!

Присоединяйтесь к нашему сообществу DigitalOcean, насчитывающему более миллиона разработчиков, бесплатно! Получайте помощь и делитесь знаниями в нашем разделе "Вопросы и ответы", находите руководства и инструменты, которые помогут вам расти как разработчику и масштабировать свой проект или бизнес, а также подписывайтесь на интересующие вас темы.

Secure Shell, также известная как SSH, – это популярный инструмент, используемый для подключения к серверу через клиент.SSH обеспечивает безопасное удаленное подключение и связь между сервером и его клиентом, а также обеспечивает передачу файлов по удаленному сетевому соединению.

В этом посте мы рассмотрим пошаговое руководство о том, как включить SSH в CentOS 8 и получить доступ к его серверу с клиентского компьютера CentOS 8 при удаленном использовании SSH. Начнем с настройки сервера CentOS 8 для удаленного подключения по SSH.

Настройка сервера CentOS 8 для удаленного подключения

Наша первоочередная задача – настроить сервер CentOS 8 для удаленного подключения.

Шаг 1. Обновите системный репозиторий пакетов
Обновите системный кэш репозитория пакетов, введя следующую команду:

Обновите пакеты системы.

Шаг 2. Установите сервер OpenSSH на сервер CentOS 8.
После обновления кеша репозитория системы и пакетов установите пакет сервера OpenSSH, введя следующую команду:

После успешной установки запустите службу «sshd», если она не запущена.

Шаг 3. Запустите службу OpenSSH
Для запуска службы OpenSSH введите следующую команду:

Проверьте состояние службы с помощью приведенной ниже команды:

Кроме того, включите службу OpenSSH при перезагрузке, введя приведенную ниже команду:

Хорошо, служба OpenSSH активна и готова к подключению. Теперь нам нужно запустить трафик, а для этого нам необходимо настроить брандмауэр.

Шаг 4. Разрешите брандмауэру пропускать любой трафик с SSH-порта 22.
Чтобы разрешить брандмауэру пропускать трафик через SSH, введите следующую команду:

После настройки брандмауэра рекомендуется перезагрузить брандмауэр.

Сервер CentOS 8 готов к подключению через SSH. Давайте узнаем IP-адрес сервера и получим доступ к нему с клиентского компьютера CentOS 8.

Шаг 5: Получите IP-адрес сервера CentOS 8
Чтобы получить IP-адрес сервера CentOS, введите следующую команду:

IP-адрес моего сервера — 192.168.18.186. Давайте подключимся к этой машине с клиентской машины CentOS 8.

Подключиться к серверу CentOS 8 из клиента CentOS 8

Для подключения к серверу CentOS 8 выполните шаг, указанный ниже:

Шаг 1. Установите клиенты OpenSSH на клиентском компьютере с CentOS 8
Прежде всего вам необходимо установить клиенты OpenSSH на клиентском компьютере с CentOS 8.

После установки клиентов OpenSSH создайте и скопируйте пары ключей SSH для подключения к серверу CentOS 8.

Шаг 2. Генерация пары ключей SSH
Для создания пары ключей SSH введите приведенную ниже команду:

Нажмите «Ввод», чтобы сохранить пару ключей в указанном каталоге по умолчанию.

Или, если вы уже сгенерировали пару ключей, нажмите «Ввод», чтобы перезаписать ранее сгенерированную пару ключей.

Укажите кодовую фразу или нажмите «Ввод», чтобы ввести пустую кодовую фразу.

Хорошо, пара ключей успешно сгенерирована, теперь давайте скопируем пару ключей на сервер.

Шаг 3. Скопируйте пару ключей на сервер CentOS 8
Для копирования пары ключей на сервер CentOS 8 введите следующую команду:

Не забудьте заменить «linuxuser» и «192.168.18.186» на имя пользователя и IP-адрес сервера CentOS 8.

Введите «да» и нажмите «Ввод».

Укажите пароль имени пользователя, отображаемого в терминале, и нажмите «Ввод».

Пара ключей будет скопирована на сервер CentOS 8, к которому мы собираемся подключаться.

Шаг 4. Подключитесь к серверу CentOS 8 через SSH.
Теперь просто подключите SSH к серверу CentOS 8, используя следующую команду:

Вот оно! Мы успешно вошли на сервер CentOS 8 с клиентского компьютера CentOS 8, используя SSH.

Заключение

Мы охватили огромный спектр возможностей включения SSH в CentOS 8, установив сервер OpenSSH на компьютере с сервером CentOS 8, включив службу «sshd» и открыв брандмауэр системы для входящего трафика с SSH на порт 22. Мы также научились подключаться к серверу CentOS 8 с клиентского компьютера CentOS 8, устанавливая клиенты OpenSSH, генерируя и копируя пару ключей SSH, копируя пару ключей на сервер и подключаясь к серверу CentOS 8 через SSH.

SSH (от Secure Shell) — это сетевой протокол, который используется для удаленного входа в систему на удаленных компьютерах в локальной сети или через Интернет.

В архитектурах SSH обычно используется SSH-сервер, который используется клиентами SSH для выполнения удаленных команд или управления удаленными компьютерами.

Как опытный пользователь, вполне вероятно, что вы захотите использовать SSH для подключения к удаленным компьютерам по сети.

Как следствие, когда новые хосты подключаются к вашей инфраструктуре, вам, возможно, придется настроить их для установки и включения SSH на них.

В этом руководстве мы рассмотрим, как установить и включить SSH в дистрибутивах CentOS 8.

Мы также увидим, как вы можете установить OpenSSH, чтобы включить свой SSH-сервер в CentOS.

Оглавление

Предпосылки

Чтобы установить сервер SSH на CentOS 8, вам потребуются права sudo на вашем сервере.

Чтобы проверить, есть ли у вас права sudo, выполните следующую команду

Если вы видите следующие записи на своем терминале, это означает, что вы в настоящее время принадлежите к группе sudo.

По умолчанию утилита ssh должна быть установлена ​​на вашем хосте даже при минимальной конфигурации.

Чтобы проверить версию вашей утилиты SSH, вы можете запустить следующую команду

Как видите, я использую OpenSSH v7.8 с OpenSSL v1.1.1.

Обратите внимание, что это не означает, что серверы SSH установлены на моем хосте, это просто означает, что я могу подключаться к удаленным компьютерам в качестве клиента с помощью утилиты SSH.

Это также означает, что на моем хосте будут доступны определенные утилиты, связанные с протоколом SSH (например, scp) или FTP-серверами (например, sftp).

Установка сервера OpenSSH на CentOS 8

Прежде всего, вы должны убедиться, что ваши текущие пакеты обновлены в целях безопасности.

Если вам будут предложены обновления, просто нажмите «y», чтобы принять обновления в вашей системе.

Чтобы установить SSH-сервер в CentOS 8, выполните следующую команду

Команда должна запустить полный процесс установки и настроить все необходимые файлы для вашего SSH-сервера.

Если установка прошла успешно, теперь на вашем хосте должна быть установлена ​​служба sshd.

Чтобы проверить недавно установленную службу, выполните следующую команду

Обратите внимание, что по умолчанию ваш SSH-сервер может быть не запущен или не включен, вам придется сделать это самостоятельно.

Вы можете запустить свой SSH-сервер, выполнив следующую команду (вы увидите, как включить свой SSH-сервер, в следующих главах)

По умолчанию ваш SSH-сервер будет работать через порт 22.

Вы можете проверить, так ли это на вашем хосте, выполнив следующую команду netstat

Отлично! Теперь ваш SSH-сервер запущен и работает на вашем сервере CentOS 8.

Включение трафика SSH в настройках брандмауэра

По умолчанию ваш брандмауэр может не разрешать подключения SSH по умолчанию.

Как следствие, вам придется изменить правила брандмауэра, чтобы принимать SSH.

Чтобы включить SSH-трафик на вашем SSH-сервере, используйте команду firewall-cmd следующим образом

Убедитесь, что службы правильно авторизованы, выполнив следующую команду

Включить SSH-сервер при загрузке системы

Как вы, наверное, заметили, ваш SSH-сервер теперь работает как служба на вашем хосте.

Кроме того, весьма вероятно, что он должен запускаться во время загрузки.

Чтобы проверить, включена ли ваша служба, вы можете запустить следующую команду

Если на вашем терминале не отображаются результаты, включите службу и снова запустите команду

Настройка SSH-сервера в CentOS 8

Прежде чем предоставлять доступ пользователям через SSH, важно настроить параметры безопасности, чтобы избежать атак, особенно если ваш сервер работает как онлайн-VPS.

Атаки SSH довольно распространены: как следствие, вам необходимо правильно настроить свой SSH-сервер, если вы не хотите потерять какую-либо очень важную информацию.

По умолчанию ваши файлы конфигурации SSH находятся в /etc/ssh/

В этом каталоге вы найдете множество различных файлов конфигурации, но наиболее важными из них являются:

  • ssh_config: определяет правила SSH для клиентов.Это означает, что он определяет правила, которые применяются каждый раз, когда вы используете SSH для подключения к удаленному хосту или для передачи файлов между хостами;
  • sshd_config: определяет правила SSH для вашего SSH-сервера. Он используется, например, для определения доступного порта SSH или для запрета определенным пользователям общаться с вашим сервером.

В этом руководстве мы изменим файл sshd_config, так как нас интересует настройка сервера SSH, а не клиентов SSH.

Отключение корневого входа на вашем SSH-сервере

По умолчанию вход в систему root доступен на вашем SSH-сервере.

Очевидно, что этого не должно быть, так как если хакеры войдут на ваш сервер с правами root, это будет полной катастрофой.

Если вы случайно отключили учетную запись root при первоначальной установке CentOS 8, вы все равно можете настроить свой SSH-сервер так, чтобы он отказывался от входа в систему с правами root, на случай, если однажды вы решите снова включить учетную запись root.

Чтобы отключить вход в систему root на вашем SSH-сервере, измените следующую строку

Изменение порта SSH по умолчанию

Первый шаг к запуску защищенного SSH-сервера – изменение значения по умолчанию, назначенного сервером OpenSSH.

Отредактируйте файл конфигурации sshd_config и найдите следующую строку.

Обязательно измените свой порт на тот, который не зарезервирован для других протоколов. В этом случае я выберу 2222.

При подключении к хосту, если он не работает на порту по умолчанию, вы сами указываете порт SSH.

Теперь, когда вы изменили порт по умолчанию, вам нужно настроить SELinux, чтобы изменить порт SSH по умолчанию.

Если вы не выполните этот шаг, вы не сможете перезапустить SSH-сервер.

Дополнительную информацию см. в разделе «Подключение к вашему SSH-серверу».

Настройка аутентификации SSH на основе ключей

В SSH есть два способа подключения к вашему хосту: с использованием аутентификации по паролю (что мы и делаем здесь) или с набором ключей SSH.

Так зачем вам настраивать аутентификацию SSH?

Аутентификацию SSH можно использовать для обхода аутентификации по паролю и для аутентификации без ввода какой-либо конфиденциальной информации, такой как пароль.

Linux просто возьмет открытые ключи, которые вы уже настроили, и отправит их на сервер, который будет отвечать за проверку их целостности.

Если вам нужен пример, есть руководство по настройке ключей SSH в Debian, и шаги должны быть одинаковыми для дистрибутивов CentOS.

Перезапуск SSH-сервера для применения изменений

Чтобы изменения вступили в силу, перезапустите службу SSH и убедитесь, что она перезапущена правильно

Подключение к вашему SSH-серверу

Чтобы подключиться к вашему SSH-серверу, вы будете использовать команду ssh со следующим синтаксисом

Если вы подключаетесь через локальную сеть, обязательно получите локальный IP-адрес вашего компьютера с помощью следующей команды

Кроме того, вы можете получить свой локальный IP-адрес с помощью команды hostnamectl.

Например, чтобы подключиться к моему собственному экземпляру, расположенному по адресу 127.0.0.1, я бы выполнил следующую команду

Вас попросят ввести пароль и подтвердить подлинность сервера.

Отключение вашего SSH-сервера

Чтобы отключить SSH-сервер в CentOS 8, выполните следующую команду

Оттуда ваш SSH-сервер больше не будет доступен.

Выход из SSH-сервера

Чтобы выйти с вашего SSH-сервера в CentOS 8, вы можете нажать Ctrl + D или ввести «выход», и ваше соединение будет разорвано.

Заключение

В этом руководстве вы узнали, как установить, включить, настроить и перезапустить SSH-сервер в CentOS 8.

Обратите внимание, что это руководство точно так же работает и с дистрибутивами RHEL 8.

Из этого руководства вы также узнали, как настроить SSH-сервер, чтобы он был достаточно надежным для основных атак.

Если вас интересует системное администрирование Linux, мы рекомендуем вам ознакомиться с другими нашими руководствами по этой теме.

SSH (Secure Shell) — это сетевой протокол, который используется для удаленного входа в систему на удаленных компьютерах в локальной сети или через Интернет.

Мы рассмотрим, как установить и настроить клиентские и серверные инструменты SSH в дистрибутивах CentOS 8. Просто следуйте приведенным ниже инструкциям.

Установка SSH-клиента

Для подключения к SSH-серверу на клиентском компьютере должны быть установлены клиентские программы OpenSSH.

В случае CentOS/RHEL вы можете установить клиентские программы OpenSSH, выполнив следующую команду:

Приведенная выше команда должна установить клиентские программы SSH.

Установка SSH-сервера

Чтобы подключиться к серверу CentOS 8 с помощью SSH, на вашем компьютере с CentOS 8 должно быть установлено программное обеспечение сервера SSH.

Выполните следующую команду, чтобы установить программное обеспечение SSH-сервера на вашем компьютере с CentOS 8:

Команда должна запустить полный процесс установки серверного пакета OpenSSH.

Управление службой сервера OpenSSH

После того как вы установили программное обеспечение сервера OpenSSH на свой компьютер с CentOS 8, выполните следующую команду, чтобы проверить, работает ли служба sshd:

Приведенная выше команда покажет, активна ли/работает ли служба sshd и разрешен ли ее автоматический запуск при загрузке системы.

По умолчанию ваш SSH-сервер прослушивает все сетевые интерфейсы (0.0.0.0) через порт 22.

Если по какой-то причине служба sshd не запущена на вашем компьютере с CentOS 8, выполните следующую команду, чтобы запустить ее вручную:

Чтобы отключить автоматический запуск службы SSH при загрузке системы из соображений безопасности, выполните следующую команду:

Чтобы остановить службу sshd после настройки сервера CentOS 8, выполните следующее:

Перезапустите службу sshd, чтобы все изменения, внесенные в файлы конфигурации сервера SSH, вступили в силу. Выполните следующую команду:

Подключение к SSH-серверу

Чтобы подключиться к вашему SSH-серверу, мы рекомендуем вам следовать приведенным ниже инструкциям.

Чтобы подключиться к SSH-серверу, если у вас установлено программное обеспечение SSH-сервера, вы должны знать IP-адрес вашего компьютера с CentOS 8.

Узнайте свой IP-адрес, выполнив следующую команду:

Приведенная выше команда покажет IP-адрес вашего компьютера с CentOS.

Затем на клиентском компьютере (должны быть установлены клиентские программы SSH) выполните следующую команду, чтобы подключиться к серверу CentOS 8 с помощью SSH:

Введите yes и нажмите Enter.

Затем введите пароль вашего имени пользователя для входа в систему и нажмите Enter. Вы должны войти в систему с CentOS 8 через SSH

Теперь вы можете запустить любую команду на вашем сервере CentOS 8 из клиента.

По завершении закройте сеанс SSH с помощью следующей команды:

Приведенная выше команда должна закрыть сеанс SSH.

Файлы конфигурации SSH

  • ssh_config: определяет правила SSH для клиентов. Он определяет правила, которые применяются каждый раз, когда вы используете SSH для подключения к удаленному хосту или для передачи файлов между хостами;
  • sshd_config: определяет правила SSH для вашего SSH-сервера. Он определяет доступный порт SSH или запрещает определенным пользователям общаться с вашим сервером.

Настройка SSH-сервера

Отредактируйте файл sshd_config с помощью стандартного текстового редактора CentOS 8 vi.

Выполните следующую команду, чтобы открыть файл конфигурации /etc/ssh/sshd_config в текстовом редакторе vi:

Приведенная выше команда должна открыть файл конфигурации. Чтобы изменить файл, нажмите i, чтобы перейти в режим вставки.

После изменения файла конфигурации нажмите Esc, чтобы вернуться в командный режим.

Чтобы сохранить файл и закрыть текстовый редактор vi, введите :wq! и нажмите Enter.

Чтобы отменить изменения и закрыть текстовый редактор vi, введите :q! и нажмите Enter.

Изменение порта SSH-сервера

Если из соображений безопасности вы хотите изменить порт SSH-сервера с порта 22 по умолчанию на какой-либо другой (скажем, 8111), раскомментируйте строку sshd_config в файле конфигурации.

Отредактируйте файл конфигурации sshd_config и найдите следующую строку.

Настройте SELinux, чтобы разрешить порт 8111 для SSH, с помощью следующей команды:

Перезапустите службу sshd:

С этого момента сервер SSH должен работать на порту 8111.

Изменение адреса прослушивания

Если вы хотите, чтобы сервер SSH прослушивал только один сетевой интерфейс, добавьте следующую строку в файл sshd_config:

Адрес прослушивания IP_ADDRESS_OF_INTERFACE

Отключить вход root

По умолчанию вход root доступен на вашем SSH-сервере.Чтобы отключить вход в систему root на вашем сервере SSH, измените следующие строки: PermitRootLogin yes на PermitRootLogin no в файле конфигурации sshd_config.

Настройка максимального количества сеансов и максимального количества попыток ввода пароля

Чтобы ограничить количество пользователей, которые могут оставаться на вашем сервере CentOS 8 через SSH, раскомментируйте MaxSessions в файле sshd_config и установите желаемый номер сеанса (по умолчанию 10).

Аналогичным образом вы можете установить ограничение на количество неудачных попыток входа в систему. Вам нужно только раскомментировать MaxAuthTries и указать, сколько неудачных попыток входа вы хотите разрешить перед закрытием соединения.

Читайте также: