Un'ACL User-Agent abbina l'identificatore che un client inserisce nella sua richiesta HTTP. In una configurazione Squid 7, un client di prova può essere classificato con req_header:

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

L'esempio abbina un'intestazione che inizia con LegacyProbe/, senza distinzione tra maiuscole e minuscole. Sostituite il modello con l'identificatore client desiderato. L'espressione è un'espressione regolare, non una ricerca del nome di un prodotto browser.

Mettete la regola di blocco prima di qualsiasi regola di accesso più ampia che consentirebbe già la richiesta. Mantenete i controlli esistenti di client e destinazione del proxy attorno a questa regola mirata.

Un prefisso ampio come Mozilla abbina molti browser diversi. Usate l'intestazione effettiva inviata dal client quando decidete quanto debba essere stretta una politica di compatibilità o di test.

Il client controlla questa intestazione e può modificarla o ometterla. La regola classifica un identificatore dichiarato; non è un'identità applicativa forte. Agisce inoltre sui messaggi HTTP che Squid può ispezionare, non sulle intestazioni cifrate dei siti web dentro un normale tunnel CONNECT.

Articoli correlati