July 3, 2023

APIсбечь безопасность

Patroni - великолепный инструмент, использующийся во всех IT-компаниях. Его достоинства описывать можно бесконечно, но стоит отметить API вызовы, которые лично я не использую, но знаю об уязвимостях

Конечно, есть лекарство от этого - обновление до свежих версий, но защита API также поможет избежать лишних смен ролей

Итак, на самом деле все просто: ваш конфигурационный файл должен содержать следующие строкм:

restapi:
  listen: <listen>
  connect_address: <connect_address>
  authentication:
    username: <username>
    password: <password>
  allowlist_include_members: true
  allowlist:
  - /32

Да, для кого-то - это не новость, но исходя из документации мне не сразу стало ясно в каком формате все это писать.

Таким образом, команды, опасные для кластера будут выполняться только с серверов, участвующих в кластере, а также указанных в списке allowlist

Стоит также понимать, что это защита от "опасных" команд, например - switchover, следовательно, статус кластера будет доступен всем