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