Лабораторные работы по ПО/Настройка Proxy-сервера Squid

Материал из wiki.nntc.nnov.ru
Перейти к навигации Перейти к поиску

Прокси-сервер (от англ. proxy — «представитель, уполномоченный») — служба в компьютерных сетях, позволяющая клиентам выполнять косвенные запросы к другим серверам. Сначала клиент подключается к прокси-серверу и запрашивает какой-либо ресурс (например, web-страницу), расположенный на другом сервере. Затем прокси-сервер либо подключается к указанному серверу и получает ресурс, либо возвращает ресурс из собственного кэша.

Основные задачи, решаемые с помощью proxy-сервера:

  • Кэширование данных, проходящих через основной сервер сети (это единственный способ кэширования информации)
  • Блокировка доступа к нежелательным web-сайтам или нежелаемому контенту (это единственный способ блокировки информации по типу данных или по содержимому)
  • Поточная проверка данных, передаваемых в сеть, на вирусы (единственный способ)
  • Изменение содержания передаваемой клиенту информации (например, блокировка рекламы, подмена на свой логотип)

Существует большое количество реализаций системы проксирования (3proxy, usergate, kerio и др.). Мы будем рассматривать самый распространенный в Internet прокси-сервер Squid.

Установка Squid

Как и другие программы в пакетных дистрибутивах Linux, squid устанавливается с помощью пакетного менеджера из репозитория.

Вам нужно проверить подключен ли репозиторий и дать команду обновить список доступных пакетов:

sudo aptitude update

Далее, даем команду для установки прокси-сервера squid

sudo aptitude install squid

Базовая настройка Squid

Для правильной работы proxy-сервера Squid вам понадобится сделать базовые настройки в файле /etc/squid/squid.conf

sudo nano /etc/squid/squid.conf


Вам нужно найти и проверить следующие параметры:

Порт, по которому будет доступен ваш proxy-сервер

http_port 3128


Адрес DNS сервера (сервера преобразования имен). В некоторых случая полезно указать этот параметр прямо в конфигурационном фале.

dns_nameservers 192.168.10.1


Имя вашего proxy-сервера, которое будет отображаться в сообщениях об ошибках

visible_hostname http-proxy


Сделав эти настройки перезапустите ваш proxy-сервер:

sudo /etc/init.d/squid restart


Проверка работоспособности установленного proxy-сервера

Для проверки работоспособности вашего proxy-сервера следует изменить настройки web-браузера на вашем комдпьютере, на работу с вновь установленным proxy.

FireFox proxy configuration.jpg

В нашем случае web-браузером будет FireFox.

  • Откройте меню Правка -> Настройки
  • Перейдите в раздел Дополнительно
  • Закладка Сеть
  • Нажмите кнопку Настроить
  • В появившемся окне укажите "Использовать Proxy-сервер"
  • Введите ip адрес вашего proxy-сервера и укажите порт, который вы указывали в параметре http_port при настройке squid


Теперь попробуйте ввести любой интернет адрес и посмотрите на результат.

Если вы получаете ответ от Proxy-сервера типа:

  • Access Denied - настроки вашего прокси запрещают доступ с вашего рабочего компьютера к ресурсам интернет
  • Can not retrieve address - проверьте параметр dns_nameservers
  • Cannot access site - существует проблема на сегменте подключения вашего proxy-сервера к интернет


При появлении предупреждения о запрете доступа ("access denied") сного вернуться к настройке вашего proxy-сервера squid

sudo nano /etc/squid/squid.conf

Доступ к Internet-ресурсам в proxy-сервере squid организуется через ACL листы. Описание правил доступа похоже не программирование:

1. Вы описываете переменную и присваиваете ей значение

acl NET155 src 192.168.155.0/255.255.255.0

2. Далее, вы описываете правила доступа к ресурсам Internet для этой переменной

http_access allow NET155

Все правила добавляются перед (до) параметра запрещения доступа

http_access deny all

Все правила доступа проверябтся последовательно и если вы уберете строку http_access deny all либо добавите правила разрешения после нее - ваш proxy-сервер будет работать не так, как вы запланировали.

Запретить доступ к определенному сайту

Запретить доступ к Internet для определенного компьютера вашей локальной сети

Запретить загрузки файлов определенного типа

Выполнить блокировку рекламных банеров

Обеспечить работу приложений через PROXY-сервер SQUID (ICQ)

Ограничить скорость доступа

Ограничить время доступа в Internet

Презентация по SQUID

media:Squid-presentation.odp

Контрольные вопросы

  1. Назначение PROXY-сервера.
  2. В каком файле конфигурируется PROXY-сервер?
  3. В каком файле находится информация о работе PROXY-сервера?
  4. Что означает параметр acl?
  5. Что означает параметр src?
  6. Что означает параметр dst?
  7. Что означает параметр dstdomain?
  8. Каким образом можно запретить доступ по контентенту?