Bosh Lite cf-deployment VirtualBox с прокси-сертификатом MITM

Я пытаюсь развернуть CF локально через виртуальную машину VirtualBox bosh-lite, но я сталкиваюсь с корпоративным прокси-сервером, внедряющим самозаверяющий сертификат, прежде чем выйти в Интернет.

Я подключился к SSH и добавил ЦС к доверенным сертификатам на уровне ОС, но я все еще получаю ненадежные сертификаты в цепочке.

Можно ли где-нибудь поместить корпоративный ЦС в конфигурацию, чтобы все элементы успешно загружались/устанавливались?


person dardo    schedule 26.07.2019    source источник


Ответы (1)


BOSH развертывает такие вещи, как CF, Zookeeper, Kubernetes и т. д., в «облаках», создавая «машины», устанавливая соответствующее программное обеспечение и запуская его на этих «машинах». В «типичном» облаке, таком как Amazon Web Services или VMWare vSphere, «машина» — это обычная виртуальная машина.

BOSH также может рассматривать различные среды выполнения контейнеров, такие как Docker, Kubernetes или Garden, как «облака», а в случае BOSH-Lite он ориентируется на Garden как на облако. Таким образом, в случае BOSH-Lite «машины» на самом деле представляют собой контейнеры Linux, работающие внутри виртуальной машины VirtualBox. Поэтому, когда вы устанавливаете свои сертификаты на уровне ОС виртуальной машины, это не будет применяться к вещам, работающим как контейнеры внутри виртуальной машины.

У BOSH есть собственный способ внедрения доверенных сертификатов в каждую машину, которой он управляет, используя свойство trusted_certs. Предполагая, что вы выполнили эти документы для установки BOSH-Lite, вы можете обновить команду create-env из этого :

bosh create-env ~/workspace/bosh-deployment/bosh.yml \
  --state ./state.json \
  -o ~/workspace/bosh-deployment/virtualbox/cpi.yml \
  -o ~/workspace/bosh-deployment/virtualbox/outbound-network.yml \
  -o ~/workspace/bosh-deployment/bosh-lite.yml \
  -o ~/workspace/bosh-deployment/bosh-lite-runc.yml \
  -o ~/workspace/bosh-deployment/uaa.yml \
  -o ~/workspace/bosh-deployment/credhub.yml \
  -o ~/workspace/bosh-deployment/jumpbox-user.yml \
  --vars-store ./creds.yml \
  -v director_name=bosh-lite \
  -v internal_ip=192.168.50.6 \
  -v internal_gw=192.168.50.1 \
  -v internal_cidr=192.168.50.0/24 \
  -v outbound_network_name=NatNetwork

к этому:

bosh create-env ~/workspace/bosh-deployment/bosh.yml \
  --state ./state.json \
  -o ~/workspace/bosh-deployment/virtualbox/cpi.yml \
  -o ~/workspace/bosh-deployment/virtualbox/outbound-network.yml \
  -o ~/workspace/bosh-deployment/bosh-lite.yml \
  -o ~/workspace/bosh-deployment/bosh-lite-runc.yml \
  -o ~/workspace/bosh-deployment/uaa.yml \
  -o ~/workspace/bosh-deployment/credhub.yml \
  -o ~/workspace/bosh-deployment/jumpbox-user.yml \
  -o ~/workspace/bosh-deployment/openstack/trusted-certs.yml \
  --vars-store ./creds.yml \
  -v director_name=bosh-lite \
  -v internal_ip=192.168.50.6 \
  -v internal_gw=192.168.50.1 \
  -v internal_cidr=192.168.50.0/24 \
  -v outbound_network_name=NatNetwork \
  --var-file=openstack_ca_cert=</PATH/TO/YOUR/CERT>

Это добавляет две строки:

-o ~/workspace/bosh-deployment/openstack/trusted-certs.yml
--var-file=openstack_ca_cert=</PATH/TO/YOUR/CERT>

Несмотря на то, что там написано openstack, в этих файлах нет ничего специфичного для OpenStack. Первая строка (с -o) изменяет базовый манифест для BOSH, чтобы включить раздел для установки свойства director.trusted_certs, но фактически не устанавливает значение, она параметризует его как переменную с именем openstack_ca_cert, а вторая строка (с --var-file) фактически устанавливает значение с содержимым из данного файла.

После того, как вы запустите эту команду, она обновит BOSH-Lite, но не обновит вещи, развернутые BOSH, например. СР. Вам нужно будет повторно запустить команды развертывания для CF, чтобы убедиться, что он выбирает эти доверенные сертификаты.

person Amit Kumar Gupta    schedule 26.07.2019