iptables --uid-owner odgovara lokalnim socketima Squida, a ne LAN korisnicima
Koristite značenje --uid-owner kao lokalnog kreatora socketa kada razmišljate o Squid izlazu i držite proslijeđene LAN pakete odvojeno.
iptables owner podudaranje može prepoznati pakete koje je kreirao socket lokalnog procesa. Na primjer, -m owner --uid-owner 1234 odnosi se na lokalni socket u vlasništvu UID-a 1234; ne prepoznaje korisničko ime HTTP proxyja.
Na mašini na kojoj radi Squid razlikujte ove putanje:
| Saobraćaj | Relevantna razlika |
|---|---|
| Klijent se povezuje na Squid na ovoj mašini | Dolazna veza prema proxy listeneru |
| Squid otvara vezu prema odredištu | Lokalno kreiran odlazni socket |
| LAN klijent usmjerava direktno kroz ovu mašinu | Proslijeđeni saobraćaj bez lokalnog kreatora socketa |
Ekstenzija je važeća u OUTPUT i POSTROUTING. Proslijeđeni paketi nemaju pridruženi lokalni socket za ovo podudaranje, pa FORWARD pravilo ne može otkriti korisnika udaljenog računara pitajući za Squidov UID.
Politika koja dozvoljava Squidove vlastite odlazne sockete stoga pokriva samo jedan dio dizajna mreže zasnovane isključivo na proxyju. Prosljeđivanje kroz gateway, pristup listeneru, druge dozvoljene usluge i stvarni račun proxy usluge moraju se rješavati u odgovarajućem obimu.
Koristite konfigurirani runtime identitet umjesto pretpostavke da Squid radi kao nobody. Više procesa može dijeliti jedan UID, pa je dozvola zasnovana na UID-u granica računa, a ne dokaz da je jedan određeni izvršni fajl kreirao svaku dozvoljenu vezu.