iptables --uid-owner Squid'дин жергиликтүү сокеттерине дал келет, LAN колдонуучуларына эмес
Squid'дин чыгуусу жөнүндө ойлонгондо --uid-owner'дин жергиликтүү сокет жаратуучу маанисин колдонуп, кайра жиберилген LAN пакеттерин өзүнчө кармаңыз.
iptables'тин owner дал келиши жергиликтүү процесстин сокети жараткан пакеттерди аныктай алат. Мисалы, -m owner --uid-owner 1234 UID 1234'кө таандык жергиликтүү сокетти билдирет; ал HTTP прокси колдонуучу атын аныктабайт.
Squid иштеген машинада бул жолдорду ажыратыңыз:
| Трафик | Тиешелүү айырма |
|---|---|
| Кардар ушул машинадагы Squid'ге туташат | Прокси угуучусуна кирген байланыш |
| Squid багыттоо байланышын ачат | Жергиликтүү түзүлгөн чыгуучу сокет |
| LAN кардары ушул машина аркылуу түздөн-түз маршруттайт | Жергиликтүү жаратуучу сокети жок кайра жиберилген трафик |
Кеңейтүү OUTPUT жана POSTROUTING'де жарактуу. Кайра жиберилген пакеттердин бул дал келүү үчүн байланышкан жергиликтүү сокети жок, ошондуктан FORWARD эрежеси Squid'дин UID'ин сурап, алыскы компьютердин колдонуучусун таба албайт.
Ошондуктан Squid'дин өзүнүн чыгуучу сокеттерине уруксат берген саясат проксиге гана таянган тармак долбоорунун бир бөлүгүн гана камтыйт. Шлюз аркылуу жиберүү, угуучуга кирүү, башка уруксат берилген кызматтар жана прокси кызматынын чыныгы эсеби тиешелүү чөйрөсүндө чечилиши керек.
Squid nobody катары иштейт деп божомолдоонун ордуна конфигурацияланган аткаруу идентификациясын колдонуңуз. Бир нече процесс бир UID'ди бөлүшө алат, ошондуктан UID'ге негизделген уруксат — эсеп чеги, белгилүү бир аткарылуучу файл бардык уруксат берилген байланыштарды түздү деген далил эмес.