pf: Перенаправление всех пакетов на порт 80 с любого интерфейса на прокси-сервер SOCKS

Я пытаюсь перенаправить любые пакеты на порт 80 с любого интерфейса на мой прокси-сервер SOCKS ( Сервер ). Я не уверен, правильно ли он настроен, но я не могу заставить его пересылать пакеты.

Я создаю прокси-сервер SOCKS, как на машине A :

ssh -D 5948 user@server

Это позволяет мне получать доступ в Интернет через прокси-сервер SOCKS, если я изменяю настройки прокси-сервера в Chrome.

Это нормально, за исключением того, что я подключаю устройство ( Устройство B ) к Машине A с помощью Bluetooth, и я хочу получить доступ к Интернету через прокси-сервер SOCKS с этого устройства, проходящего через мой машина.

           +---------------+    +---------------+    +--------------+
           |               |    |               |    |              |
           |               |    |               |    |              |
Internet   |    Server     <----+   Machine A   <----+   Device B   |
           |               |    |               |    |              |
           |               |    |               |    |              |
           +---------------+    +---------------+    +--------------+
                                                  Connected via Bluetooth

Соединение и общий доступ к Интернету через Bluetooth работают нормально, за исключением того, что вместо прокси-сервера SOCKS используется мой интернет-провайдер.

Вместо этого я хочу использовать pf для пересылки любого пакета с любого интерфейса на порт 80 на мой прокси-сервер SOCKS.

Я попытался это сделать, создав файл привязки со следующим:

rdr pass inet proto tcp from any to any port 80 -> 127.0.0.1 port 5948

Я включил привязку в pf.conf и включил пересылку на всех интерфейсах следующим образом:

net.inet.ip.forwarding=1
net.inet6.ip6.forwarding=1

Пересылка не ' Это происходит, и я могу только предположить, что мое правило pf неверно. Я проверил это с помощью:

sudo pfctl -vnf /etc/pf.anchors/org.jj.forwarding

Есть идеи, где я ошибаюсь?

0
29.10.2016, 18:37
1 ответ

Поскольку вы включили пересылку, добавление следующего правила iptable должно работать

iptables -t nat -A PREROUTING -i bl1 -p tcp --dport 80 -j DNAT --to 127.0.0.1: 5948

bl1 - это ваш интерфейс bluetooth

0
28.01.2020, 04:49

Теги

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