Я пытаюсь настроить AP с перенаправлением входящего трафика через TOR. Моя точка доступа теперь имеет 2 сетевых интерфейса:
Для выхода в интернет с wlan0 я делал обычные вещи: включил пересылку и маскарадинг. Для перенаправления трафика (на tor) я сделал перенаправление 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-клиента (мобильного телефона), который состоит из запроса к ident.me
:
Вы можете заметить, что правила перенаправления, описанные в iptables, игнорировались для замаскированного трафика. Почему это происходит и как это исправить?
Вот так выглядит тот же запрос, инициированный AP:
Правила вашего брандмауэра кажутся правильными. Однако перенаправление пакетов, поступающих в точку доступа, должно быть настроено в PREROUTING
цепь. Правила добавлены в OUTPUT
цепочка влияет только на локально сгенерированные пакеты.
Итак, следует добавить следующее правило:
iptables -t nat -A PREROUTING -i wlan0 -p tcp -j DNAT --to-destination 10.0.0.1:9040
В зависимости от политики, установленной на FORWARD
цепь в filter
table, может понадобиться и следующее правило:
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT