ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«РОССИЙСКИЙ ГОСУДАРСТВЕННЫЙ ГУМАНИТАРНЫЙ УНИВЕРСИТЕТ»
ФИЛИАЛ РГГУ В Г. ВОСКРЕСЕНСКЕ
Факультет управления
ПРОКСИ-СЕРВЕР
Контрольная работа по системе интернет
Студента 3 курсагруппы ДГМУ-3/5
Научный руководитель:
Воскресенск 2010
Прокси-сервер (от англ. proxy — «представитель, уполномоченный») — служба в компьютерных сетях, позволяющая клиентам выполнять косвенные запросы к другим сетевым службам. Сначала клиент подключается к прокси-серверу и запрашивает какой-либо ресурс (например, e-mail), расположенный на другом сервере. Затем прокси-сервер либо подключается к указанному серверу и получает ресурс у него, либо возвращает ресурс из собственного кэша (в случаях, если прокси имеет свой кэш). В некоторых случаях запрос клиента или ответ сервера может быть изменён прокси-сервером в определённых целях. Также прокси-сервер позволяет защищать клиентский компьютер от некоторых сетевых атак и помогает сохранять анонимность клиента.
Прокси-сервер (известный также как шлюз приложений) представляет собой приложение, которое выступает для трафика в качестве посредника между доверенной сетью и недоверенной сетью. Это не снимает необходимости применения брандмауэра для управления трафиком на IP-уровне, чтобы не предусматривать наличие брандмауэра прикладного уровня.
Вы можете представить себе посредника как доверенное лицо или посла, которым предписано находиться где-то, где не может непосредственно находиться их клиент (или предпочитает не находиться) по причинам неудобства или безопасности. Послы обычно знают местный язык и обычаи, могут привести несовершенный запрос клиента в форму, допустимую в местном масштабе другой зоны, и, конечно, могут перевести обратно полученный ответ. В компьютерных понятиях такой "посол" может получать https-запросы по порту 443 и преобразовывать их в http-запросы по порту 80.
Прокси в более повседневных, практических компьютерных терминах являются процессами, запущенными на компьютерах, которым, как правило, предоставлен доступ (в брандмауэре) к более чем одной зоне. Именно эта способность делает их полезными. В типичном случае прокси просто будет работать от имени своего пользователя на месте перекрытия зон (в образе приложения), выполняя и получая нечто из зоны, с которой при других обстоятельствах запрещено устанавливать контакт или запрашивать что-либо со стороны отдельных процессов и пользователей из другой зоны.
С другой стороны, на прокси можно посмотреть с точки зрения "человека посередине". Как мы видели в предыдущих лекциях, одной из фундаментальных концепций всеобщей безопасности (не только в криптографии) является концепция атаки со стороны "(плохого) человека посередине", которая заключается в перехвате и ретрансляции передаваемой между двумя сторонами информации третьей, незваной, "плохой" стороной.
Прокси могут восприниматься как "хорошие" приемники (слушатели) информации или как "люди посередине". Это значит, что они перехватывают информацию, ретранслируют ее далее, но с некоторой предопределенной и полезной для сетевой инфраструктуры целью.
Как правило, компьютерный прокси является базовым серверным процессом. Этот серверный процесс является слушателем, который "слушает" определенный порт (говорят также – связан с ним – bind), ожидая запросов по определенному протоколу. Когда установлено соединение с клиентом и получен правильный запрос, он "повторит" этот запрос другому серверу от имени клиента, как определено в его правилах для этого типа запросов. Когда от сервера получен ответ, прокси передает этот ответ назад пользователю или процессу клиента, которые ранее осуществили запрос, применяя все необходимые преобразования.
Если смотреть на вещи упрощенно, прокси на самом деле существуют во множестве различных продуктов. К примеру, большинство технологий порталов, которые сегодня легкодоступны, запрашивают контент от лица пользователя и компонуют его в отдельный "вид портала". Другим примером прокси являются "транзитные пересылки" Notes, которые существовали в Lotus Notes определенное количество лет и разрешали удаленный доступ в среды Notes на протяжении всех ранних лет развития Интернета. Тем не менее далее в этом разделе мы сосредоточим внимание на прокси в виде отдельных продуктов, так как наиболее часто используемым сегодня передовым опытом является применение отдельных прокси-сервисов.
В этом разделе определены существующие на рынке различные типы прокси, применяемые в обычных инфраструктурах. Как было установлено ранее, зачастую предоставленное для прокси оборудование будет на самом деле выполнять или поддерживать множество типов прокси-сервисов. К примеру, прокси-сервер может предоставлять возможности кэширования и аутентификации в дополнение к основной функции обеспечения сетевого посредничества для приложений. Однако мы будем трактовать эти ключевые возможности прокси как отдельные типы прокси для облегчения дальнейшего рассмотрения.
Ключевыми типами прокси являются:
Пересылающий прокси является прокси-сервером, который помогает пользователям из одной зоны безопасности выполнять запросы контента из "следующей" зоны, следуя направлению, которое обычно (но не обязательно) является исходящим (это значит, что клиент находится внутри, а сервер где-то в открытом Интернете).
С точки зрения безопасности простой прокси имеет целью обеспечение безопасности, состоящее в скрытии наименования (в терминах топологии внутренней сети) рабочей станции или процесса запрашивающего пользователя. Он может также применяться для скрытия некоторых других атрибутов сеанса пользователя.
Типичным примером этого типа являются корпоративные прокси, которые обслуживают внутренних пользователей посредством разрешения им доступа на внешние сайты для Web-браузинга или любого другого вида взаимодействия с Интернетом.
С точки зрения топологии (как в общем смысле, так и относительно ширины полосы пропускания) пересылающие прокси всегда относительно ограничены в терминах сетевой скорости по отношению к своим пользователям из-за более медленного WAN-соединения (соединения с глобальной сетью), которое обычно отделяет пересылающий прокси от реального контента в Интернете.
Прозрачные прокси являются прокси-серверами, которые "находятся здесь", но не осведомляют пользователей в прямой форме о том, что они здесь находятся. В пересылающих прокси обычно существуют LINUX/UNIX блоки, которые слушают весь трафик по определенному протоколу для определенного сегмента сети и перехватывают трафик, хотя пользовательский процесс в действительности не знает об их существовании. Фактически пользовательский процесс не общается с прокси, но общается с другим (конечным) сайтом, а прокси, в сущности, становится тем "человеком посередине", который "взламывает" соединение.
Прокси является непрозрачным, или объявленным, когда пользователи знают о том, что они общаются через прокси, потому что они обращаются (на языке прокси: HTTP) к прокси. Другими словами, если я объявил свой прокси как proxy.mydomain.com, то после этого мои процессы будут общаться с proxy.mydomain.com, запрашивая его об установлении контакта с конечным адресом назначения моих запросов. Я полностью осведомлен о существовании прокси, о необходимости общаться с ним на "языке прокси" (HTTP), и о необходимости передать ему куда "идти" и откуда "принести" необходимый контент.
Вы можете иметь объявленные, непрозрачные прокси, которые автоматически объявлены, сконфигурированы или обнаружены. Вне зависимости от того как они были объявлены, эти прокси являются видимыми и известными для запрашивающего пользователя или процесса. Другими словами, неважно, как вы или ваш процесс узнали о существовании прокси, каковы причины того, что вы узнали о существовании прокси и о том, что вы общаетесь с прокси.
Прозрачные прокси сами по себе не являются на самом деле типом прокси, скорее любой прокси является либо прозрачным, либо объявленным по проекту.
Кэширующие прокси, как указано в их названии, являются прокси-серверами, которые сконфигурированы на повторное использование кэшированных образов контента, когда это доступно и возможно. Когда кэшированная ранее часть контента недоступна, то производится ее выборка и использование в контенте, но также с попыткой ее кэширования.
Наиболее важным аспектом для кэширующих прокси является необходимость обеспечения того, что кэширующие прокси кэшируют только то, что на самом деле можно кэшировать. Динамический, регулярно изменяющийся контент не лучший выбор для кэширования, так как это может оказать воздействие на стабильность приложения, основанного на этом контенте. В случае HTTP-контента заголовки HTTP отображают возможность кэширования контента посредством указателей "cache".