Обзор развертывания KVM на сервере¶
Предварительные требования¶
Для корректной работы системы должны быть соблюдены следующие условия:
-
Операционная система: Ubuntu.
-
Доступ к интернету для получения сертификатов Let's Encrypt и установки пакетов.
-
Открытые порты: 443 (HTTPS) и 80 (HTTP, используется временно для Certbot).
FDQN итоговой панели на домене hostkey.in¶
Для доступа к веб-интерфейсу управления используется следующий шаблон доменного имени:
| Параметр | Значение |
|---|---|
| Префикс | kvm |
| Домен | hostkey.in |
| Полный шаблон | kvm{Server_ID_from_Invapi}.hostkey.in |
Процесс установки приложения¶
Развертывание включает в себя установку среды виртуализации KVM и панели управления Cockpit. Основные этапы:
-
Установка системных пакетов (QEMU, Libvirt, Cockpit).
-
Настройка сетевого моста и служб виртуализации.
-
Получение SSL-сертификатов Let's Encrypt для обеспечения безопасного доступа по HTTPS.
-
Интеграция сертификатов в веб-интерфейс управления (Cockpit).
Права доступа и безопасность¶
Безопасность системы обеспечивается следующими мерами:
-
Разрешен вход пользователю
rootв интерфейс Cockpit (настройка/etc/cockpit/disallowed-users). -
Ограничение прав на файлы сертификатов: владельцем является
root, группа —cockpit-ws, права доступа —640. -
Использование режима работы контейнеров с ограниченным доступом к системным ресурсам.
Базы данных¶
В данной конфигурации базы данных не используются.
Контейнеры Docker и их запуск¶
Для управления SSL-сертификатами используется Docker-контейнер:
| Параметр | Значение |
|---|---|
| Имя образа | jonasal/nginx-certbot:latest |
| Режим сети | host |
| Политика перезапуска | unless-stopped |
| Переменные окружения | CERTBOT_EMAIL=hkadm@hostkey.com |
| Тома (volumes) | nginx_secrets:/etc/letsencrypt/data/nginx/user_conf.d:/etc/nginx/user_conf.d |
Инструкция по обновлению приложения¶
Обновление выполняется через pull и перезапуск контейнеров или путем обновления системных пакетов через менеджер пакетов apt.
Настройки прав¶
Для директории с сертификатами Cockpit установлены следующие права:
-
Директория
/etc/cockpit/ws-certs.d: владелецroot, группаroot, режим0755. -
Файлы
.crtи.key: владелецroot, группаcockpit-ws, режим640.
Расположение конфигурационных файлов и данных¶
Основные пути к файлам:
-
Конфигурации Nginx (через Docker):
/data/nginx/user_conf.d -
Сертификаты Let's Encrypt:
/etc/letsencrypt/live/{FQDN}/ -
Сертификаты Cockpit:
/etc/cockpit/ws-certs.d/ -
Конфигурация Nginx-Certbot (env):
/data/nginx/nginx-certbot.env
Доступные порты для подключения¶
| Порт | Протокол | Назначение |
|---|---|---|
| 443 | HTTPS | Веб-интерфейс управления Cockpit |
| 9090 | TCP | Альтернативный порт доступа (согласно тегам панели) |