Назад | Перейти на главную страницу

Squid: отключить X-Forwarded-For, но только для определенных ACL

Я знаю, что могу полностью отключить заголовок X-Forwarded-For в Squid с помощью директивы "forwarded_for off" или "forwarded_for delete" глобально. Я хотел бы иметь возможность отключить этот заголовок только для определенных ACL, поэтому я могу отключить этот заголовок только для определенных URL-адресов и включить его для других. Есть ли способ сделать это?

Вы можете создать ACL на основе внешнего файла для хранения URL-адресов (на мой взгляд, проще управлять):

acl NoXForwardedFor dstdomain "/etc/squid/NoXForwardedFor.txt"

Содержание /etc/squid/NoXForwardedFor.txt будет примерно так:

.serverfault.com
.superuser.com
.stackoverflow.com

Затем удалите X-Forwarded-From из заголовка данного ACL:

request_header_access X-Forwarded-For deny NoXForwardedFor

Примечание: вы можете использовать dst директива вместо dstdomain директива. Но для этого требуется IP-адрес хоста URL, поэтому убедитесь, что целевой домен имеет фиксированный IP-адрес (а).

Может быть, несколько полезных ссылок для более глубокого понимания:

Я пробовал то же самое, и правильный синтаксис

acl NoXForwardedFor dst "/usr/pbi/squid-amd64/etc/squid/NoXForwardedFor.txt"

request_header_access X-Forwarded-For deny NoXForwardedFor

где NoXForwardedFor.txt содержит доменные имена.