Обзор
sshd работает в фоновом режиме и по умолчанию ожидает подключения SSH-клиентов через TCP-порт 22. Все соединения шифруются для обеспечения безопасности и поддерживают различные методы аутентификации (пароль, открытый ключ и т. д.).
Основные функции
- Предоставляет безопасный удаленный доступ к командной оболочке
- Поддерживает передачу файлов через SCP/SFTP
- Функции туннелирования портов
- Поддерживает различные механизмы аутентификации (пароль, открытый ключ)
Файл конфигурации по умолчанию
Поведение sshd в основном контролируется следующим файлом конфигурации.
- Путь: /etc/ssh/sshd_config
Основные параметры
sshd обычно запускается как системная служба, поэтому редко возникает необходимость использовать параметры командной строки напрямую. Однако существует несколько параметров, которые могут быть полезны для отладки или тестирования.
Запуск и отладка
Сгенерированная команда:
Комбинируйте команды.
Описание:
`sshd` Запускает команду.
Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.
Примеры использования
sshd обычно управляется через менеджеры служб, такие как systemd.
Проверка статуса службы sshd
sudo systemctl status sshd
Проверяет текущее состояние службы sshd.
Перезапуск службы sshd
sudo systemctl restart sshd
Перезапускает службу sshd для применения изменений после их внесения в конфигурацию.
Включение службы sshd (автозапуск при загрузке)
sudo systemctl enable sshd
Настраивает автоматический запуск службы sshd при загрузке системы.
Проверка файла конфигурации sshd
sudo sshd -t
Проверяет файл sshd_config на наличие синтаксических ошибок.
Запуск sshd в режиме отладки (для тестирования)
sudo sshd -d -p 2222
Запускает sshd в режиме отладки на другом порту (например, 2222) вместо порта по умолчанию. Полезно для тестирования без влияния на реальную службу.
Установка
sshd является частью пакета OpenSSH server. Он предустановлен в большинстве дистрибутивов Linux, но если его нет, вы можете установить его с помощью следующих команд.
Системы на базе Debian/Ubuntu
sudo apt update
sudo apt install openssh-server
Системы на базе CentOS/RHEL/Fedora
sudo yum install openssh-server # или sudo dnf install openssh-server
Советы и рекомендации
sshd играет очень важную роль в безопасности системы, поэтому при настройке рекомендуется учитывать следующие моменты.
Советы по усилению безопасности
- **Изменение порта по умолчанию**: Измените `Port 22` на другой произвольный высокий номер порта, чтобы уменьшить количество случайных атак.
- **Отключение входа для root**: Установите `PermitRootLogin no`, чтобы запретить прямой вход под учетной записью root.
- **Отключение аутентификации по паролю и использование аутентификации по открытому ключу**: Установите `PasswordAuthentication no` и используйте аутентификацию по открытому ключу (`PubkeyAuthentication yes`) для повышения безопасности.
- **Ограничение разрешенных пользователей**: Явно укажите пользователей или группы, которым разрешен SSH-доступ, с помощью опций `AllowUsers` или `AllowGroups`.
- **Настройка брандмауэра**: Настройте брандмауэр (ufw, firewalld и т. д.) так, чтобы доступ к порту SSH (по умолчанию 22 или измененному порту) был разрешен только извне.
Перезапуск службы после изменения конфигурации
После внесения изменений в файл `sshd_config` обязательно перезапустите службу командой `sudo systemctl restart sshd`, чтобы изменения вступили в силу.
Тестирование подключения
После изменения конфигурации обязательно попробуйте подключиться по SSH из другого терминала, чтобы убедиться, что изменения применились корректно. Рекомендуется выполнять тестирование, сохраняя текущую сессию.