Развертывание PAM в Docker Compose
Для развертывания BI.ZONE PAM в Docker Compose, виртуальная машина должна соответствовать минимальным требованиям. Дополнительные требования зависят от размера инсталляции.
Описанный ниже пример инсталляции допустим в рамках пилотной версии BI.ZONE PAM на одной виртуальной машине. Для внедрения продукта мы рекомендуем использовать отказоустойчивый вариант инсталляции.
Предварительная настройка
Перед тем как устанавливать PAM на виртуальную машину, установите Python 3 версии, Docker и его компоненты:
sudo apt install python3 sudo apt install docker
Версия Docker Engine должна быть не ниже 25.0.5, а Compose Plugin — не ниже 2.20.2.
Шаг 1. Настройка и запуск Docker
Проверьте наличие файла
/etc/docker/daemon.jsonи создайте его, если файла нет.sudo mkdir -p /etc/docker [ -f /etc/docker/daemon.json ] || sudo touch /etc/docker/daemon.jsonДобавьте в файл настройки:
sudo tee /etc/docker/daemon.json > /dev/null <<EOF { "bip": "100.64.0.1/25", "default-address-pools": [ { "base": "100.64.64.0/20", "size": 24 } ] } EOFПерезапустите службу
docker:sudo systemctl restart dockerСоздайте сеть для
docker:sudo docker network create --subnet=100.64.64.0/24 pam-backend
Шаг 2. Загрузка и настройка BPAM
Скачайте и распакуйте архив сборки.
sudo tar -xvf имя_файлаПерейдите в директорию проекта:
cd путь_до_директории_проектаЗадайте права на директорию
volumes:sudo chmod -R 777 ./volumes/Загрузите образы компонентов.
sudo sh load-images.shНастройте
env-файлы компонентов под свои требования. ПеременнуюVIRTUAL_HOSTможно заменить на любую другую. По этому хосту в дальнейшем будут доступны интерфейсы решения — https, rdp, ssh и другие.Если вы планируете работать с PAM из разных сетевых сегментов, то при актуализации ENV-файлов укажите адреса доменов, которые выделены под PAM. Например, bpam.bi.zone для веб-портала PAM и vault.bpam.bi.zone для веб-портала Vault.
В файле.env:VIRTUAL_HOST=bpam.bi.zone TRAEFIK_HOST=traefik.bpam.bi.zoneВ файле
web-auth.env:KC_HOSTNAME_URL=https://bpam.bi.zone/auth/ KC_HOSTNAME_ADMIN_URL=https://bpam.bi.zone/kc/Запустите сборку. Команда выполняется из каталога проекта.
sudo docker compose up -dПодключите хранилище секретов.
sudo docker exec -it bpam-postgres-1 psql --user pam --db pamВ открывшейся консоли PostgreSQL вставьте:
INSERT INTO pam.vault (name, fqdn, port, attributes, description) VALUES ('pam_vault_kv2', 'vault', 443, '{"name": "control", "mount": "pam", "secret_engine": "kv"}', 'pam maint kv2 storage'), ('pam_vault_ssh', 'vault', 443, '{"name": "control", "mount": "ssh", "secret_engine": "ssh"}', 'pam maint ssh engine');
PAM установлен и готов к первичной настройке через веб-интерфейс.
Ссылки на ресурсы
Список ссылок, по которым доступны ресурсы PAM:
BI.ZONE PAM — https://demopam.example/
Keycloak — https://demopam.example/kc/
Vault — https://vault.demopam.example/
PGAdmin — https://pg.demopam.example/
Traefik — https://traefik.example/
Minio UI — https://s3.demopam.example/
Примечание
Если переменная
VIRTUAL_HOSTв.envменялась, то вместо demopam.example нужно обращаться по корректному путиVIRTUAL_HOSTиз проекта.Пароль и логин от S3 minio по умолчанию находятся в env-файле:
MINIO_ROOT_USER=minio MINIO_ROOT_PASSWORD=miniosecret