Обзор развертывания Proxmox Backup Server на сервере¶
Предварительные требования и базовые условия¶
Для развертывания Proxmox Backup Server требуется операционная система Debian 12 (Bookworm). Процесс установки включает управление пакетами на уровне системы и требует прав root. Необходимы следующие компоненты и конфигурации:
-
Операционная система: Debian 12 (Bookworm)
-
Права доступа: Для установки пакетов и управления службами требуется доступ root.
-
Требуемые пакеты:
curl,wget,ca-certificates,gnupg,zfs-dkmsиlinux-headers-amd64. -
Конфигурация репозитория: Система должна быть настроена на использование репозитория Proxmox PBS без подписки (no-subscription).
-
Сетевые порты:
-
Порт внутренней службы:
8007 -
Внешний порт HTTPS:
443
FQDN финальной панели¶
Веб-интерфейс Proxmox Backup Server доступен по следующему формату Полного Квалифицированного Доменного Имени (FQDN) в домене hostkey.in:
proxmox-backup-server<Server ID>.hostkey.in:443
Замените <Server ID> на конкретный идентификатор, назначенный экземпляру сервера. Служба слушает порт 443 для защищенных соединений HTTPS.
Структура файлов и каталогов¶
Развертывание использует специфические каталоги для файлов конфигурации, хранения данных и управления контейнерами:
-
Конфигурация репозитория:
/etc/apt/sources.list.d/pbs.list -
GPG-ключ:
/etc/apt/trusted.gpg.d/proxmox-release.gpg -
Каталог конфигурации Nginx:
/data/nginx/user_conf.d/ -
Каталог Docker Compose:
/root/nginx/ -
Файл Docker Compose:
/root/nginx/compose.yml -
Файл окружения Nginx:
/data/nginx/nginx-certbot.env -
Том SSL-сертификатов: Монтируется в
/etc/letsencryptвнутри контейнера, сопоставлен с внешним томомnginx_secrets.
Процесс установки приложения¶
Proxmox Backup Server устанавливается как нативный пакет на хосте Debian, после чего разворачивается контейнер обратного прокси-сервера.
-
Обновление системы: Пакеты системы обновляются и обновляются до последних версий дистрибутива.
-
Установка зависимостей: Устанавливаются основные инструменты, включая
curl,wget,ca-certificatesиgnupg. -
Настройка репозитория:
-
Если присутствует, отключается корпоративный репозиторий Proxmox PBS.
-
В основном списке источников включаются компоненты
contribиnon-free-firmware. -
Загружается и добавляется в каталог доверенных ключей GPG-ключ Proxmox PBS.
-
Репозиторий Proxmox PBS без подписки добавляется в
/etc/apt/sources.list.d/pbs.list.
-
-
Установка пакетов: Устанавливается мета-пакет
proxmox-backup-server. -
Поддержка ZFS: Устанавливаются пакеты
zfs-dkmsиlinux-headers-amd64для поддержки файловых систем ZFS. -
Активация службы: Служба
proxmox-backupзапускается и включается для запуска при загрузке. -
Развертывание прокси: Разворачивается контейнер Docker, работающий под образом
jonasal/nginx-certbot:latest, для обработки терминации SSL и обратного проксирования.
Права доступа и безопасность¶
Безопасность управляется через конфигурацию обратного прокси-сервера и изоляцию служб:
-
SSL/TLS: Контейнер
nginx-certbotавтоматически управляет SSL-сертификатами через Let's Encrypt. -
Межсетевой экран (Firewall): Внешний порт
443открыт для трафика HTTPS. Порт внутренней службы8007связан с127.0.0.1и не доступен напрямую из внешней сети. -
Конфигурация пользователя: Файлы конфигурации Nginx принадлежат пользователю
rootс правами доступа0644для файлов и0755для каталогов. -
Изоляция контейнера: Прокси-контейнер работает с параметром
network_mode: hostдля обеспечения прямого связывания портов и управления сертификатами.
Базы данных¶
Proxmox Backup Server управляет собственной внутренней базой данных и метаданными хранилища. Для стандартного развертывания, описанного в исходных файлах, не требуется конфигурация подключения к внешней базе данных. Данные хранятся локально в файловой системе хоста, обычно используя наборы данных ZFS, управляемые службой proxmox-backup.
Контейнеры Docker и их развертывание¶
Развертывается один контейнер Docker, выполняющий функции обратного прокси-сервера и терминации SSL.
-
Образ:
jonasal/nginx-certbot:latest -
Политика перезапуска:
unless-stopped -
Режим сети:
host -
Переменные окружения:
-
CERTBOT_EMAIL: Установлено значениеhkadm@hostkey.com -
Томы:
-
nginx_secrets: Внешний том, смонтированный в/etc/letsencryptдля хранения сертификатов. -
/data/nginx/user_conf.d: Каталог хоста, смонтированный в/etc/nginx/user_conf.dдля пользовательских конфигураций Nginx.
Контейнер управляется через файл docker compose, расположенный по пути /root/nginx/compose.yml.
Прокси-серверы¶
В развертывании используется Nginx внутри контейнера Docker для обработки входящего трафика.
-
ПО прокси-сервера: Nginx (через образ
jonasal/nginx-certbot). -
Управление SSL: Certbot интегрирован в контейнер для автоматической выдачи и продления сертификатов.
-
Конфигурация:
-
Создается пользовательский файл конфигурации по пути
/data/nginx/user_conf.d/proxmox-backup-server<Server ID>.hostkey.in.conf. -
Конфигурация включает блок
location /, который проксирует запросы к внутреннему экземпляру Proxmox Backup Server. -
Директива
proxy_passустановлена вhttp://127.0.0.1:8007. -
Маршрутизация:
-
Внешние запросы к порту
443направляются в контейнер Nginx. -
Nginx пересылает трафик на внутренний Proxmox Backup Server на порт
8007.
Настройки прав доступа¶
Права доступа к файлам и каталогам строго определены для обеспечения безопасности и корректной работы:
-
Каталог Nginx:
/root/nginxсоздается с владельцемroot:rootи режимом0755. -
Файл Compose:
/root/nginx/compose.ymlустанавливается с владельцемroot:rootи режимом0644. -
Каталог конфигурации Nginx:
/data/nginx/user_conf.dмонтируется в контейнер; файлы внутри управляются процессом развертывания. -
GPG-ключ:
/etc/apt/trusted.gpg.d/proxmox-release.gpgустанавливается с режимом0644.
Расположение файлов конфигурации и данных¶
Следующая таблица суммирует критические расположения файлов:
| Тип файла | Путь | Описание |
|---|---|---|
| Список репозиториев APT | /etc/apt/sources.list.d/pbs.list | Определение репозитория Proxmox PBS без подписки |
| GPG-ключ | /etc/apt/trusted.gpg.d/proxmox-release.gpg | Ключ подписи репозитория |
| Docker Compose | /root/nginx/compose.yml | Определение оркестрации контейнера |
| Файл окружения Nginx | /data/nginx/nginx-certbot.env | Переменные окружения для прокси-контейнера |
| Конфигурация Nginx | /data/nginx/user_conf.d/proxmox-backup-server<Server ID>.hostkey.in.conf | Пользовательская конфигурация обратного прокси-сервера |
| SSL-сертификаты | /etc/letsencrypt (через том) | Хранилище сертификатов Let's Encrypt |
Доступные порты для подключения¶
Система открывает следующие порты для доступа клиентов:
-
Порт 443 (HTTPS): Основная точка входа для веб-интерфейса Proxmox Backup Server, обрабатываемая обратным прокси-сервером Nginx.
-
Порт 8007 (HTTP): Внутренний порт, используемый приложением Proxmox Backup Server. Этот порт связан с
127.0.0.1и доступен локально только контейнеру Nginx.
Запуск, остановка и обновление¶
Команды управления службами используются для контроля Proxmox Backup Server и Docker-прокси.
-
Служба Proxmox Backup Server:
-
Запуск:
systemctl start proxmox-backup -
Остановка:
systemctl stop proxmox-backup -
Включение при загрузке:
systemctl enable proxmox-backup -
Статус:
systemctl status proxmox-backup -
Контейнер Docker-прокси:
-
Запуск/Перезапуск:
docker compose up -d(выполняется из каталога/root/nginx) -
Остановка:
docker compose down(выполняется из каталога/root/nginx) -
Обновление образа: Загрузите последний образ и перезапустите контейнер, используя
docker compose pull, за которым следуетdocker compose up -d. -
Обновление пакетов:
-
Для обновления программного обеспечения Proxmox Backup Server выполните
apt update, за которым следуетapt upgrade proxmox-backup-server.