Сквид блокирует сайт за исключением некоторых страниц

Я предполагаю, что трудность состоит в том, что корневые каталоги не публично исполняемы в Вашей среде.

Можно поместить список управления доступом во все корневые каталоги, который дает конкретному пользователю или разрешению казни группы к каталогу. Веб-сервер затем потенциально сможет получить доступ к любому файлу в корневых каталогах пользователей, которые могут обеспечить способы нарастить полномочия (по крайней мере, это расширит влияние локальной уязвимости доступа к файлу). Например, в соответствии с Солярисом или Linux, удостоверьтесь, что домашняя файловая система смонтирована с acl опция, и выполненный

setfacl -m user:www-data:x /home/*

(интегрируйте это в свою установку создания учетной записи). Затем скажите Вашим пользователям что их ~/public_html каталог должен быть читаемым www-data пользователь; они могут выполнить эту команду:

setfacl -R -m default:user:www-data:rx ~/public_html
setfacl -R -m user:www-data:rx ~/public_html

Другая возможность состоит в том, чтобы смонтировать всех пользователей public_html каталоги в отдельном месте в файловой системе. Этот подход имеет преимущество, что полномочия на корневых каталогах не будут иметь значения; это даже позволяет веб-серверу выполнять chroooted. В соответствии с Linux, можно сделать это для корневого каталога:

mount --bind /home/joe/public_html /srv/homepages/joe

public_html каталог и его содержание все еще должны быть сделаны доступными для www-data.

Вариант на Linux связывает, монтируют, что метод использует bindfs файловую систему. Этот метод работает над любой ОС, которая поддерживает bindfs (который является большинством нельдов), и не требует никаких настроек ACL, по стоимости что любой файл под public_html будет сделан доступным для чтения веб-сервером.

bindfs -u www-data -p 500 /home/joe/public_html /srv/homepages/joe

2
15.03.2013, 14:55
1 ответ
  1. Создайте файл /etc/squid/white.acl
  2. Поместите следующие данные там:

    finam.ru/analysis/.*
    finam.ru/.*\.js
    finam.ru/.*\.css
    
  3. Поместите этот код в squid.conf. Необходимо поместить белый список перед черным списком:

    acl good_url url_regex "/etc/squid/white.acl"
    http_access allow good_url
    
    acl bad_url url_regex "/etc/squid/block.acl"
    http_access deny bad_url
    
2
27.01.2020, 22:14

Теги

Похожие вопросы