ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ (НИУ «БелГУ») ФАКУЛЬТЕТ КОМПЬЮТЕРНЫХ НАУК И ТЕЛЕКОММУНИКАЦИЙ КАФЕДРА МАТЕМАТИЧЕСКОГО И ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ИНФОРМАЦИОННЫХ СИСТЕМ Отчет по лабораторной работе №1 студента дневного отделения 4 курса группы 140901 Батищева Дениса Сергеевича вариант №1 УСТАНОВКА И АДМИНИСТРИРОВАНИЕ Proxy-СЕРВЕРА Проверил: Лихошерстный А. Ю. Оценка: __________ дата _________ Подпись: ________________________ БЕЛГОРОД 2012 Задание: Сконфигурировать Proxy-сервер на порт 3128; разрешить доступ с ip 172.23.57.100 c 10-00 до 15-00 ч; запретить доступ с ip 172.23.57.101 с 10-00 до 15-00 ч; запретить доступ к доменам *.bsu.edu.ru; запретить доступ к файлам *.gif c ip 172.23.57.100 c 10-00 до 15-00 ч. 1. Устанавливаем. В Debian это просто – sudo apt-get install squid 2. Переходим в каталог /etc/squid. Это основной каталог с конфигурационными файлами. 3. Начинаем править конфиг squid.conf a. Добавляем директиву прослушивания 3128 порта b. Правим конфигурационный файл. Добавляем ACL: all, lab3net, lab3net100, lab3net101, bsueduru, gifrule acl all src 0.0.0.0/0 acl lab3net src 172.23.57.0/24 acl lab3net100 src 172.23.57.100/32 acl lab3net100time time M T W T F S S 10:00-15:00 acl lab3net101 src 172.23.57.101/32 acl lab3net101time time M F W T F S S 10:00-15:00 acl bsueduru dstdomain .bsu.edu.ru acl gifrule urlpath_regex \.gif$ c. Добавляем директивы, использующие эти правила: http_access http_access http_access http_access allow lab3net100 lab3net100time deny lab3net101 lab3net101time deny lab3net bsueduru deny lab3net gifrule d. Запускаем squid: sudo /etc/init.d/squid start Таким образом, мы сконфигурировали прокси-сервер согласно заданию. Так как дома сеть bsu.edu.ru не доступна, для тестирования правил, добавим еще одну цепочку, в которую поместим адрес локальной петли. acl local src 127.0.0.0/24 Добавляем правило для этой acl. http_access allow localnet lab3net100time http_access allow localnet bsueduru http_access deny localnet gifrule Проверяем. Для проверки удобно пользоваться утилитой curl. Curl с ключом –x может использовать указанный http-proxy для соединения. [root ~ ]# curl -x localhost:3128 www.bsu.edu.ru -v * About to connect() to proxy localhost port 3128 (#0) * Trying 127.0.0.1... * connected * Connected to localhost (127.0.0.1) port 3128 (#0) > GET HTTP://www.bsu.edu.ru HTTP/1.1 > User-Agent: curl/7.28.0 > Host: www.bsu.edu.ru > Accept: */* > Proxy-Connection: Keep-Alive [root ~ ]# curl -x localhost:3128 http://www.mms.mts.ru/datas1/000/003/336/33364 04_thumb.gif -v * About to connect() to proxy localhost port 3128 (#0) * Trying 127.0.0.1... * connected * Connected to localhost (127.0.0.1) port 3128 (#0) > GET http://www.mms.mts.ru/datas1/000/003/336/3336404_thumb.gif HTTP/1.1 > User-Agent: curl/7.28.0 > Host: www.mms.mts.ru > Accept: */* > Proxy-Connection: Keep-Alive > * HTTP 1.0, assume close after body < HTTP/1.0 403 Forbidden