- •Содержательная постановка задачи
- •Структура решения задачи
- •Теоретическая часть
- •Основные протоколы прокси-серверов
- •Http-прокси
- •Https-прокси
- •Socks прокси
- •Способы аутентификации
- •Способы ограничений
- •Обзор и анализ методов решения
- •Обзор существующих прокси-серверов
- •Kerio Control
- •Microsoft Forefront Threat Management Gateway
- •Сравнение
- •Обобщенный алгоритм
- •Описание и реализация применяемых методов
- •Установка прокси-сервера
- •Организация удаленного доступа
- •Конфигурирование прокси на клиенте
- •Создание пользователей
- •Создание списков доступа и ограничений
- •Настройка родительского (каскадного) прокси
- •Настройка кэширования
- •Настойка логирования
- •Заключение
Создание пользователей
Используемые команды:
auth[параметр] – выбор вида авторизации. Необходимая команда, иначе прокси-сервер не запустится.
authnone– отключение какой-либо авторизации
authiponly– авторизация поip-адресу
authuseronly– авторизация по связке логин\пароль
authstrong– авторизация поip-адресу И логин-паролю
users[имя]:[Тип хранения пароля]:[пароль] – создание новой группы пользователей. Например,usersadmin:CL:passwordсоздаст нового пользователяadminс паролемpassword. Существует 3 вида хранения пароля:CL– открытый текст,CR–MD5 хеш от пароля,NT– пароль в форматеNTв шестнадцатеричной форме. Возможно пакетное создание пользователей, например:usersuser1:CL:123user2:CL:456
Создадим пользователей vasya, petya, oleg с паролями qwerty, записанными в чистом виде
users vasya:CL:qwerty
users petya:CL:qwerty
users oleg:CL:qwerty
Создание списков доступа и ограничений
Разрешим пользователям vasya, petya заходить на gismeteo.ru и подразделы, oleg на sport.ru и подразделы, а также всем троим на gmail.com, но только со своих рабочих компьютеров (диапазоны адресов 192.168.1.40-192.168.1.42). Порты – 80 для HTTP, 443 для HTTPS
Используемые команды:
allow[имена пользователей] [адреса пользователей] [адрес сайта] [порт] – разрешает списку пользователей, с указанныхip-адресов доступ к адресам по указанному порту. Разрешены перечисления через запятую, в поле адрес сайта возможно использование как символьного адреса, так иip-адреса, в том числе при помощи масок. Для порта возможен диапазон. Пример:allowuser1 * *google* * разрешитuser1 с любогоip-адреса заходить на все адреса, названия которых содержатgoogle, по любому порту.Allowuser1 разрешитuser1 доступ ко всем сайтам.Allow* разрешит доступ всем
deny[имена пользователей] [адреса пользователей] [адрес сайта] [порт] – запрещает списку пользователей, с указанныхip-адресов доступ к адресам по указанному порту.Denyuser1 * *anekdot.ru* запретитuser1 доступ ко всем разделам сайтаanektot.ru
Добавим следующие строчки в конфиг:
allow vasya, petya * *gismeteo.ru* 80,443
allow oleg * *sport.ru* 80,443
allow vasya,oleg,petya 192.168.1.40-192.168.1.42 *gmail.com* 80,443
Настройка родительского (каскадного) прокси
Так как необходимо перенаправлять все запросы на родительский прокси proxy.ugatu.ac.ru:8008, то необходимо настроить родительский прокси.
Parent[вес] [протокол] [адрес родительского прокси] [порт родительского прокси] – перенаправляет все запросы на родительский прокси. В случае с одним родительским прокси-сервером вес равен 1000, иначе 1000/N, гдеN– количество родительских прокси.
Изменим все строчки с правилами следующим образом:
allow vasya, petya * *gismeteo.ru* 80,443
parent 1000 http proxy.ugatu.ac.ru 8008
allow oleg * *sport.ru* 80,443
parent 1000 http proxy.ugatu.ac.ru 8008
allow vasya,oleg,petya 192.168.1.40-192.168.1.42 *gmail.com* 80,443
parent 1000 http proxy.ugatu.ac.ru 8008
Настройка кэширования
Включим кэширование dnsgoogleс размером кэша 64 МБ.
Используемые команды:
nscache[размер в байтах] – размер кэша дляdns-сервера
nserver[адрес] – определение адресаdns-сервера (необходимо только для кэширования)
Добавим следующие строчки в конфиг:
# Google DNS
nserver 8.8.8.8
nserver 8.8.8.4
# размер кэша – 64 МБ
nscache 65536