русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Http_access allow office http_access deny all


Дата добавления: 2015-08-31; просмотров: 739; Нарушение авторских прав


Эти два правила описывают полный доступ машинам, описываемым acl office, и запрещает доступ машинам, описываемым all. В приведенном примере есть конфликт в описания прав доступа: машины, попадающие под правило all (а по этому правилу все запрещено) не могут использовать Proxy-сервер. Тут в дело вступает порядок просмотра ACL – они просматриваются в порядке объявления, и если сработало одно правило, то другие уже не просматриваются.

К примеру, если мы введем в дополнение ACL acl vasya src 192.168.1.100/255.255.255.255

и расположим правила так:

http_access allow office http_access deny vasya http_access deny all ,

то машина с ip-адресом 192.168.1.100 по-прежнему будет иметь возможность соединяться через Proxy сервер;

а если так:

http_access deny vasya http_access allow office http_access deny all ,

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

Если в списке нет ни одного правила, то запрос будет отвергнут. Если ни одно правило не сработало, то за основу берется последнее. Если, к примеру, мы заменим предпоследнее правило на http_access allow all, то нашим Proxy-сервером смогут пользоваться абсолютно все (кроме vasya), кто сможет соединиться с портом squid. Так что будьте внимательнее. Но авторы squid постарались: даже если последнее правило будет разрешающим для всех, то запрос будет отвергнут. Это поможет избежать дыр в Proxy-сервере.

На основе этих же списков-правил так же управляется и доступ к другим возможностям Proxy-сервера (см. файл squid.conf, где все расписано).

Правила – правилами, но, предположим, что в сети появились пользователи, которые честно подключаются к серверу и начинают выкачивать гигабайтами запрещенную информацию. При этом занесение этих сайтов в deny-список вызывает их возмущение.

На этот счет придумали много вещей, но самым эффективным остается сокращение канала для таких пользователей: доступ есть, но качается плохо, возразить им нечего – такая ситуация в Internet не редкость.



Итак, давайте разберемся с «траффик-шейпингом» – именно так это называется. В squid же это называется delay-pool. Заметим, что squid при сборке должен быть собран с опцией --enable-delay-pools.

Итак, сначала разберемся, какие есть пулы. Пулы делятся на три класса. Первый, и самый простой, это когда всему acl ограничивается трафик до определенной величины. Второй – когда отдельно ограничивается трафик для одной машины из подсети и для всей подсети. И третий класс – когда ограничивается трафик для отдельных машин, для подсети класса С или меньше и для подсети класса B.

Итак, давайте обыграем ситуацию, когда в сети завелся «дискокачальщик».

delay_pools 1 – у нас всего один пул.

delay_class 1 1 – первый пул первого класса.

delay_access 1 allow vasya

delay_access 1 deny all

В первый пул попадают только машины, описываемые ACL vasya. Остальные работают, как им положено, ведь им доступ к первому пулу запрещен.

delay_parameters 1 800/64000

Вот и все. Теперь файлы и страницы объемом до 64 Кб будут скачиваться на максимальной скорости, а то, что больше этого – на скорости 800 б/c.

Или совсем уж радикальная мера:

delay_parameters 1 800/800 – и «злобный качальщик» все будет качать на скорости 800 б/c.

Но даже в не очень большой сети будут возникать ситуации, когда все хотят что-то качать, в итоге никому ничего не хватает.

Исправляем строчку с delay_pools на delay_pools 2. Теперь у нас будет два пула.

delay_class 2 2 – второй пул будет второго класса (совпадение номеров чисто случайно) – первый – это vasya.

delay_access 2 allow office

delay_access 2 deny all

Во второй пул попадают только машины с ACL office.

delay_parameters 2 64000/64000 4000/4000

В итоге вся подсеть, описываемая office, будет использовать канал не больше 512 Кбит/с (64 Кб/с), но каждый отдельный хост будет качать не более 4 Кб/c. Этим правилом очень легко разграничить по скорости разные подсети, использующие один канал.

К примеру, у нас есть две подсети, описываемые office и office1. При этом office не должна иметь никаких ограничений на канал (примем канал за 256 Кбит) в целом, но каждый из office не должен качать быстрее 6 Кб/с. А office1 – это пользователи, которым всем и 5 Кб/с хватит.

Создаем два пула второго класса и прописываем для них ACL. Затем определяем этим пулам параметры.

delay_parameters 3 -1/-1 6000/6000 – это определение для office (ему отдан номер пула 3).

delay_parameters 4 5000/5000 -1/1 – а это для office1.

В итоге после применения этих правил получаем все, что заказано – первый офис грузит канал как хочет (-1/-1), но никто из сотрудников больше 6 Кб/c не получает. А второй офис грузит канал не больше 5 Кб/с, но в распределении этих 5 Кб/с между сотрудниками нет никаких правил.

Понятно, что в описание пулов можно заложить и другие параметры, например, время, место доступа и т. д. Остается еще одна маленькая вещь, которую нельзя оставить без внимания. И эта вещь – навязанная реклама через баннеры и другие объекты. Для того, чтобы такую рекламу не пропустить на броузер, каждый URL, который передается squid, первоначально передается редиректору. И тот либо возвращает прежний URL в случае, если все в порядке, либо возвращает тот, который, по его мнению, более правильный. А кто мешает нам перехватывать обращения к баннерам и счетчикам и вместо них подсовывать свою картинку? В итоге страницы можно заполнить прозрачными окошками.

Итак, в squid.conf прописываем строку



<== предыдущая лекция | следующая лекция ==>
Chown -R nobody /usr/local/squid | Теоретические сведения


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.196 сек.