Squid PROXY ప్రోటోకాల్: HTTP యాక్సెస్ తనిఖీల ముందు పంపినవారిని నమ్మండి
Squid యొక్క PROXY ప్రోటోకాల్ పంపినవారి తనిఖీలను గమ్య-డొమైన్ మరియు క్లయింట్ అభ్యర్థన అధికారం నుండి వేరుగా ఉంచండి.
మెటాడేటాను సరఫరా చేసే రిలేను నమ్మడానికి proxy_protocol_access ఉపయోగించండి, అనుమతించిన వెబ్సైట్లను ఎంచుకోవడానికి కాదు. Squid 5–7 లో, TCP ఏర్పాటు తర్వాత require-proxy-header లిజనర్పై తనిఖీ ఒకసారి నడుస్తుంది, HTTP అభ్యర్థన హెడర్లు ప్రాసెస్ కాకముందే:
acl trusted_relay src 192.0.2.20/32
http_port 3128 require-proxy-header
proxy_protocol_access allow trusted_relay
proxy_protocol_access deny allఉదాహరణ రిలే చిరునామాను మార్చి ఈ లిజనర్కు నెట్వర్క్ యాక్సెస్ను పరిమితం చేయండి. ఈ దశలో Squid సరఫరా చేసిన మెటాడేటాను అంగీకరించే ముందు అసలు TCP భాగస్వామిని తనిఖీ చేస్తుంది. అంగీకరించిన తర్వాత, తదుపరి ACL తనిఖీలు మరియు లాగింగ్ కోసం చెప్పబడిన క్లయింట్ చిరునామాను ఉపయోగిస్తుంది. రిలే చెప్పే క్లయింట్ చిరునామా ఆధారంగా నమ్మడం ఆ క్రమాన్ని తిరగబెడుతుంది.
తదుపరి క్లయింట్-మూలం మరియు గమ్యస్థాన అనుమతుల కోసం http_access ఉంచండి. మెటాడేటాను అంగీకరించడం వెబ్సైట్ యాక్సెస్ను అధికారం ఇవ్వదు, మరియు గమ్య-డొమైన్ ACL మునుపటి పంపినవారి-నమ్మకం ప్రశ్నకు సమాధానం ఇవ్వలేదు.
పంపినవారు మరియు స్వీకర్త మద్దతు ఉన్న PROXY ప్రోటోకాల్ వెర్షన్పై అంగీకరించాలి. సాధారణ HTTP క్లయింట్ ఈ తప్పనిసరి-ప్రిఫిక్స్ లిజనర్ను సాధారణ ప్రాక్సీ ఎండ్పాయింట్గా ఉపయోగించలేదు. రెండు రూపాలు అవసరమైతే, అదే వినడం చిరునామా మరియు పోర్టును నకిలీ చేయడం బదులు ఉద్దేశపూర్వకంగా వేరు చేసిన ఎండ్పాయింట్లను ఉపయోగించండి.
నమ్మదగిన రిలే తాను సరఫరా చేసే క్లయింట్ గుర్తింపు ద్వారా చిరునామా-ఆధారిత అధికారాన్ని ప్రభావితం చేయగలదు. ఆ సామర్థ్యాన్ని ఉద్దేశించిన మధ్యవర్తికి మాత్రమే ఇవ్వండి.