Skip to content

TLS/mTLS для iproto

В настоящий момент инстансы общаются между собой по открытому каналу. Предлагается дать пользователям возможность использовать mTLs.

Пользовательский сценарий:

  1. Пользователь генерирует обособленный самоподписанный CA или использует уже имеющийся
  2. С помощью CA выпускает по tls-паре (сертификат + приватный ключ) для каждого инстанса, в SAN записывает IP-адреса --listen и --advertise
  3. Распространяет tls-пары и CA-сертификат по хостам и директориям, где живут инстансы
  4. С помощью конфига инструктирует инстансы общаться друг с другом используя 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
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information