на нём
2. Запущен нгинкс в докере и прокинут наружу порт на хост 8001
3. Надо запретить все соединения извне на этот порт, чтобы можно было только другим сервисам на этом хосте обращаться по этому порту.
4. В качестве теста первым шагом надо просто запретить любые входящие запросы на этот порт 8001.
5. Делаю:
sudo iptables -A INPUT -p tcp —dport 8001 -j DROP
6. Вывожу sudo iptables -L INPUT - там появилось правило добавленное на предыдущем шаге (в цепочке INPUT оно единственное в принципе), всё ок.
7. Делаю запрос снаружи на сервак из браузера на порт 8001 - запросы идут как ни в чем не бывало.
ВОПРОС:
- Что я делаю не так? Почему не блочится порт?
А default policy задали? iptables -L гляньте
iptables -I DOCKER-USER -p tcp —dport 8001 -j DROP
Нет, всё равно доступен((
И на первое место попробовал тоже вставить - не помогло...
Я в свое время тоже с хаосом от докера в Iptables наигрался. Удалось мне залочить порт БД таким образом указав внешний интерфейс ну и сам порт "-A INPUT -i enp0s31f6 -p tcp -m tcp --dport 27017 -j DROP"
Не, щас попробовал - не вышло. Мне добрый человек @UB0AEW подсказал решение, кому интересно вот ссылка, там рабочее решение https://serverfault.com/questions/773014/an-iptables-rule-doesnt-work
Но непонятным остаётся один момент - в ссылке которую я скинул вся суть сводится к тому что докер добавляет правило в PREROUTING chain и транслирует destination в адрес и порт контейнера. Так вот в вашем предложении на самом деле логично что если заблочить на уровне интерфейса, то это должно быть обходным решением проблемы. То есть в обход докеровских правил.
Я полагаю что у вас firewalld удалён/выключен и правило от докера вида " DOCKER -d 172.23.0.5/32 ! -i br-10c90651e4c3 -o br-10c90651e4c3 -p tcp -m tcp --dport 27017 -j ACCEPT" удалено, иначе то правило не сработает. Спасибо за линк, возьму на заметку
Да, firewalld отсутствует
Честно терминологию уже эту забыл, как там всё точно работает. Если смогу залезть на тот сервак, то задамплю правила, год назад делал на нем, когда задача была залочить порты контейнеров наружу.
Ок, было бы интересно глянуть
Обсуждают сегодня