Лабораторная работа №5
Прокси-сервер
Цель работы: Изучить работу прокси-сервера.
Задачи работы:
- Установить Squid;
- Настроить работу Squid;
- Проверить работу Squid.
Теоретическая часть
Прокси-сервер Squid
Squid - программный пакет, реализующий функцию кэширующего прокси-сервера для протоколов HTTP, FTP, Gopher и (в случае соответствующих настроек) HTTPS. Разработан сообществом как программа с открытым исходным кодом (распространяется в соответствии с GNU GPL). Все запросы выполняет как один неблокируемый процесс ввода/вывода. Используется в UNIX-системах и в операционных системах семейства Windows NT. Имеет возможность взаимодействия с Active Directory Windows Server путём аутентификации через LDAP, что позволяет использовать разграничения доступа к интернет-ресурсам пользователей, которые имеют учётные записи на Windows Server, также позволяет организовать «нарезку» интернет трафика для различных пользователей. Сервер Squid развивается в течение уже многих лет. Обеспечивает совместимость с большинством важнейших протоколов Интернета
Для установки Squid запустите в терминале следующую команду (рис. 5.1):
Рис. 5.1. Установка Squid
Конфигурация для Squid находится в файле /etc/squid/squid.conf. Оставим все настройки по умолчанию. Изменим лишь некоторые правила:
Для аутентификации пользователей добавим следующие строки:
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/internet_users
auth_param basic children 5
auth_param basic realm Enter Login/Password
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
В директории /usr/lib/squid/ncsa_auth находится программа, для аутентификации; в директории /etc/squid/internet_users – список пользователей и их пароли в зашифрованном виде. Текст «Enter Login/Password» обозначает приглашение к аутентификации.
Добавим строку http_access allow localnet. Это имя правила. Теперь напишем и сами правила (рис. 5.2):
Рис. 5.2. Правила
Аналогичным образом добавим правило с именем «password» и его описание:
acl password proxy_auth REQUIRED
После этого сохраняем файл-конфигурации и перезапускаем squid следующей командой:
Рис. 5.3. Перезапуск squid
Дальше проверим работу нашего прокси сервера. Например, создадим ещё одну виртуальную машину с любой операционной системой. К примеру, будем использовать Windows XP.
Меняем настройки виртуальной машины с Linux Ubuntu: в категории «Сеть» добавляем второй адаптер. При этом тип подключения «Внутренняя сеть», имя: «intent».
Меняем настройки виртуальной машины с Windows XP (или другой любой операционной системой): в категории «Сеть» для адаптера 1 тип подключения «Внутренняя сеть», имя: «intent».
В самих операционных системах приписываем статический IP-адрес, например, для Linux Ubuntu 192.168.0.1, для Windows XP – 192.168.0.2.
Далее, в Windows XP необходимо использовать подключение к LAN через прокси-сервер. В браузере Internet Explorer это можно сделать следующим образом:
Сервис > Свойство обозревателя > Подключение > Настройка LAN. Далее выделить пункт «Использовать прокси-сервер». В адресе прописать IP-адрес Ubuntu (192.168.0.1) и порт, который был прописан в файле-конфигурации squid (3128).
Практическая работа
1. Отключите межсетевой экран. Установите Squid на вашу операционную систему Linux;
2. Создайте новое правило работы Squid: разрешить доступ подсети 192.168.0.0/24;
3. Проверьте работу Squid следующим образом: создайте ещё две виртуальные машины с операционными системами Windows и Linux. Настройте второй адаптер вашей Linux Ubuntu и адаптеры у вспомогательных операционных систем. Не забудьте указать в браузерах вспомогательных операционных систем, что подключение будет осуществлятся через прокси-сервер. Если у вас всё настроено правильно и в вашей Linux Ubuntu есть подключение к Internet, то и во вспомогательных операционных системах так же должен быть доступ к Internet;
4. Измените предыдущее правило работы Squid: доступ подсети 192.168.0.0/24 должен быть разрешен в период рабочего времени (с 8.00 до 17.00) и только в рабочие дни (понедельник, вторник, среда, четверг, пятница).
Контрольные вопросы
1. Каково назначение Squid?
2. Каким образом изменяются настройки работы Squid?
3. Каким образом прописываются правила работы Squid? Опишите синтаксис.