Перенаправление замаскированного трафика через TOR

Я пытаюсь настроить AP с перенаправлением входящего трафика через TOR. Моя AP теперь имеет 2 сетевых интерфейса:

  1. eth0 - есть доступ к Интернету (192.168.1.92) / 24)
  2. wlan0 - интрасеть, без интернета (10.0.0.1/24)

Для доступа в Интернет из wlan0 я делал обычные вещи: включил пересылку и маскарадинг. Для перенаправления трафика (на тор) я сделал перенаправление iptables. , весь iptables выглядит так:

NON_TOR="192.168.1.0/24 192.168.0.0/24 10.0.0.1/24"
TOR_UID=$(id -ur debian-tor)
TRANS_PORT="9040"

# masqaerade for wlan0
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

iptables -t nat -A OUTPUT -m owner --uid-owner $TOR_UID -j RETURN
iptables -t nat -A OUTPUT -p udp --dport 53 -j REDIRECT --to-ports 53

for NET in $NON_TOR 127.0.0.0/9 127.128.0.0/10; do
    iptables -t nat -A OUTPUT -d $NET -j RETURN
done

iptables -t nat -A OUTPUT -p tcp -j DNAT --to-destination 10.0.0.1:9040
# iptables -t nat -A OUTPUT -p tcp --syn -j REDIRECT --to-ports $TRANS_PORT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT   

Конфигурация Tor:

VirtualAddrNetwork 192.168.100.0/10
AutomapHostsOnResolve 1
TransPort 192.168.1.92:9040
TransPort 10.0.0.1:9040
DNSPort 53
ControlPort 9051

Но для клиентов AP это не работает. Для всех соединений, исходящих от AP, перенаправление на tor работает отлично. Вот фрагмент захваченного трафика от клиента AP (мобильный телефон) который состоит из запроса к identity.me :

enter image description here

Вы можете заметить, что правила перенаправления, описанные в iptables, игнорировались для замаскированного трафика.Почему это происходит и как это исправить?

Вот как выглядит тот же запрос, инициированный точкой доступа:

enter image description here

0
задан 3 May 2018 в 14:56
1 ответ

Ваши правила брандмауэра кажутся правильными. Однако перенаправление пакетов, поступающих на AP, должно быть настроено в цепочке PREROUTING . Правила, добавленные в цепочку OUTPUT , влияют только на локально сгенерированные пакеты.

Итак, следует добавить следующее правило:

iptables -t nat -A PREROUTING -i wlan0 -p tcp -j DNAT --to-destination 10.0.0.1:9040

В зависимости от политики, установленной в цепочке FORWARD в filter , может потребоваться следующее правило:

iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT   
1
ответ дан 4 December 2019 в 15:58

Теги

Похожие вопросы