Для начала, вносим правки в конфиг elasticsearch.yml
1 |
nano /etc/elasticsearch/elasticsearch.yml |
Добавляем строки:
1 2 3 4 |
transport.host: localhost transport.tcp.port: 9300 http.port: 9200 network.host: 0.0.0.0 |
«network.host» со значением «0.0.0.0» открывает удалённый доступ.
После этого перезагружаем elasticsearch
1 |
sudo systemctl restart elasticsearch |
Ограничение доступа к серверу elasticsearch для определённых IP
Разрешаем доступ к портам 9200-9400 для определённых IP
1 |
iptables -I INPUT 1 -p tcp --dport 9200:9400 -s IP_ADRRESS_1,IP_ADRRESS_2,IP_ADRRESS_3 -j ACCEPT |
Запрещаем для всех остальных
1 |
iptables -I INPUT 4 -p tcp --dport 9200:9400 -j REJECT |
Сохраняем настройки в файл
1 |
sudo sh -c "iptables-save > /etc/iptables.rules" |
Чтобы изменения сохранились после перезагрузки
1 |
sudo nano /etc/network/interfaces |
В файл добавляем строку
1 |
pre-up iptables-restore < /etc/iptables.rules |