Я работаю squid3
в моей Ubuntu 14.04 и попробованном удаленном использовании прокси в целях исследования. Когда я пробую удаленный доступ другим компьютером в Университете LAN, я встречаюсь с пустым журналом кэша. Таким образом, я попробовал
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
Затем мой сквид является работой остановки, вскоре после запуска. Как я могу вернуться изменения, которые я внес использованием вышеупомянутой команды??
С sudo iptables -t nat --line-numbers -L
необходимо видеть что-то вроде этого:
Chain PREROUTING (policy ACCEPT)
num target prot opt source destination
1 REDIRECT tcp -- anywhere anywhere tcp dpt:http redir ports 3128
Chain INPUT (policy ACCEPT)
num target prot opt source destination
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
num target prot opt source destination
Удаляют PREROUTING
порт влияния правила (правил) 3128
:
sudo iptables -t nat --line-numbers -L | tac | \
awk '/redir ports 3128/ {system("sudo iptables -t nat -D PREROUTING "$1)}'
Теперь проверяют правила снова:
% sudo iptables -t nat --line-numbers -L
Chain PREROUTING (policy ACCEPT)
num target prot opt source destination
Chain INPUT (policy ACCEPT)
num target prot opt source destination
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
num target prot opt source destination
<час> Объяснение
iptables -vt nat -L
списки необходимые правила
% sudo iptables -vt nat -L
Chain PREROUTING (policy ACCEPT 11 packets, 1957 bytes)
pkts bytes target prot opt in out source destination
0 0 REDIRECT tcp -- eth0 any anywhere anywhere tcp dpt:http redir ports 3128
Chain INPUT (policy ACCEPT 2 packets, 194 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 152 packets, 14386 bytes)
pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 152 packets, 14386 bytes)
pkts bytes target prot opt in out source destination
И нам нужны правила для порта 3128
в обратном порядке, если у Вас есть больше чем один и номера строки
% sudo iptables -t nat --line-numbers -L | tac | awk '/redir ports 3128/'
1 REDIRECT tcp -- anywhere anywhere tcp dpt:http redir ports 3128
немного awk
, волшебство удаляет правила линию за линией
awk '/redir ports 3128/ {system("sudo iptables -t nat -D PREROUTING "$1)}'