Как удаленно управлять сервером Linux с помощью SSH

SSH (Secure Shell) является протоколом, который используется для безопасного доступа к удаленному серверу в локальной сети или Интернете для настройки, управления, мониторинга, устранения неполадок и т.д. В этой статье я расскажу о том, как можно управлять удаленным сервером Linux с помощью SSH.

Как установить открытый SSH-сервер?

После того, как вы установили новую Linux-машину в вашей инфраструктуре, важно сделать ее готовой к удаленному доступу. Поэтому обязательно нужно установить open ssh на удаленном сервере или машине, к которой вы пытаетесь получить доступ.

Debina\Ubuntu

Перед установкой сервера open SSH выполните следующую команду для обновления репозитория.

После обновления репозитория выполните следующую команду с правами root для установки открытого SSH-сервера.

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

CentOS

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

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

После установки Open SSh на стороне сервера мы можем изменить его основные параметры конфигурации. Откройте терминал и выполните следующую команду с правами root.

Ниже приведен пример вывода.

Редактирование файла sshd_config

Вы можете изменить различные параметры в вышеуказанном файле.

По умолчанию SSH прослушивает порт 22. Вы можете изменить его на нужный вам порт. Вы также можете изменить максимальное количество сеансов (MaxSessions), которые могут быть установлены с сервером одновременно, по умолчанию установлено значение 10.

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

Как мы уже говорили, по умолчанию сервер прослушивает порт 22. Если вы хотите настроить сервер на прослушивание определенного порта, то вот процедура.

Откройте терминал и выполните следующую команду с правами root.

Должен открыться файл, как показано на скриншоте выше.

Найдите Port 22 или #Port 22 и введите желаемый номер порта без знака #.

Рекомендуется использовать номер порта между 1024 и 65535, так как порты 0-1023 зарезервированы для определенных служб.

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

Ниже приведен пример вывода после изменения номера порта.

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

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

Включение входа root на сервере SSH

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

Откройте терминал и выполните следующую команду с правами root, чтобы открыть файл конфигурации.

Добавьте следующую строку в блок аутентификации,

Ниже приведен пример вывода после внесения изменений в конфигурационный файл.

Разрешить вход в систему SSH root

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

Сокращение количества неудачных попыток входа на сервер SSH

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

Откройте терминал и выполните следующую команду с привилегиями root.

Добавьте следующую строку (предположим, что вы хотите установить это значение равным 1) в блок Authentication.

Ниже приведен пример вывода после внесения изменений в файл.

Настройка максимального числа повторных попыток аутентификации

 

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

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

Настройка SSH-сервера для прослушивания определенных IP-адресов

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

Предположим, у меня есть два IP-адреса (10.1.1.2 и 10.1.1.3), назначенных моему интерфейсу, как показано на следующем снимке экрана. Я хочу заставить свой сервер прослушивать IP-адрес 10.1.1.2.

Настройка IP-адреса прослушивания SSH-сервера

Откройте терминал и выполните следующую команду с правами root, чтобы открыть файл конфигурации SSH.

Добавьте следующую строку в верхней части файла,

Ниже приведен пример вывода после внесения изменений в конфигурационный файл.

Настройка IP-адреса прослушивания

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

Разрешение или запрет определенным пользователям или группам входить на SSH-сервер

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

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

Предположим, вы хотите разрешить только пользователю 'user' удаленно входить на SSH-сервер. Никакой другой пользователь не сможет войти на SSH-сервер. Если у вас несколько пользователей, они должны быть разделены пробелом.

Добавьте следующую строку в файл конфигурации SSH-сервера.

Ниже приведен пример конфигурационного файла после добавления этой строки,

Разрешить подключение к SSH только определенным пользователям

Перезапустите службу SSH, выполнив на терминале следующую команду с правами root,

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

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

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

или

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

Комбинация разрешений и запретов обрабатывается в следующем порядке.

  1. DenyUsers
  2. AllowUsers
  3. DenyGroups
  4. AllowGroups

Изменение времени отсрочки входа в систему

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

Откройте терминал и выполните следующую команду с правами root, чтобы открыть файл конфигурации сервера.

Изменение льготного времени входа в систему SSH

Найдите следующую строку,

Замените эту строку на желаемое льготное время, например, 1 минута. Полная строка должна быть такой,

Ниже приведен пример конфигурационного файла после внесения изменений.

Настройка времени входа в систему

Закройте файл и перезапустите службу SSH, выполнив команду file.

Как установить клиент OpenSSH

Машина Linux, которая собирается получить доступ к удалённой машине или серверу, называется клиентом, и нам нужно установить на неё 'open SSH client'.

Debian

Откройте терминал и выполните следующую команду для обновления репозитория.

Дождитесь завершения операции.

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

Когда появится запрос на подтверждение, нажмите Y на клавиатуре. Установка может занять несколько минут, поэтому, пожалуйста, наберитесь терпения.

CentOS

Когда появится запрос на подтверждение, нажмите Y на клавиатуре. Установка может занять несколько минут, поэтому, пожалуйста, наберитесь терпения.

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

Подключение к удаленному серверу Linux с помощью SSH

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

Ниже приведён полный синтаксис команды, если ваш SSH-сервер прослушивает порт 22 по умолчанию.

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

Предположим, пользователь - user, а IP-адрес удаленной машины - 192.168.1.2. Выполните следующую команду на терминале.

Теперь вы должны быть безопасно подключены.

Однако, если ваш SSH-сервер прослушивает другой порт (например, 2222). Полный синтаксис команды должен быть следующим.

Предположим, пользователь - user, а IP-адрес удаленной машины - 192.168.1.3. Выполните следующую команду на терминале.

Заключение

Итак, это был урок по удаленному управлению сервером Linux с помощью SSH. Надеюсь, вам понравилось.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий