Блокировка больших файлов

    О чем этот текст?

    Очень часто возникает задача ограничить размер скачиваемых файлов пользователями. И даже если стоит безлимит на 100 мегабит, все равно нужно ограничивать пользователей, потому что огромные объекты гигабайт эдак на 25, попросту забьют канал и работать станет заметно тяжелее. Кроме того, в наши обязанности входит создание условий при которых рабочее место сотрудников не должно превращаться в столик Интернет кафе. Как вариант можно ограничить скорость, но это будет описано в другом материале.

    Примечание

    Прежде чем рваться в бой, уточни, понимаешь ли ты значение следующих тегов:

    Основная часть

    На предприятии как правило условно существует два Интернета. Первый для простых смертных сотрудников, а второй для руководителей. Разумеется ограничивать нужно первых. Поэтому сразу понятно, что необходимо создать два ACL. Возможно даже больше надо, под твои нужды. Закрепив за руководителем определенный IP адрес, пишем:

    #Допустим ты закрепил за руководителем IP адрес 192.168.1.10

    acl boss src 192.168.1.10/255.255.255.255

    #А здесь определим всех наших пользователей включая руководителя

    acl ournetwork src 192.168.1.0/24

    #Если не определен по умолчанию, то пропишем кто такие all

    acl all src 0.0.0.0/0.0.0.0

    #Теперь надо дать доступ нашей сети через Squid. Обозначим полностью сеть включая руководителя

    http_access ournetwork

    # Вот сейчас и настал момент истины. Блокируем получение больших файлов(без разбора) от простых смертных и разрешаем руководителю. Правила читаются сверху вниз, поэтому сначала пишется разрешительное.

    reply_body_max_size 0 allow boss

    #Разрешаем сотрудникам получать 5 мегабайтные ответы, но не более.

    reply_body_max_size 5000000 allow ournetwork
    reply_body_max_size 0 deny all

    Пробуй, должно всё получится.