Ένα ACL User-Agent αντιστοιχίζει το αναγνωριστικό που βάζει ένας πελάτης στο αίτημα HTTP του. Σε διαμόρφωση Squid 7, ένας πελάτης δοκιμής μπορεί να ταξινομηθεί με req_header:

acl legacy_probe req_header User-Agent -i ^LegacyProbe/
http_access deny legacy_probe

Το παράδειγμα αντιστοιχίζει μια κεφαλίδα που αρχίζει με LegacyProbe/, χωρίς διάκριση πεζών-κεφαλαίων. Αντικαταστήστε το μοτίβο με το επιθυμητό αναγνωριστικό πελάτη. Η έκφραση είναι κανονική έκφραση, όχι αναζήτηση ονόματος προϊόντος προγράμματος περιήγησης.

Τοποθετήστε τον κανόνα απόρριψης πριν από οποιονδήποτε ευρύτερο κανόνα πρόσβασης που θα επέτρεπε ήδη το αίτημα. Διατηρήστε τους υπάρχοντες ελέγχους πελάτη και προορισμού του διακομιστή μεσολάβησης γύρω από αυτόν τον στοχευμένο κανόνα.

Ένα ευρύ πρόθεμα όπως Mozilla αντιστοιχίζει πολλά διαφορετικά προγράμματα περιήγησης. Χρησιμοποιήστε την πραγματική κεφαλίδα που στέλνει ο πελάτης όταν αποφασίζετε πόσο στενή πρέπει να είναι μια πολιτική συμβατότητας ή δοκιμής.

Ο πελάτης ελέγχει αυτή την κεφαλίδα και μπορεί να την αλλάξει ή να την παραλείψει. Ο κανόνας ταξινομεί ένα δηλωμένο αναγνωριστικό; δεν είναι ισχυρή ταυτότητα εφαρμογής. Λειτουργεί επίσης σε μηνύματα HTTP που μπορεί να επιθεωρήσει το Squid, όχι σε κρυπτογραφημένες κεφαλίδες ιστοτόπων μέσα σε ένα συνηθισμένο τούνελ CONNECT.

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