Взаимный Transport Layer Security (mTLS) — это протокол, который позволяет осуществлять взаимную аутентификацию между двумя сторонами. Он является режимом аутентификации по умолчанию в некоторых протоколах (IKE, SSH) и опциональным в других (TLS). Вы можете использовать mTLS без изменения кода вашего приложения или сервиса. TLS полностью обрабатывается инфраструктурой service mesh и происходит между двумя sidecar-прокси.
По умолчанию mTLS включён в Service Mesh и установлен в разрешающий режим (permissive mode). В этом режиме sidecar-прокси в Service Mesh принимают как незашифрованный трафик, так и соединения, зашифрованные с помощью mTLS. Если сервисы в mesh настроены на использование строгого mTLS для связи с сервисами вне mesh, связь может быть нарушена, поскольку строгий mTLS требует взаимной аутентификации между клиентом и сервером. Используйте разрешающий режим при миграции рабочих нагрузок в Service Mesh. Затем вы сможете включить строгий mTLS между mesh, namespace или приложениями.
В левой навигационной панели нажмите Service List.
Нажмите на Service Name, для которого хотите создать правила безопасности.
Во вкладке Policies справа от кластера нажмите Create Policy > Security.
В разделе Rules выберите Permissive Mode или Strict Mode.
Permissive Mode: Позволяет сервису принимать как незашифрованный трафик, так и трафик с взаимным TLS.
Strict Mode: Позволяет сервису принимать только трафик с взаимным TLS. Сервис будет обрабатывать только трафик, зашифрованный sidecar, а незашифрованный трафик будет отклонён.
Примечание: Включение Permissive Mode позволяет сервису одновременно принимать как незашифрованный, так и взаимный TLS трафик, что значительно упрощает внедрение взаимного TLS.
Например: когда операционный персонал хочет мигрировать сервис в Istio с включённым взаимным TLS, могут возникнуть множество проблем с коммуникацией клиентов и серверов, не использующих Istio. Обычно операционный персонал не может одновременно установить Istio sidecar на всех клиентах и не имеет на это прав. Даже если Istio sidecar установлен на сервере, он не может включить взаимный TLS без нарушения существующих соединений.
Permissive Mode гибко решает эту задачу. Установленный в сервис Istio sidecar сразу принимает трафик с взаимным TLS, не нарушая существующий незашифрованный трафик. Таким образом, операционный персонал может постепенно устанавливать и настраивать Istio sidecar на клиентах для отправки трафика с взаимным TLS. После настройки клиентов сервер можно перевести в Strict Mode (режим только TLS).
Нажмите Create.
При создании политик безопасности система автоматически создаст клиентские правила и по умолчанию включит TLS.