Назад | Перейти на главную страницу

Безопасный эластичный поиск, но разрешить удаленный CRUD

Я собираюсь запустить немного программного обеспечения на сервере A, чтобы добавить и удалить записи из elasticsearch на сервере B.

Как я могу разрешить эти удаленные операции создания и удаления, но при этом сохранить безопасность ES? IPtables - правильный путь или есть лучшее решение?

Если у вас есть $, вы можете получить программное обеспечение Shield для Elasticsearch. Это позволит вам использовать сертификаты PKI для аутентификации и авторизации в кластере ES. В сочетании с iptables для ограничения доступа это должно быть все, что вам нужно.

Если вы пытаетесь сделать это бесплатно, используйте Apache в качестве обратного прокси-сервера перед ES, чтобы разместить SSL поверх с какой-либо аутентификацией - либо с базовым пользователем / паролем, либо на основе сертификата, если вы действительно хотите безопасный. Опять же, iptables может блокировать прямой доступ к ES извне, и вы можете использовать правила доступа Apache или iptables для блокировки неавторизованных IP-адресов.

Обычное решение (насколько я знаю и, конечно же, реализовал) - это комбинация iptables (для ограничения прямого доступа) с последующим предоставлением доступа через обратный прокси-сервер в Apache, Nginx, выбранном вами веб-сервере. Поиск в Интернете по запросу "обеспечение эластичного поиска" дает множество важных сведений.

Точно зависит от того, что вы пытаетесь сделать, подходит ли обратный прокси. Мы используем это с kibana и shibboleth для ограничения доступа к запросам - это означает, что мы используем наши стандартные средства контроля доступа. Данные вводятся с помощью logstash - прямой доступ разрешен в iptables - не проходит через Apache.

Похоже, что состояние дел значительно изменилось с тех пор, как мы настроили наш кластер (см., Например, http://www.elastic.co/guide/en/shield/current/architecture.html)