Перенаправить трафик OpenVPN-шлюза в Privoxy
Я хотел бы перенаправить трафик, который проходит через мой OpenVPN-шлюз, в Privoxy, вот так:
Клиент OpenVPN-> Интернет-> Шлюз OpenVPN-> Privoxy-> Интернет-> Веб-сервер (и наоборот)
До сих пор мне удалось заставить шлюз OpenVPN работать нормально. Подключение к прокси-серверу Privoxy работает нормально. Но перенаправление трафика порта 80 через iptables просто не будет работать (внешние веб-серверы недоступны). Как должен выглядеть мой конфигурационный файл iptables?
заранее спасибо
PS: это то, что я придумал до сих пор...
iptables -t nat -A POSTROUTING -o eth0 -s 10.10.10.0/24 -j MASQUERADE iptables -I FORWARD -i tap0 -j ПРИНЯТЬ iptables -I FORWARD -o tap0 -j ПРИНЯТЬ # Нет успеха со следующей строкой iptables -t nat -A ПРЕДУПРЕЖДЕНИЕ -i tap0 -p tcp --dport 80 -j НАПРАВЛЕНО - на порт 8118
3 ответа
Вы можете отправить конфигурацию прокси клиентам OpenVPN.
В веб-интерфейсе OpenVPN Access Server перейдите в раздел "Дополнительные параметры VPN"> "Директивы конфигурации сервера" и введите следующую директиву с информацией о вашем ip/ порте прокси.
push "dhcp-option PROXY_HTTP 111.222.333.44 8118"
Я не уверен, что все клиенты OpenVPN поддерживают эту конфигурацию. Но на IOS это работает хорошо.
Настройте privoxy для прослушивания адреса на туннельном интерфейсе, например, 172.26.0.1, а затем просто перенаправьте VPN-трафик на него:
sudo iptables -t nat -A PREROUTING --source 172.26.0.0/16 -p tcp -m tcp --dport 80 -j DNAT --to 172.26.0.1:8118
Privoxy - это HTTP-прокси. То, что вы пытаетесь сделать, - это подавать нетронутыми сетевые пакеты, которые, я уверен, на 99% не примут этого без каких-либо очень сложных правил искажения в iptables. Вместо этого вы должны выставить прокси для VPN (кажется, что он уже есть) и использовать его как параметр DHCP для ваших клиентов VPN.
Инструкции для этого через OpenVPN можно найти здесь https://forums.openvpn.net/topic14829.html и это можно сделать для каждого клиента отдельно, используя каталог ccd, если у вас есть такая настройка.