Вы можете настроить свой доменasticsearch для работы в AMAZON VPC. Это лучший способ. Взгляните на это: https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-vpc.html
Единственная проблема с ES на VPC состоит в том, что только другая машина на том же VPC может связаться с вашей службой ES. Обычно этот случай решается с помощью EC2, который работает как Jump Host.
Почему это предпочтительные решения? Если вы оставляете домен доступным всему миру и устанавливаете политику ограничения, чтобы разрешить доступ к какой-либо роли IAM или IP-адресу, это работает должным образом, и никто не может получить доступ к вашим данным, но весь мир может связаться с вашим доменом, поскольку он является публичным доменом, таким образом, вы предоставляете сервис ES при возможном присоединении ddos. С помощью решения VPC только VPC partecipant может связаться с вашей конечной точкой обслуживания.
Другая практика, если вам необходимо использовать ES из приложения, - это разработка API для доступа к данным ES с AWS Elastic Beanstalk с балансировщиком нагрузки, установленным в public, и экземплярами, которые запускают приложение на VPC. В этом случае используется балансировщик нагрузки ELB, который будет представлен миру, и вы с помощью своей логики API решаете, кому звонить или нет.