TLS/mTLS для iproto
В настоящий момент инстансы общаются между собой по открытому каналу. Предлагается дать пользователям возможность использовать mTLs.
Пользовательский сценарий:
- Пользователь генерирует обособленный самоподписанный CA или использует уже имеющийся
- С помощью CA выпускает по tls-паре (сертификат + приватный ключ) для каждого инстанса, в SAN записывает IP-адреса --listen и --advertise
- Распространяет tls-пары и CA-сертификат по хостам и директориям, где живут инстансы
- С помощью конфига инструктирует инстансы общаться друг с другом используя TLS и проверять подлинность peer-сертификатов с помощью CA-сертификата.
Таким образом канал коммуникации будет зашифрован и никто левый не сможет подключиться к инстанстам по служебному протоколу.
Пример конфигурации:
cluster:
...
instance:
...
iproto:
max_concurrent_messages: 768
tls:
enabled: <bool>
ca_crt: [optional path, enables client peer-certificates verification]
server_crt: <path>
server_key: <path>
Edited by Roman Kuzmin