Answer the question
In order to leave comments, you need to log in
How to allow access to MongoDB, which is in Docker'e, only to certain ip addresses?
Good evening everyone.
The essence of my problem: mongo in a docker container is on a separate server. I need to allow only certain IPs to connect to the mongi port 27017. It’s very difficult for me to set up Iptables, I tried to set up mongi from the off site guide, but it didn’t work, the connection was available from any IP, apparently I couldn’t override the docker settings, which by default open ports to the “whole world”.
Thanks in advance.
Answer the question
In order to leave comments, you need to log in
Через iptables и делается. Все правильно пробовали.
Осталось только чуть больше исследовать тему. Вам нужно использовать FORWARD chain, а не INPUT, а INPUT только если Вы делаете --network=host
.
Эта статья должна прояснить ситуацию:
tomasre.com/2016/03/07/securing-coreos-with-iptables
Попробуй так:
/sbin/iptables -I FORWARD 1 -s xxx.xxx.xxx.xxx -p tcp --dport 27017 -j ACCEPT
/sbin/iptables -I FORWARD 2 ! -s 172.16.0.0/12 -p tcp --dport 27017 -j DROP
Вам "не удалось" перебороть настройки не докера, а того же iptables, только таблицы не filter а nat.
Соответственно и копать нужно туда. Докер просто использует те же самые правила что и вы.
Но - я не знаю что будет если вы их поменяете а потом перезапустите контейнер например. Вполне возможно что ничего хорошего.
Сам подобным вопросом недавно интересовался, но не доразбирался можно ли так сделать. Так что если решите данную проблему - отпишитесь пожалуйста как вы это сделали. Тоже интересно :)
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question