iptables --uid-owner atitinka vietinius Squid lizdus, o ne LAN naudotojus
Vertindami Squid išėjimą, naudokite --uid-owner kaip vietinio lizdo kūrėjo reikšmę ir laikykite persiunčiamus LAN paketus atskirai.
iptables owner atitikmuo gali atpažinti paketus, kuriuos sukūrė vietinio proceso lizdas. Pavyzdžiui, -m owner --uid-owner 1234 nurodo vietinį lizdą, priklausantį UID 1234; jis neatpažįsta HTTP tarpinio serverio naudotojo vardo.
Kompiuteryje, kuriame veikia Squid, atskirkite šiuos kelius:
| Srautas | Atitinkamas skirtumas |
|---|---|
| Klientas prisijungia prie Squid šiame kompiuteryje | Įeinantis ryšys į tarpinio serverio klausytuvą |
| Squid atidaro ryšį į paskirties vietą | Vietoje sukurtas išeinantis lizdas |
| LAN klientas maršrutizuoja tiesiogiai per šį kompiuterį | Persiunčiamas srautas be vietinio kūrėjo lizdo |
Plėtinys galioja OUTPUT ir POSTROUTING. Persiunčiami paketai neturi susieto vietinio lizdo šiam atitikmeniui, todėl FORWARD taisyklė negali atskleisti nuotolinio kompiuterio naudotojo, klausdama Squid UID.
Todėl politika, leidžianti pačiam Squid išeinančius lizdus, sprendžia tik vieną dalį tinklo projekto, pagrįsto vien tarpiniu serveriu. Tarpinio serverio persiuntimas, klausytuvo prieiga, kitos leidžiamos paslaugos ir tikroji tarpinio serverio paslaugos paskyra turi būti tvarkomi atitinkamoje srityje.
Naudokite sukonfigūruotą vykdymo tapatybę, o ne manykite, kad Squid veikia kaip nobody. Keli procesai gali dalytis vienu UID, todėl UID pagrįstas leidimas yra paskyros riba, o ne įrodymas, kad konkretus vykdomasis failas sukūrė kiekvieną leidžiamą ryšį.