LogNotes

2025-07-01 12:17:58
В RHEL 8 (и CentOS 8) появилась удобная возможность **удалённого управления systemd-сервисами через SSH** с помощью стандартной утилиты `systemctl`. Это позволяет администраторам выполнять операции запуска, остановки, перезапуска и проверки статуса сервисов на удалённых серверах без необходимости прямого входа в систему.

Основные моменты управления удалёнными системами через systemd:

- **Подключение к удалённому серверу через SSH**  
  Для управления сервисами используется команда `systemctl` с параметром `--host` или `-H`, в котором указывается пользователь и адрес удалённого хоста, например:  
  ```bash
  systemctl --host root@remote-server.example.com status httpd.service
  ```
  Аналогично можно запускать: `start`, `stop`, `restart` и другие команды для сервисов на удалённом сервере[1][2].

- **Требования к удалённому серверу**  
  На удалённой машине должен быть запущен SSH-сервер (`sshd`), а также установлен и настроен systemd (что характерно для RHEL 8/CentOS 8 по умолчанию). Для безопасности рекомендуется использовать аутентификацию по ключам SSH без пароля[3][2].

- **Управление через веб-консоль (Cockpit)**  
  RHEL 8 предоставляет веб-интерфейс **Cockpit**, который позволяет централизованно управлять несколькими удалёнными системами через браузер. Для этого на удалённых системах также должен быть активен SSH, а сама веб-консоль может работать на выделенном сервере-бастионе, обеспечивая защищённый доступ к остальным хостам по SSH[4].

- **Преимущества удалённого управления systemd**  
  - Унификация команд для разных дистрибутивов Linux.  
  - Возможность централизованного контроля сервисов в распределённых средах и облаках.  
  - Использование возможностей systemd по управлению зависимостями и параллельному запуску сервисов.  
  - Удобный доступ к логам через `journalctl` для удалённых систем.

- **Пример использования**  
  Для проверки статуса сервиса `httpd` на удалённом сервере:  
  ```bash
  systemctl -H root@192.168.1.100 status httpd.service
  ```
  Для запуска:  
  ```bash
  systemctl -H root@192.168.1.100 start httpd.service
  ```

Таким образом, в RHEL 8 systemd расширил возможности администрирования, позволяя эффективно управлять сервисами на удалённых серверах через SSH и веб-консоль, что значительно упрощает обслуживание больших и распределённых инфраструктур[1][3][4][2].

[1] https://www.ucartz.com/clients/knowledgebase/1921/How-to-Control-Systemd-Services-on-Remote-Linux-Server.html
[2] https://www.tecmint.com/control-systemd-services-on-remote-linux-server/
[3] https://draculaservers.com/tutorials/control-systemd-services-on-remote-linux-server/
[4] https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/8/html-single/managing_systems_using_the_rhel_8_web_console/index
[5] https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/8/html/configuring_basic_system_settings/managing-systemd_configuring-basic-system-settings
[6] https://www.techotopia.com/index.php?title=Configuring_RHEL_systemd_Units&;mobileaction=toggle_view_desktop
[7] https://man7.org/linux/man-pages/man8/systemd-journal-remote.service.8.html
[8] https://linuxconfig.org/redhat-8-enable-ssh-service
[9] https://last9.io/blog/systemctl-guide/
[10] https://www.unixsysadmin.com/systemd-user-services/
← Previous Next →
Back to list