Конфигурации сети

Материал из Документация Ключ-АСТРОМ

Настройте Ключ-АСТРОМ в средах с сетевыми ограничениями с помощью сетевых конфигураций, параметров прокси-сервера и исключений URL-адресов.

Сетевые зоны

Подробную информацию о настройке и управлении сетевыми зонами, первоначальной настройке конечных точек и расширенных конфигурациях в ограниченных средах см. в разделе Использование сетевых зон в Kubernetes.

Настройка прокси

Для мониторинга платформы Kubernetes с помощью Ключ-АСТРОМ может потребоваться настроить прокси-сервер, который облегчит все исходящие соединения для компонентов Ключ-АСТРОМ Operator (таких как csi-driver и operator), ЕдиногоАгента и АктивногоШлюза.

В зависимости от конфигурации вашего прокси-сервера, особенно в отношении учетных данных, существует два варианта настройки прокси-сервера в DynaKube:

Без учетных данных прокси

HTTPS-прокси поддерживаются для АктивногоШлюза с версии 1.289.

HTTPS-прокси поддерживаются для ЕдиногоАгента с версии 1.311.

Для прокси-серверов без требований к учетным данным укажите URL-адрес вашего прокси-сервера в поле value:

apiVersion: astromkey.com/v1beta5

kind: DynaKube

metadata:

  name: dynakube

  namespace: astromkey

spec:

  apiUrl: https://<activegate-host>:9999/e/<environment-id>/api

  proxy:

    value: http://<my-super-proxy>

С учетными данными прокси

Для прокси-серверов, требующих учетных данных.

1. Создайте секрет Kubernetes, содержащий зашифрованный URL-адрес вашего прокси-сервера, включая учетные данные.

Kubernetes OpenShift
kubectl -n astromkey create secret generic my-proxy-secret --from-literal="proxy=http://<user>:<password>@<IP>:<PORT>" oc -n astromkey create secret generic my-proxy-secret --from-literal="proxy=http://<user>:<password>@<IP>:<PORT>"
Убедитесь, что пароль прокси-сервера соответствует следующим критериям:
Требования Соответствующие символы
Разрешенные символы [А-За-з0-9]

! " # $ ( ) * - . / : ; < > ? @ [ ] ^ _ { | }

Символы не допускаются пробел

' ` , & = + % \

Пароль в пользовательском ресурсе или секретном ключе прокси-сервера должен быть закодирован в URL. Например, password!"#$()*-./:;<>?@[]^_{|}~ становится password!%22%23%24()*-.%2F%3A%3B%3C%3E%3F%40%5B%5D%5E_%7B%7C%7D~.

2. Укажите название секрета в разделе valueFrom.

apiVersion: astromkey.com/v1beta5

kind: DynaKube

metadata:

  name: dynakube

  namespace: astromkey

spec:

  apiUrl: https://<activegate-host>:9999/e/<environment-id>/api

  proxy:

    valueFrom: my-proxy-secret

Исключение выбранных URL-адресов из конфигурации прокси-сервера

Чтобы задать список URL-адресов, которые следует исключить из конфигурации прокси-сервера, добавьте следующую аннотацию к пользовательскому ресурсу DynaKube.

apiVersion: astromkey.com/v1beta5

kind: DynaKube

metadata:

  annotations:

    feature.astromkey.com/no-proxy: "some.url.com,other.url.com"

Затем Ключ-АСТРОМ Operator исключает перечисленные URL-адреса из настроек прокси-сервера. Это исключение применяется только к Ключ-АСТРОМ Operator и драйверу CSI. Оно не влияет на настройки прокси-сервера для других компонентов, управляемых Ключ-АСТРОМ Operator, таких как ЕдиныйАгент или АктивныйШлюз.

Добавление доверенных сертификатов CA

Компоненты АктивногоШлюза, ЕдиногоАгента и Ключ-АСТРОМ Operator

Чтобы добавить доверенные сертификаты ЦС в АктивныйШлюз, ЕдиныйАгент и/или Ключ-АСТРОМ Operator, сертификаты должны быть предоставлены через Kubernetes ConfigMap, указанный в конфигурации DynaKube.

1. Создайте ConfigMap (замените <ca-certificates> сертификатами CA, которым нужно доверять).

apiVersion: v1

kind: ConfigMap

metadata:

  name: mycaconfigmap

  namespace: astromkey

data:

  certs: |

    <ca-certificates>

Например:

data:

  certs: |

    -----BEGIN CERTIFICATE-----

    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

    -----END CERTIFICATE-----

2. Примените ConfigMap к вашему кластеру.

kubectl apply -f my-ca-configmap.yaml

3. В DynaKube укажите ссылку на ConfigMap в поле trustedCAs.

apiVersion: astromkey.com/v1beta5

kind: DynaKube

metadata:

  name: dynakube

  namespace: astromkey

spec:

  apiUrl: https://<activegate-host>:9999/e/<environment-id>/api

  trustedCAs: mycaconfigmap

4. Примените конфигурацию DynaKube к вашему кластеру.

kubectl apply -f dynakube-config.yaml

Использование skipCertCheck для обхода проверки сертификата

Чтобы игнорировать проверку сертификатов для компонентов Ключ-АСТРОМ Operator (operator и csi-driver), задайте параметр skipCertCheck в конфигурации DynaKube. Этот параметр следует использовать только в том случае, если пользовательский центр сертификации неизвестен или не может быть предоставлен Ключ-АСТРОМ Operator через поле trustedCAs.

apiVersion: astromkey.com/v1beta5

kind: DynaKube

metadata:

  name: dynakube

  namespace: astromkey

spec:

  apiUrl: https://<activegate-host>:9999/e/<environment-id>/api

  skipCertCheck: true

Настройка TLS-сертификата сервера для АктивногоШлюза

По умолчанию АктивныйШлюз использует самоподписанный сертификат, который можно заменить самоуправляемым сертификатом, как описано в разделе Пользовательский SSL-сертификат для АктивногоШлюза.

Чтобы настроить TLS-сертификат сервера для АктивногоШлюза:

1. Создайте секрет Kubernetes Opaque, содержащий сертификат(ы) АктивногоШлюза и закрытый ключ АктивногоШлюза.

kubectl -n astromkey create secret generic mytlssecret --from-file=server.p12=<myag.p12> --from-file=server.crt=<myag.crt> --from-literal=password=<mypassword>

Где:

  • server.crt – Ключ-АСТРОМ Operator распространяет сертификат(ы) АктивногоШлюза из файла в ЕдиныеАгенты.
  • server.p12 – Сертификат(ы) АктивногоШлюза и закрытый ключ АктивногоШлюза. АктивныйШлюз считывает файл и настраивается на использование предоставленных закрытого ключа и сертификатов.
  • password – АктивныйШлюз считывает его и использует для расшифровки файла server.p12.

server.12 и server.crt файлы должны содержать один и тот же сертификат(ы).

2. Укажите имя секрета в поле tlsSecretName.

apiVersion: astromkey.com/v1beta5

kind: DynaKube

metadata:

  name: dynakube

   namespace: astromkey

spec:

  ...

  activeGate:

    tlsSecretName: <mytlssecret>

    ...