Установка и конфигурирование
Агент TVP поставляется в виде готового образа контейнера Docker.
Чтобы установить и настроить, на каждой из машин, где будут запускаться агенты TVP, выполните следующее:
- установите и сконфигурируйте Docker Engine;
- настройте параметры агента;
- скопируйте файлы конфигурации на машину, где будет запускаться контейнер с агентом TVP, и задайте параметры подключения к серверу аутентификации;
- установите сертификаты сервера аутентификации (это необязательная настройка);
- создайте и запустите контейнер с агентом.
Установка и конфигурирование среды Docker
Перед развертыванием агента на машину установите Docker Engine, запустите и добавьте машину в автозагрузку. Может потребоваться предварительно подключить и обновить репозитории, детальные инструкции по подключению и обновлению репозиториев с Docker Engine для разных дистрибутивов Linux на веб-сайте вендора.
# для RedHat-совместимых дистрибутивов
yum install docker-ce docker-ce-cli
# для Debian-совместимых дистрибутивов
apt install -y docker.io
# запуск и добавление в автозагрузку
systemctl enable --now docker
Настройка параметров агента
По умолчанию агент TVP прослушивает порт 9443/TCP. Изменение данного порта осуществляется только путем запуска контейнера в режиме network bridge и проброса портов с хостовой машины на порт 9443 контейнера. Все конфигурационные параметры агента TVP располагаются в файле config.py.
Подключение к серверу аутентификации
Чтобы задать параметры подключения TVP к серверу аутентификации:
Скопируйте файл config.py из дистрибутива агента TVP в произвольный каталог.
Задайте адрес сервера аутентификации:
sas_address_1 = "mfa.indeed-cloud.ru"Если используется резервный сервер аутентификации, установите тайм-аут переключения (failover) на резервный сервер, если основной станет недоступен:
timeout = 10Если используется резервный сервер аутентификации, установите тайм-аут возврата (failback) на основной сервер, когда он снова станет доступен:
timeout_to_restore_to_first_sas = 180Укажите, нужно ли проверять подлинность серверов аутентификации SAS:
sas_verify_ssl = TrueУкажите, нужно ли пробрасывать на сервер аутентификации IP-адрес целевого ресурса:
forward_ip = FalseУкажите, нужно ли пробрасывать на сервер аутентификации тип агента целевого ресурса:
forward_agent_type = False
Получение и установка сертификатов TVP
Если нужно защитить соединения между целевыми ресурсами (агентами) и TVP по протоколу HTTPS, необходимо использовать свои собственные сертификаты стандарта X.509. Для каждого TVP, подключение к которому нужно защитить, потребуются сертификат и закрытый ключ этого сертификата.
Чтобы получить подписанный сертификат TVP, нужно сначала сгенерировать его закрытый ключ, потом сгенерировать с его помощью запрос на подпись сертификата (Certificate Signing Request, CSR), и затем подписать этот запрос в удостоверяющем центре. Подписывать сертификаты можно во внешнем (коммерческом) удостоверяющем центре, или во внутреннем (корпоративном). Кроме того, можно запустить локальный удостоверяющий центр специально для обслуживания решения MFA. Этот способ можно рекомендовать для тестовых и пилотных внедрений, а также в любых случаях, когда корпоративного удостоверяющего центра нет, а использование коммерческого невозможно или нежелательно.
Независимо от того, какой тип удостоверяющего центра будет использоваться, для каждого из TVP выполните:
Сгенерируйте закрытый ключ сервера:
openssl genrsa -out CA.key 2048Сгенерируйте запрос на подпись сертификата:
openssl x509 -req -in tvp.indeed.local -CA CA.pem -CAkey CA.key -CAcreateserial -out tvp.indeed.local.pemОтправьте запрос на подпись в удостоверяющий центр и получите уже подписанный сертификат, а также корневой сертификат этого удостоверяющего центра.
Скопируйте открытый и закрытый ключи на машину, где будет запущен агент TVP.
Развертывание образа, создание и запуск контейнера с TVP
Чтобы развернуть образ и запустить контейнер:
Запустите сервис Docker:
systemctl start dockerСкопируйте образ агента на машину и разверните его:
docker load -i tvp-1.0.010425.tar.gzСоздайте и запустите контейнер TVP, выбрав ему имя и указав пути к файлам конфигурации и (если используются) сертификатам и ключам:
Базовая команда (без сертификатов):
docker run -d --network host --name tvp --restart always \
-v /opt/indeed/tvp01/config.py:/var/www/indeed/app/config.py \
-t tvp:1.0.130326Команда с подключением сертификатов (опционально):
docker run -d --network host --name tvp --restart always \
-v /opt/indeed/tvp01/config.py:/var/www/indeed/app/config.py \
-v /opt/indeed/tvp01/tessis-CA.crt:/usr/local/share/ca-certificates/tessis-CA.crt \
-v /opt/indeed/tvp01/tvp.indeed.local.key:/etc/ssl/private/indeed.key \
-v /opt/indeed/tvp01/tvp.indeed.local.pem:/etc/ssl/certs/indeed.pem \
-t tvp:1.0.130326