Переконайтеся, що mTLS увімкнено
Щойно ви додали застосунки до ambient mesh, ви можете легко перевірити, чи ввімкнено mTLS серед ваших навантажень, використовуючи один або кілька методів, наведених нижче:
Перевірка mTLS за допомогою конфігурацій ztunnel робочого навантаження
За допомогою зручної команди istioctl ztunnel-config workloads
ви можете перевірити, чи налаштоване ваше робоче навантаження на надсилання та приймання трафіку HBONE за значенням у стовпці PROTOCOL
. Наприклад:
Наявність сконфігурованого HBONE на вашому навантаженні не означає, що ваше навантаження відкидатиме будь-який трафік у вигляді простого тексту. Якщо ви хочете, щоб ваше навантаження відкидало текстовий трафік, створіть політику PeerAuthentication
з режимом mTLS, встановленим на STRICT
для вашого навантаження.
Перевірка mTLS за допомогою метрик
Якщо ви встановили Prometheus, ви можете налаштувати пересилання портів і відкрити інтерфейс Prometheus за допомогою наступної команди:
У Prometheus ви можете переглянути значення метрик TCP. Спочатку виберіть Graph і введіть метрику, наприклад: istio_tcp_connections_opened_total
, istio_tcp_connections_closed_total
, istio_tcp_received_bytes_total
або istio_tcp_sent_bytes_total
. Нарешті, натисніть Execute. Дані міститимуть такі записи, як:
Переконайтеся, що значення connection_security_policy
встановлене на mutual_tls
разом з очікуваною інформацією про ідентичність джерела та призначення.
Перевірка mTLS за допомогою логів
Ви також можете переглянути лог ztunnel на стороні джерела або призначення, щоб підтвердити, що mTLS увімкнено, а також перевірити ідентичність учасників. Нижче наведено приклад логу ztunnel на стороні джерела для запиту від сервісу curl
до сервісу details
:
Перевірте, чи значення src.identity
і dst.identity
правильні. Вони є ідентичностями, які використовуються для mTLS-комунікації між джерелом і призначенням. Дивіться розділ верифікація трафіку ztunnel через логи для отримання додаткової інформації.
Перевірка за допомогою панелі Kiali
Якщо ви встановили Kiali та Prometheus, ви можете візуалізувати комунікацію вашого навантаження в ambient mesh за допомогою панелі Kiali. Ви можете побачити, чи має зʼєднання між будь-якими навантаженнями значок замка, щоб перевірити, чи ввімкнено mTLS, а також перевірити інформацію про ідентичність учасників:
Зверніться до документа Візуалізація застосунку і метрик для отримання додаткової інформації.
Перевірка за допомогою tcpdump
Якщо ви маєте доступ до робочих вузлів Kubernetes, ви можете запустити команду tcpdump
, щоб перехопити весь трафік на мережевому інтерфейсі, з можливістю фокусування на портах застосунку та портах HBONE. У цьому прикладі, порт 9080
є портом сервісу details
, а порт 15008
— портом HBONE:
Ви повинні побачити зашифрований трафік у виводі команди tcpdump
.
Якщо у вас немає доступу до робочих вузлів, ви можете скористатися образом контейнера netshoot5 для зручного запуску команди: