Portál AbcLinuxu, 7. května 2025 07:34

Dotaz: Transparentní proxy + iptables

3.5.2008 14:27 tommycz91
Transparentní proxy + iptables
Přečteno: 941×
Odpovědět | Admin
Zdravím, neporadil by mi někdo s nastavením transparentní proxy? v squid.conf mám http_port 3218 transparent, ale nedaří se mi nastavit správně iptables. Přikládám schéma sítě:
        ------------------------------        ------------------------
--NET--|ADSL modem/router (10.0.0.138)|------|squid,bind,...(10.0.0.1)|
        ------------------------------        ------------------------
           |                 |
           |                 |
       --------------     --------------
      |pc01 10.0.0.10|   |pc02 10.0.0.11|
       --------------     --------------
Na pc01 a pc02 mám nastavenou výchozí bránu 10.0.0.138 a DNS 10.0.0.1 a náhradní 10.0.0.138. Jde nějak nastavit, abych nemusel na obou počítačích ručně nastavovat proxy? Jde o to, že ten počítač se squidem a bindem není občas spuštěnej,takže oba počítače použijí náhradní DNS server a jsou připojení bez proxy.

Když to shrnu, tak mi jde o tohle: když je použit jako DNS server 10.0.0.1, je všechno přesměrováno na transparentní proxy na stejném pc 10.0.0.1. jde to vůbec takhle udělat? Předem díky za všechny odpovědi.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

3.5.2008 15:40 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Transparentní proxy + iptables
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nastavení iptables by bylo třeba
iptables -t nat -A PREROUTING -p tcp -i eth? --dport 80 -s !10.0.0.1 -j DNAT --to-destination 10.0.0.1:3128 
Ale jste si jist, že na tom ADSL modemu jsou iptables?

Závislost na tom, jaký je použit DNS server půjde udělat asi dost těžko. Leda že byste pravidelně pingal na 10.0.0.1 a pokud bude dostupný, přidal tohle pravidlo, pokud nebude dostupný, zase jej odmazal. A přišlo by mi jednodušší zařídit, aby ten počítač 10.0.0.1 byl spuštěn vždy, když je potřeba, nebo proxy server nepoužívat.
3.5.2008 15:50 tezkatlipoka | skóre: 35
Rozbalit Rozbalit vše Re: Transparentní proxy + iptables
taky si nejsem jistej ze ADSL router bude umet iptables, a iptables na tom PC kde je proxy ti jsou k nicemu. A jak budes zjistovat a menit proxy podle toho jestli PC bezi nebo ne by me taky zajimalo, ale prohlizece by se meli umet samy nakonfigurovat, automaticka konfigurace proxy. nasel jsem k tomu treba tohle - zde. Kdyby ten PC nebezel, nemeli by se z ceho nakonfigurovat, a nabehnout bez nastavene proxy.
Vaše řeč budiž ano, ano, ne, ne. Co je nad to, je od ďábla.
2.6.2008 19:03 Marek
Rozbalit Rozbalit vše Re: Transparentní proxy + iptables
Nastavuji iptables na ADSL modemu při stejném rozvržení, jako je výše. Použil jsem Váš řádek pro iptables, ale bez úspěchu. Prosím tedy o radu nastavení iptables se směrováním na port 3128 (transparentní proxy server pomocí SQUID).

ADSL modem => 10.0.0.138 SQUID,DNS => 10.0.0.1 Ostatní PC => 10.0.0.2 - 10.0.0.5

Pokud zadám přímo v prohližeči PROXY server 10.0.0.1:3128, je instalace funkční. IPTABLES lze nastavit přímo na ADSL modemu.

Ohledně tohoto tématu je na Google dost, ale zatím nic funkčního (testováno REDIRECT i DNAT).
2.6.2008 20:05 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Transparentní proxy + iptables
Ten výše uvedený příklad funguje jenom v případě, že Squid je v jiné IP síti než klienti, tj. firewall mezi nimi routuje. Pokud jsou ve stejné síti, odpoví počítač se Squidem přímo, jenže klient odpověď z této IP adresy nečeká, takže paket zahodí a spojení se nenaváže. Řešení je buď Squid přesunout na jinou IP síť (třeba 10.0.1.0/24) nebo na firewallu dělat vedle DNATu i SNAT na IP adresu firewallu – Squid pak odpoví jemu a firewall může i paket s odpovědí upravit podle pravidel DNATu a klient dostane odpověď od té IP adresy, od které ji očekává.

Spíš bych se ale transparentnímu proxy serveru vyhnul, podle mne jsou s tím jenom problémy. Někdo udělá web na portu 8080 nebo 81 a prohlížeč už se na ten web nedostane – nebo musíte přidat další nestandardní porty do NATu, a to abyste tam přidal všechny, protože web si může každý provozovat na jakém portu se mu zlíbí.
3.6.2008 11:22 Marek
Rozbalit Rozbalit vše Re: Transparentní proxy + iptables
Moc Vám děkuji za radu, otestoval jsem tedy změnu IP adresy stroje se SQUIDem na 10.10.10.1, bohužel beze změny. Možný problém bych viděl v routeru, kde fuguruje více rozhraní: br0, eth0, nas0, ppp0 (externí), tiwlan0 a samořejmě lo.

Po nastavení na eth0 k žádné změně nedojde (shodaná MAC s br0), pokud se nastaví na br0, spojení k internetu není funkční.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.