9.2. Работа прокси-сервера

9.2. Работа прокси-сервера

Изначально прокси-серверы (proxy) создавались для решения узкого круга задач, а именно, — кэширование данных, получаемых из Интернета. Например, вы работаете в сети из 100 компьютеров, которые подключаются к Интернету через один физический канал связи. Не секрет, что большая часть пользователей загружает по несколько раз в день одни и те же страницы, и каждый раз эта закачка давит на канал связи и трафик.

Сделаем простейший расчет. Ежедневно мы обращаемся к поисковой системе, например, www.yahoo.com или www.google.com. Теперь посчитайте, сколько происходит загрузок сайта www.yahoo.com со 100 компьютеров. В результате должно получиться число более 1000, потому что в среднем человек просматривает не менее 10 страниц за счет поиска разной информации и уточнения запросов. Таким образом, трафик расходуется напрасно.

Для экономии интернет-трафика были придуманы прокси-серверы. Со временем их возможности стали наращиваться, и на данный момент можно выделить следующие преимущества от использования подобных программ:

? кэширование документов, получаемых по сети;

? кэширование результатов DNS-запросов;

? организация шлюза доступа в сеть;

? управление доступом в Интернет;

? анонимный доступ в сеть через сокрытие адреса;

? экономия IP-адресов.

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

Чтобы сэкономить трафик и одновременно увеличить скорость загрузки, на сервере, через который осуществляется выход в Интернет, устанавливается специализированная программа proxy, которая кэширует весь трафик (рис. 9.1). Когда первый пользователь загружает страницу www.yahoo.com, то все ее содержимое сохраняется в кэше proxy. При следующем обращении к Web-узлу все картинки скачиваются уже не из Интернета, а с прокси-сервера провайдера, а текстовая часть (в зависимости от содержимого страницы и происшедших изменений) может быть загружена с сервера.

Рис. 9.1. Организация работы с Интернетом через прокси-сервер

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

Скорость загрузки увеличивается за счет того, что proxy находится в вашей локальной сети, и связь с ним, чаще всего, соответствует вашему оборудованию, пропускная способность которого в настоящее время даже в самых дешевых вариантах достигает 100 Мбит/с. По этому каналу вы забираете большую часть информации (всю графику и неизмененную текстовую часть). Связь с Интернетом намного ниже, и в малых офисах в среднем составляет от 2 до 8 Мбит/с. Через этот канал вы забираете только измененные текстовые данные (чаще всего, содержимое HTML-файлов).

Помимо кэширования содержимого страниц, proxy может сохранять результаты DNS-запросов. Это также может повысить производительность. Пользователю удобнее вводить символьные адреса, а компьютер обменивается данными через IP-адрес. Исходя из этого, прежде чем начнется загрузка, программа должна выполнить такую подмену. Это занимает какое-то время и создает задержку перед началом обмена данными. Если до вас уже кто- нибудь обращался к сайту по символьному имени, то задержки на работу с сервером DNS не будет, потому что proxy возьмет адрес из своего кэша. Более подробно о DNS мы поговорим в гл. 11.

С развитием всемирной сети и увеличением потребностей пользователей стали наращиваться и возможности proxy. Теперь прокси-сервер может выполнять роль шлюза и обеспечить доступ в Интернет без дополнительных программ или оборудования. Помимо этого, он становится щитом в сети от вторжения извне. Например, все пользователи подключены к Интернету через proxy. При этом сервер прячет реальный IP-адрес пакетов и отправляет их в сеть от своего имени, т.е. хакеры видят только IP-адрес прокси-сервера и будут ломать его, а компьютеры реальных пользователей останутся незатронутыми. Таким образом, намного проще при организации защиты от внешнего вторжения больше внимания уделять охране прокси-сервера, чем клиентским компьютерам. Но несмотря на это, возможности proxy с точки зрения защиты слишком простые и их легко можно обойти, поэтому без хорошего сетевого экрана и зоркого глаза администратора все же не обойтись.

Возможность сокрытия IP-адреса дает еще одно преимущество — экономия адресов. Интернет-адрес должен быть только у прокси-сервера, потому что он обменивается пакетами с внешним миром. Все остальные компьютеры в вашей локальной сети могут иметь немаршрутизируемые адреса, которые зарезервированы для частных сетей (диапазон 192.168.x.x или 10.x.x.x).

Прокси-серверы бывают прозрачные и анонимные. Прозрачные пакеты пользователя (без изменения адреса отправителя) просто пересылаются дальше на Web-сервер. Proxy, который скрывает IP-адрес, называется анонимным. Такой сервер общается с внешним миром от своего имени. Этим очень часто пользуются злоумышленники. Например, если хакер хочет вскрыть сервер и замести следы, то он производит все свои действия через анонимный прокси- сервер, чтобы администратор не смог узнать, кто именно производил взлом.

На данный момент в Интернете работает множество анонимных прокси- серверов, но только не все из них реально прячут адрес. В отдельных случаях источник остается доступным, для удаленной системы, а некоторые серверы сохраняют всю активность в журналах, и их могут просмотреть правоохранительные органы. Таким образом, злоумышленник не может быть уверенным, что используемый им сервер действительно анонимен.

Так как не все компьютеры в сети должны иметь право работать с Интернетом, то на уровне прокси-сервера можно производить аутентификацию пользователя.

В некоторых версиях proxy есть очень удобная возможность — обмен информацией между серверами. Например, в здании в одной большой сети находятся несколько офисов, но каждый из них платит за Интернет отдельно, поэтому общается с внешним миром через свой прокси-сервер. Можно объединить proxy, и если на одном нет в кэше нужного сайта, то он возьмет информацию с соседнего сервера.

Чаще всего для реализации такой возможности применяется ICP-протокол (Internet Cache Protocol, протокол интернет-кэширования). Если ваш сервер не нашел нужного документа, то он направляет ICP-запрос другим серверам. Если какой-либо proxy ответит положительно, то информация будет взята у него.

При использовании протокола ICP (или иного способа поиска данных в других proxy) выигрыш от скорости загрузки становится не столь значительным при обращении к документам маленького размера, потому что увеличивается время на ICP и поиск информации в кэше. При большой нагрузке на серверы и немалой базе кэша поиск может оказаться слишком долгим, и скоростное преимущество исчезает. Единственное, что остается в вашем распоряжении — экономия трафика, которая может сберечь деньги тем, кто оплачивает каждый получаемый мегабайт.

Мы рассмотрели основные возможности proxy, но это не значит, что все они есть в любом сервере. Все зависит от разработчика, а некоторые реализуют только одну задачу.

Для работы через прокси-сервер вы должны настроить соответствующую программу, например, браузер Mozilla. Запустите этот обозреватель и выберите меню Edit/Preferences. В появившемся окне с левой стороны расположен список категорий для конфигурирования. Выберите Advanced/Proxies, и перейдите к настройке подключения через прокси-сервер. По умолчанию установлено автоматическое определение соединения (Direct connection to the Internet). Вы должны поменять этот параметр на ручную конфигурацию (Manual proxy configuration) и указать IP-адрес и порт прокси-сервера для каждого протокола (рис. 9.2).

Рис. 9.2. Настройка соединения через прокси-сервер в браузере Mozilla

После этой настройки браузер будет посылать все запросы прокси-серверу, а тот уже перенаправит их серверу. Proxy постоянно должен находиться в загруженном состоянии и прослушивать определенный порт (или несколько портов для разных протоколов).

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

Для повышения безопасности вашей сети необходимо запретить с помощью сетевого экрана подключения извне на используемые сервисом squid порты. Например, для его работы с HTTP-протоколом по умолчанию используется порт 3128. И если к этому порту будет разрешено подключаться только из локальной сети, то хакер не сможет применять этот прокси-сервер в своих целях или для получения доступа к компьютерам этой сети.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

2.3.2. Параметры прокси-сервера

Из книги Fedora 8 Руководство пользователя автора Колисниченко Денис Николаевич

2.3.2. Параметры прокси-сервера В локальной сети довольно часто для кэширования трафика (следовательно, для его экономии к ускорения доступа пользователей к Сети) устанавливается прокси-сервер. Уточните его параметры (IP-адрес или доменное имя и номер порта) у


3.1.6. Yum и прокси-сервер

Из книги Linux-сервер своими руками автора Колисниченко Денис Николаевич

3.1.6. Yum и прокси-сервер Вы подключаетесь к Интернету через прокси-cервеp, а не напрямую? Тогда у вас могут возникнуть проблемы с yum - он откажется работать. Чтобы заставить его работать, нужно в конфигурационном файле /etc/yum.conf указать имя про-кси-cервера (или его IP-адрес), порт,


15 Прокси-сервер SQUID

Из книги Интернет. Новые возможности. Трюки и эффекты [litres] автора Баловсяк Надежда Васильевна

15 Прокси-сервер SQUID 15.1. Что такое SQUID? SQUID — это программа, которая получает HTTP/FTP-запросы клиентов и по ним обращается к ресурсам Интернет. Применение прокси-сервера (squid) дает возможность использовать фиктивные IP-адреса во внутренней сети (Masquerading — маскарадинг),


Прокси-сервер

Из книги TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security) автора Фейт Сидни М

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


5.26 Прокси ARP

Из книги Сетевые средства Linux автора Смит Родерик В.

5.26 Прокси ARP Предположим, что в сети нельзя использовать смежные номера. Например, 128.36.4.0 и 128.36.20.0 совместно используют носитель. В этом случае хосты локальной сети можно конфигурировать с маской 255.255.0.0, т.е. без выделения подсетей. Затем хосты смогут использовать ARP для


14.7.3 Промежуточные прокси

Из книги Интернет – легко и просто! автора Александров Егор

14.7.3 Промежуточные прокси Некоторые организации создают более изощренные системы безопасности. Каждый запрос реально пересылается на промежуточный прокси, реализующий систему зашиты локальной сети. Прокси становится единственной системой, которая будет видна из


19.7.1 Прокси-сервер

Из книги Бесплатные разговоры через Интернет автора Фрузоров Сергей

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


20.3.1 Прокси-агенты

Из книги Как найти и скачать в Интернете любые файлы автора Райтман М. А.

20.3.1 Прокси-агенты В основе модели SNMP лежит принцип сосуществования агента и базы данных MIB в одном устройстве, которое может управляться и контролироваться из удаленной точки сети. Прокси-агент несколько расширяет эту модель, разрешая косвенный доступ к устройству.


Работа локального сервера DNS

Из книги Linux: Полное руководство автора Колисниченко Денис Николаевич

Работа локального сервера DNS Локальный сервер DNS не только предоставляет возможность внешним пользователям обращаться к компьютерам вашей локальной сети по именам. Он также выполняет преобразование символьных имен в IP-адреса для узлов локальной сети, т.е. выполняет те


Прокси-сервер

Из книги Ubuntu 10. Краткое руководство пользователя автора Колисниченко Д. Н.

Прокси-сервер Это понятие немного не относится к основным, однако стремящийся стать опытным пользователь должен иметь о нем представление. Прокси-сервер – это специальная программа, являющаяся своеобразным буфером между пользователем и Интернетом. Применять ее


Прокси-сервер

Из книги Linux глазами хакера автора Флёнов Михаил Евгеньевич

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


Смена расширения: как обойти ограничения администратора и прокси-сервера

Из книги Анонимность и безопасность в Интернете. От «чайника» к пользователю автора Колисниченко Денис Николаевич

Смена расширения: как обойти ограничения администратора и прокси-сервера Надеюсь, некоторые советы в предыдущем разделе помогли вам получить доступ к тем веб-страницам, посещение которых ограничено или запрещено. Конечно, описанные методы работают не в 100 % случаев, и в


18.1. Что такое прокси-сервер?

Из книги автора

18.1. Что такое прокси-сервер? Прокси-сервер (сервер-посредник) — это программа, которая выполняет HTTP/FTP-запросы от имени клиентов. Применение прокси-сервера дает возможность использовать фиктивные IP-адреса во внутренней сети (IP-маскарадинг), увеличивает скорость обработки


8.4. Параметры прокси-сервера

Из книги автора

8.4. Параметры прокси-сервера Обычно мы заходим в Интернет напрямую. Но иногда, особенно в локальных сетях, устанавливаются так называемые прокси-серверы — для экономии трафика и кэширования запросов клиентов. Прокси-сервер позволяет не только ускорить доступ к


12.5.4. Журнал прокси-сервера squid

Из книги автора

12.5.4. Журнал прокси-сервера squid Основным журналом прокси-сервера squid является /var/log/squid/access.log. Это текстовый файл, в котором каждая строка состоит из следующих полей:? время начала соединения или события;? продолжительность сессии;? IP-адрес клиента;? результат обработки


1.3.1. Прокси-сервер – что это?

Из книги автора

1.3.1. Прокси-сервер – что это? Итак, что такое прокси-сервер? Это узел сети, служащий для кэширования информации и ограничения доступа в сеть. Прокси-серверы устанавливаются как администраторами локальной сети для нужд ее самой, так и провайдерами Интернета для нужд всех их