Ας υποθέσουμε ότι ένας τομέας συνεργάτη πρέπει να χρησιμοποιεί καθορισμένο upstream proxy, ενώ άλλα επιτρεπόμενα αιτήματα χρησιμοποιούν τον κανονικό γονέα. Στο Squid 7, οι ονομασμένοι peers και το cache_peer_access εκφράζουν αυτή την πολιτική:

cache_peer partner-proxy.example parent 3128 0 no-query name=partner_parent
cache_peer general-proxy.example parent 3128 0 no-query name=general_parent

acl partner_domain dstdomain .partner.example

cache_peer_access partner_parent allow partner_domain
cache_peer_access partner_parent deny all

cache_peer_access general_parent deny partner_domain
cache_peer_access general_parent allow all

never_direct allow all

Αυτό είναι ένα απόσπασμα δρομολόγησης για υπάρχοντα forward proxy με έλεγχο πρόσβασης. Αν μια ανεξάρτητη δοκιμή δημόσιου προορισμού μπορεί να χρησιμοποιεί δημόσιους γονείς χωρίς έλεγχο ταυτότητας, επιλέξτε υποψηφίους από τη λίστα διακομιστών μεσολάβησης HTTP για τις διευθύνσεις εκείνες χωρίς διαπιστευτήρια γονέα. Η απαιτούμενη διαδρομή παραγωγής του συνεργάτη παραμένει ξεχωριστή συμφωνία πρόσβασης. Οι τιμές ονομάτων δίνουν σε κάθε γονέα σαφή ταυτότητα για τους κανόνες πρόσβασής του.

Για προορισμό που ταιριάζει, μόνο ο partner_parent παραμένει επιλέξιμος. Για άλλους προορισμούς, μόνο ο general_parent παραμένει επιλέξιμος. Ο πρώτος κανόνας που ταιριάζει για κάθε μεμονωμένο peer αποφασίζει αν αυτό το peer είναι επιλέξιμο.

Το cache_peer_access φιλτράρει υποψηφίους· δεν ταξινομεί όλα τα peers σε αλυσίδα εφεδρείας. Αν αφήσετε αρκετά επιλέξιμα, οι αλγόριθμοι επιλογής peer του Squid επιλέγουν μεταξύ τους.

Η γραμμή never_direct καθιστά υποχρεωτική τη χρήση γονέα σε αυτό το παράδειγμα. Αν ο απαιτούμενος γονέας δεν μπορεί να χρησιμοποιηθεί, δεν προσφέρεται άμεση σύνδεση ως υποκατάστατο. Διατηρήστε τα υπάρχοντα δικαιώματα πελάτη και προορισμού στο http_access· αυτοί οι κανόνες αποφασίζουν ποια αιτήματα γίνονται δεκτά πριν από την επιλογή upstream.

Αυτή η διαμόρφωση χρησιμοποιεί τη τεκμηριωμένη διεπαφή Squid 7. Η αναφορά σημειώνει το cache_peer_access ως μη διαθέσιμο στο Squid 8, γι' αυτό χρησιμοποιείτε την τεκμηρίωση της αντίστοιχης εγκατεστημένης έκδοσης όταν συντηρείτε αυτή τη ρύθμιση.

Σχετικά άρθρα