LINUX.ORG.RU
ФорумAdmin

В iptables ставлю блокировку по ip но не отрабатывает. iptables -t filter -L -n -v не пакетов по этому правилу

 


0

1

Добавил правило

 iptables -A INPUT -s 10.10.10.1  -j DROP

Но оно не отрабатывает. Не блокируется Смотрю количество пакетов

iptables -t filter -L -n -v

Там ноль пакетов всегда. Кажется что отрабатывает раньше какоето другое правило и разрешает. Как определить что отрабатывает?

Как определить что отрабатывает?

Посмотреть правила выше.

gruy ★★★★★
()

А ты уверен, что это новый пакет? Потому что пакеты в рамках установленных сессий идут по другой цепочке.

AVL
()
Ответ на: комментарий от leonidkorolev

можно правило применить ко всем флаг establishment

AVL
()
Ответ на: комментарий от AVL

Потому что пакеты в рамках установленных сессий идут по другой цепочке.

Ловите телепата.

anc ★★★★★
()
Ответ на: комментарий от leonidkorolev

Можно как-то закрыть все сессии чтобы гарантированно все шли через новые настройки?

tcpkill host 10.10.10.1

Или если топором - систему перезагрузить или хотя бы сетевой сервис sudo systemctl restart systemd-networkd или nmcli networking off / nmcli networking on - в зависимости от того какая система

beka
()

1. Покажи iptables-save
2. Ты хочешь блокировать локальный или транзитный трафик?

Kolins ★★★★
()
Ответ на: комментарий от Kolins

Обычно все правила по дефолту применяются только к новым соединениям. Оно и логично, это оптимизирует издержки, проверять приходится только часть трафика.

AVL
()
Ответ на: комментарий от AVL

специально проверил, запустил с соседнего компа пинговалку и сделал: iptables -A INPUT -p icmp -j DROP, ping остановился, когда правило удалил - вернулся.

Kolins ★★★★
()
Ответ на: комментарий от Kolins

специально проверил, запустил с соседнего компа пинговалку и сделал: iptables -A INPUT -p icmp -j DROP, ping не остановился

Намёк понятен?

anc ★★★★★
()

Всем спасибо. Получилось заблокировать в forward. Похоже из-за докера в разделе prerouting отправлялось в докер в forward.

leonidkorolev
() автор топика
Ответ на: комментарий от Kolins

А с каких пор протокол icmp стал поддерживать сессии?

Проверять надо tcp соединение. Например, установить соединение с http сервером или netcat запустить и попробовать на середине передачи зарубить.

AVL
()
Ответ на: комментарий от Kolins

Я «к тому что» приводить пример почти любого отдельно взятого правила с утверждением «проверил у меня работает» приблизительно аналогично:
user1: Сегодня шел по улице поскользнулся
user2: Я сегодня шел по улице не поскользнулся

anc ★★★★★
()
Ответ на: комментарий от Kolins

Это не от протокола зависит, а от conntrack

ну так conntrack это костыль для протоколов, которые не поддерживают сессии. И эти модули надо грузить отдельно. А в tcp они изначально, в этом его смысл перед udp.

Если ssh также работает, то все, вопросов нет, там тоже tcp.

AVL
()

Показывай все правила. Возможно, перед DROP где-то есть ACCEPT.

Black_Shadow ★★★★★
()

И, да, если ты пытаешься блокировать транзитный трафик, цепочка INPUT не работает.

Black_Shadow ★★★★★
()
Ответ на: комментарий от Black_Shadow

Так мне тогда вообще нигде писать нельзя…

AVL
()
Ответ на: комментарий от leonidkorolev

Когда руками добавляешь и если это не ломает логику остальных правил - используй -I. -A дописывает в конец списка правил (и оно может перебиваться другими правилами). -I вставляет правило в начало списка.

YAR ★★★★★
()
Ответ на: комментарий от Black_Shadow

Возможно, он просто привык к фронтендам, которые не грохают активный SSH при включении. Это не обязательно признак некомпетентности. Тут огромное количество персонажей, раздающих десятки в лучшем случае бесполезных советов в день с умным видом.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.