После того, как я на самом деле подумал о том, чтобы пережевывать мои собственные запястья и мечтать о IP-адресах всю ночь напролет + грубая сила, гуглящая / пытаясь НИЧЕГО, я мог взять свои цифровые пальцы, мне удалось собрать что-то, что действительно работает. Я не знаю технических причин, поэтому, если вы можете дать объяснения, пожалуйста, сделайте это! : D
PS: все в объяснении делается через командную строку
PS: это не окончательное решение, а рабочее в ответ на мой собственный вопрос.
Вот оно:
Шаг 1: Пришлось включить IP-пересылку на поле:
vim /etc/sysctl.conf
// найти и раскомментировать следующее
net.ipv4.ip_forward=1
net.ipv4.conf.all.rp_filter=1
Шаг 2: Добавить правило обратной петли (это больше для случаев, когда все порты закрыты, очевидно, многим приложениям это нужно?
iptables -I INPUT -i lo -j ACCEPT
Шаг 3. Добавьте правила обхода порта 443: (eth1 - это интернет-интерфейс, а x.x.x.x / eth0 - это интерфейс локальной сети)
iptables -t filter -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -p tcp --dport 443 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source x.x.x.x
Шаг 4. Затем, наконец, правила, делающие Squid прозрачным: (x.x.x.x - это IP интерфейса LAN)
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j DNAT --to-destination x.x.x.x:3128
iptables -t nat -A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128