Как настроить iptables для прокси-сервера Squid?

Как настроить iptables для прокси-сервера Squid?

Я арендовал место на сервере со статическим IP-адресом и хотел бы настроить на этом сервере прозрачный прокси-сервер.

После настройки Squid для тестирования с помощью listener http_access allow allя хотел задать информацию iptables. У меня есть только одно Ethernet-подключение с моим статическим IP-адресом. Я искал документацию о том, как это сделать с одним NIC, но не смог ее найти. (Есть много документации для двух и более NIC, но не для одного NIC.)

На данный момент он выдает мне следующий результат:

root@1:~# ifconfig
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:49 errors:0 dropped:0 overruns:0 frame:0
          TX packets:49 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:3536 (3.5 KB)  TX bytes:3536 (3.5 KB)

venet0    Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:127.0.0.1  P-t-P:127.0.0.1  Bcast:0.0.0.0  Mask:255.255.255.255
          inet6 addr: ::2/128 Scope:Compat
          inet6 addr: 2a01:[....]external-ipv6[...]/128 Scope:Global
          UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1
          RX packets:551353 errors:0 dropped:0 overruns:0 frame:0
          TX packets:455717 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:351211942 (351.2 MB)  TX bytes:267054641 (267.0 MB)

venet0:0  Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:[...]external-ipv4[...]  P-t-P:[...]external-ipv4[...]  Bcast:0.0.0.0  Mask:255.255.255.255
          UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1

Я не совсем уверен, куда мне двигаться дальше. Мои iptables сейчас совершенно пусты. Нужны ли мне ebtables для корректно работающего прозрачного прокси или правильных iptables достаточно, чтобы сделать это без ebtables? Если да, то есть ли простая команда, которую вы могли бы мне дать, чтобы их настроить?

Источники:

#

особенно эта цитата должна объяснить мне, как это сделать, но я не понимаю...

Далее я добавил следующие правила для пересылки всех http-запросов (поступающих на порт 80) на порт 3128 сервера Squid:

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to 192.168.1.1:3128
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128

с

iptables -t nat -A PREROUTING -i venet0 -p tcp --dport 80 -j DNAT --to 127.0.0.1:3128
iptables -t nat -A PREROUTING -i venet0:0 -p tcp --dport 80 -j REDIRECT --to-port 3128

это должно работать, но не работает...

Связанный контент