@MeGaPk
iOS Программист, 3д печатник

Iptables PREROUTING и INPUT — как «подружить»?

Добрый вечер!
Собственно такой вопрос.

Как можно настроить перенаправление траффика (PREROUTING) так, что бы сперва он прошел "Обработку" INPUT проверками?

В данный момент использую такое правило:
-A PREROUTING -d 144.76.249.14 -j DNAT --to-destination 10.0.0.34


Ес-но INPUT его не "Задевает", т.к по понятным причинам, PREROUTING идет до INPUT.

Жду ответа, заранее благодарю!
  • Вопрос задан
  • 4015 просмотров
Решения вопроса 1
cjey
@cjey
Создайте новую цепочку Filters и добавьте в эту все павила из цепочки INPUT
iptables -N Filters
iptalbes -I Filters -j ACCEPT

В цепочку INPUT добавьте правило перенаправления в цепочку Filters
iptables -I INPUT -j Filters

В цепочку FORWARD добавьте правило перенаправление пакетов в цепочку Filters
iptables -I FORWARD -j Filters
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
@saygo
Простите, отчего в том же Prerouting не проверить?
В Input идет тот трафик, который предназначен машине, так что никак.
Здесь и логика в том, что порядок следования и цель трафика не нарушить.
Ответ написан
@alz
Создайте пользовательскую цепочку с проверками и перенаправляйте на нее с цепочек INPUT и FORWARD
Ответ написан
Комментировать
IlyaEvseev
@IlyaEvseev
Opensource geek
Как можно настроить перенаправление траффика (PREROUTING) так, что бы сперва он прошел "Обработку" INPUT проверками?

Если коротко, то никак. Ищите в Гугле картинки по запросу "iptables packet flow".
PREROUTING называется так именно потому, что вызывается до routing decision.
INPUT вызывается после того, как routing decision уже пройден.
Раньше в таблице NAT была возможность фильтровать пакеты, теперь её убрали (имхо зря).
Ответ написан
Комментировать
@MeGaPk Автор вопроса
iOS Программист, 3д печатник
А как тогда можно перенаправить трафик уже после прохождения INPUT`a ?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы