У меня есть экземпляр Elasticsearch, подключенный к Интернету на EC2. С другой стороны, у меня есть веб-сервис в виде приложения Heroku.
Я хочу защитить экземпляр Elasticsearch и разрешить входящий трафик только из моего приложения Heroku.
Я нашел это Плагин Elasticsearch но это выглядит немного болезненно. Итак, что может быть лучшим способом обезопасить открытый xx.xx.xx.xx:9200
порт моего экземпляра EC2, выходящий в Интернет и подключенный к Heroku?
SSL - решение? У меня мало знаний.
В Heroku я использую питон.
Похожие вопросы: один и два есть старое решение, которое Heroku больше не рекомендует. Другой вариант - переместить веб-сервис в AWS и защитить его с помощью брандмауэра, но пока я предпочитаю позволить Heroku выполнять операции разработки.
Поскольку heroku основан на облаке, ваш IP-адрес heroku не статичен. Решение группы безопасности здесь не подходит. Я бы использовал SSL с некоторой аутентификацией (ИМХО, даже HTTP-аутентификации достаточно, но я не эксперт по безопасности).
Если вы хотите пойти на крайние меры, вам подойдет SSL с сертификатами сервера и клиента.
Вы можете использовать nginx в качестве обратного прокси для эластичного поиска, если он не поддерживает вышеуказанные функции.