Мегаобучалка Главная | О нас | Обратная связь


Описание программных модулей



2019-07-03 210 Обсуждений (0)
Описание программных модулей 0.00 из 5.00 0 оценок




 

Основным программным модулем системы является кэширующий HTTP прокси-сервер Squid, предназначенный для организации безопасного доступа сотрудников в интернет.

Принцип работы модуля очень прост: после запуска он начинает прослушивать стандартный порт прокси-сервера 3128. Для того чтобы пользователь мог получить доступ в интернет, ему необходимо вписать адрес HTTP прокси-сервер в настройках браузера.

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

Прокси-сервер принимает запросы от клиентов. Когда это возможно и желательно, он генерирует ответ, основанный на документах, сохранённых в локальном КЭШе. Иначе, он направляет запрос удалённому серверу, а полученный ответ направляет клиенту, и если ответ был удачен, кэширует его. На рисунке 1.2 схематически показана работа кэширующего прокси-сервера.

 

Рис. 12. Передача информации через кэширующий proxy-сервер


Таким образом, proxy-сервер действует, и как сервер и как клиент. Он выступает в качестве сервера при приёмке HTTP запросов от клиентов, и клиентом по отношению к удалённым серверам, с которыми он устанавливает связь, когда не способен ответить на запрос, воспользовавшись данными из локального КЭШа.

Рассмотрим работу прокси-сервер более подробно. Когда прокси-сервер начинает работать, он находится в состоянии ожидания запросов от клиентов на специальный порт (по умолчанию 3128). После получения, для каждого запроса создаётся новый поток для обработки. Поток обработки анализирует запрос.

Если запрос должен извлечь документ (обозначается методом запроса «GET»), тогда, если выполняются все ниже перечисленные условия, то документ берётся из КЭШа и направляется клиенту, при этом число удачного использования кэша увеличивается на единицу (cache hit):

Необходимый документ имеется в КЭШе;

в запросе не указано, что документ нельзя взять из КЭШа (pragma «no cache» не задана в запросе);

в запросе не определена временная область «if-modified-since»;

Сервер, с которого запрашивается документ, не входит в список серверов, доступ к которым осуществляется без прокси-сервера.

Во всех остальных случаях запрос будет послан удалённому серверу, с которого запрашивается документ, или другому прокси-серверу, если таковой был определён. При этом число неудачного использования КЭШа (cache misses), будет увеличено на единицу.

Ответ от удалённого сервера передаётся клиенту. В добавление к этому в случае удачного ответа на запрос (что обозначается кодом 200 ответа удалённого сервера) и при условии, что сервер не находиться в списке серверов, доступ к которым осуществляется без прокси-сервера, найденный документ будет сохранён в КЭШе на локальном диске. При этом необходимо отметить, что всякий раз, когда получена новая версия кэшируемого документа (например, при ответе на запрос, содержащий поле «if-modified-since»), она заменяет более старую версию в КЭШе.

Статистика, накопленная в течении транзакции с удалённым сервером (время соединения, ширина пропускной полосы) используется для модификации статистической базы данных сервера. [16]. Благодаря кэшированию документов в значительной степени снижается количество потребляемого организацией трафика, как следствие экономятся финансовые средства предприятия.

Squid может выполнять следующие функции:

– Запрет доступа к различным не желательным сайтам

– ведение журнала посещённых сайтов

– ограничение скорости доступа в интернет и т.д.

Как и большинство программ для Linux, Squid не имеет графического интерфейса настройки. Настройка параметров работы прокси-сервера производится из текстового конфигурационного файла, располагающегося \etc\squid\squid.conf.

Пример конфигурационного файла Squid.

redirect_program /usr/local/rejik3/redirector /usr/local/rejik3/redirector.conf

acl student src 192.168.10.0/255.255.255.0

acl teacher src 192.168.0.0/255.255.255.0

http_access allow student

http_access allow teacher

http_port 192.168.0.1:3128

http_port 192.168.10.1:3128

в конфигурационном файле записываются директивы для программы, вот что значат приведённые выше директивы:

redirect _ program / usr / local / rejik 3/ redirector / usr / local / rejik 3/ redirector . conf – здесь указана программа редиректор в данном случае это rejik – предназначенная для блокирования нежелательных сайтов.

acl student src 192.168.10.0/255.255.255.0 – директива создающая запись в акцес листе Squid с именем student, также указано что к этой записи относятся всем компьютеры находящиеся в указанной подсети то есть в подсети 192.168.10.0/255.255.255.0

acl teacher src 192.168.0.0/255.255.255.0 – директива создающая запись в акцес листе Squid с именем teacher , также указано что к этой записи относятся всем компьютеры находящиеся в указанной подсети то есть в подсети 192.168.0.0/255.255.255.0.

http _ access allow student – директива, означающая, что записи student из акцесс листа разрешён доступ в интернет

http _ access allow teacher – директива, означающая, что записи teacher из акцесс листа разрешён доступ в интернет

http _ port 192.168.0.1:3128 – директива, означающая, что на сетевом интерфейсе с IP адресом 192.168.0.1 Squid будет прослушивать порт 3128

http _ port 192.168.10.1:3128-директива означающая, что на сетевом интерфейсе с IP адресом 192.168.10.1 Squid будет прослушивать порт 3128

Принцип работы редиректора заключается в следующем

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

Каждый раз, когда кто-то загружает файл через прокси-сервер, на стандартный вход редиректора передаются данные о запросе. Редиректор эти данные анализирует, при выполнении некоторых условий изменяет и выдает ответ на стандартный выход.

Например, чей-то браузер посылает запрос:

http://www.mp3.ru/pesna.mp3 10.1.1.10/- – GET

а редиректор, по замыслу администратора, меняет его на:

http:// 10.1.1.1/antimp3.mp3 10.1.1.10/- – GET


Табл. 4. Структура HTTP запроса


Запрос состоит из:

«http://www.mp3.ru/pesna.mp3» запрашиваемый URL
«10.1.1.10/–» ip адрес клиента/(имя хоста клиента или «–»)
«–» Логин клиента или «–»
«GET» метод запроса URL

 

В результате этого пользователь получает не понравившийся ему файл из интернета, а mp3 с локального веб сервера.

Также можно все запрещённые сайты заменить веб страницей с локального веб сервера гласящей, что посещение данного сайта запрещено.

Настройка редиректора производится также как и настройка Squida то есть путём редактирования текстового файла расположенного /usr/local/rejik3/redirector.conf

пример конфигурационного файла:

error_log /usr/local/rejik3/redirector.err

change_log /usr/local/rejik3/redirector.log

allow_ip 192.168.10.200

<BANNER>

ban_dir /usr/local/rejik3/banlists/banners

url http:// 192.168.10.1/ban/1x1.gif

<MP3>

ban_dir /usr/local/rejik3/banlists/mp3

url http://ya.ru/

<JS>

ban_dir /usr/local/rejik3/banlists/js

url http:// 192.168.10.1/ban/js.js

описание директив:

error_log /usr/local/rejik3/redirector.err – путь к файлу, куда записываться ошибки работы редиректора

change_log /usr/local/rejik3/redirector.log-путь к файлу, куда записываться результаты работы редиректора

allow_ip 192.168.10.200 – данная директива означает что к компьютеру с указанным IP адресом не будут применятся ограничения.

<BANNER> – название блока директив относящихся к баннерной рекламе
ban_dir /usr/local/rejik3/banlists/banners – указание пути к базе с баннерами
url http:// 91.190.67.218/ban/1x1.gif – указание адреса перенаправления запроса в данном случае это страничка, находящаяся на внутрисетевом веб сервере

<MP3> название блока директив относящихся к сайтам с музыкой
ban_dir /usr/local/rejik3/banlists/mp3 – указание пути к базе сайтов с музыкой
url http://ya.ru/ – указание адреса перенаправления запроса в данном случае это начальная страница поисковика Яндекс.

Кроме необходимости блокирования доступа к нежелательным сайтам также важен учёт потребляемого организацией трафика. Существует большой спектр программ, которые позволяют это сделать примерами могут служить SARG, Squid guard, Sams и lightsquid. На основании результатов полученных опытным путём решено было использовать lightsquid.

LighSquid – маленький и быстрый анализатор лога для прокси-сервера Squid, написан на Perl по мотивам SARG. Быстро устанавливается, не требует дополнительных модулей. В сравнении с SARG на диске занимает гораздо меньше места. Имеется web-интерфейс для просмотра статистики. Данные хранятся в файловой системе, не требует внешней БД. Статистика – общая с трафиком для каждого пользователя по дням и детальная, на какие сайты в какое время за день ходил пользователь.

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

Пример журнала работы прокси-сервера Squid:

1255333973.625 242 192.168.0.5 TCP_CLIENT_REFRESH_MISS/200 3643 GEThttp:// 93.184.71.27/eset_upd/update.ver – DIRECT/93.184.71.27 application/oc$
1255333975.034 201 192.168.0.5 TCP_MISS/401 745 GET http:// 93.184.71.27/download/engine3/em002_32_n6.nup-DIRECT/93.184.71.27 text/html1255333975.316 277 192.168.0.5 TCP_MISS/200 21055 GEThttp:// 93.184.71.27/download/engine3/em002_32_n6.nup – DIRECT/93.18.71.27 application/oct$1255333984.551 214 192.168.0.5 TCP_MISS/200 426 POST http://ts08.eset.com/query/chsquery.php-DIRECT/89.202.157.208 text/html1255333984.702 150 192.168.0.5 TCP_MISS/200 426 POST http://ts08.eset.com/query/chsquery.php-DIRECT/89.202.157.208 text/html1255334019.418 51 192.168.0.5 TCP_MISS/200 57 CONNECT mrim.mail.ru:443     – DIRECT/94.100.178.25 1255334019.494 14 192.168.0.5 TCP_MISS/404 0 CONNECT    obraz.foto.mail.ru:443 – IRECT/ – 1255334019.496 0 192.168.0.5 TCP_MISS/404 0 CONNECT obraz.foto.mail.ru:2041 – DIRECT/ – -1255334019.500 0 192.168.0.5 TCP_MISS/404 0 CONNECT obraz.foto.mail.ru:80 – DIRECT/ – -1255334020.027 46 192.168.0.5 TCP_MISS/200 263 CONNECT r.mail.ru:443 – DIRECT/94.100.179.186;

Как видно разобраться достаточно сложно, кто, что когда, во сколько скачивал и какие сайты посещал, после проведения lightsquidом анализа файла, данные представлены в удобном виде.

 

Рис. 13. Отчёт lightsquid


Как видно данные представлены в удобной форме, можно посмотреть трафик по дням

 

Рис. 14. Отчёт lightsquid

 

Рис. 15. Отчёт lightsquid, за месяц, по пользователям

 

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

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

 

 




2019-07-03 210 Обсуждений (0)
Описание программных модулей 0.00 из 5.00 0 оценок









Обсуждение в статье: Описание программных модулей

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас...
Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние...
Генезис конфликтологии как науки в древней Греции: Для уяснения предыстории конфликтологии существенное значение имеет обращение к античной...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (210)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.009 сек.)