Рекомендации по обеспечению безопасности ElasticSearch и Couchbase
Я экспериментировал с попыткой защитить кластер Elasticsearch с базовой аутентификацией и TLS.
Я успешно смог сделать это с помощью Search-Guard. Проблема возникает с Couchbase XDCR для Elasticsearch.
Я использую плагин эластичный поиск-транспорт-couchbase, который прекрасно работает без использования TLS и Basic Auth в кластере Elasticsearch. Но при включении этого с помощью Search-Guard я не могу заставить это работать.
Насколько я могу судить, проблема заключается в плагине asticsearch-transport-couchbase. Это также обсуждалось ранее в некоторых вопросах их репозитория Github.
Это также единственный плагин, который я могу найти, который можно использовать для XDCR от Couchbase.
Мне любопытно, что опыт других людей с этим. Есть ли кто-нибудь, кто был в той же ситуации, что и я, и смог установить XDCR из Couchbase в Elasticsearch с TLS?
Или, может быть, есть какие-то более подходящие инструменты, которые я могу использовать, которые я пропустил?
2 ответа
Транспортный плагин Couchbase пока не поддерживает XDCR TLS, он есть в планах, но в ближайшее время этого не произойдет. Search-guard добавляет SSL к конечной точке HTTP/REST в ES, но плагин открывает собственную конечную точку (по умолчанию порт 9091), которую Search-guard не трогает. Я посмотрю, возможно ли расширить search-guard для применения к транспортному плагину - основная проблема на стороне Couchbase XDCR, которая не ожидает SSL на целевой конечной точке.
Версия 4.0 коннектора Couchbase Elasticsearch поддерживает безопасные соединения с Couchbase Server и / или Elasticsearch.
Ссылка: https://docs.couchbase.com/elasticsearch-connector/4.0/secure-connections.html
Небольшое обновление. Мы решили эту проблему, настроив stunnel с помощью xinetd. Таким образом, вся связь с ELS должна проходить через туннель, где TLS будет прерван.
Мы заблокировали доступ к порту 9200 и ограничили 9091 для хоста кластера Couchbase и 9300 только для других узлов ELS.
Кажется, работает хорошо.