VPN - это частная, организованная программными средствами, сеть. Частная она потому, что доступ к ней могут получить только участники VPN-сети. А для её работы, нужно, чтобы на каждом конце VPN-соединения находилось нужное ПО, которое занимается шифровкой и отправкой данных. Реализаций VPN, типов VPN-cетей и используемых для их организации протоколов - тьма тьмущая, а любое VPN-соединение основано на создании защищенного туннеля между компьютерами.

Работает это так: на двух компьютерах стоит специальное программное обеспечение, когда им нужно связаться друг с другом - посылается запрос, проводящий аутентификацию, определяющий тип шифрования, обменивающийся ключами для расшифровки (в зависимости от протокола, посылаются разные запросы и используются разные методы шифрования – иногда шифрования вообще нет), а после всех согласований образуется своеобразный "туннель" по которому передаются данные. Данные прячутся в обычных IP-пакетах, содержат заголовок и другие атрибуты, но внутри всё зашифровано алгоритмами нужного протокола. Данные передаются по сети нашему программному обеспечению, проводится расшифровка, и информация передаётся пользователю. Даже если кто-то перехватит такой пакет - расшифровать его будет крайне сложно.

vpn 5

На этом принципе строится любая VPN-сеть. Приведем пример.

Есть компания "Pirozhki enc." с головным офисом в Германии и филиалом в Санкт-Петербурге. Оба офиса имеют свою локальную сеть - "Сеть 1" и "Сеть 2", и адреса устройств - от 192.168.0.0 до 192.168.255.255 в обоих локальных сетях (локальные адреса не имеют ничего общего с глобальными, и выдаются свободно - в любой локальной сети есть такое пространство имен, и не счесть сколько в мире есть компьютеров с 192.168.1.200). Сети обслуживаются серверными машинами - через них налажена связь между компьютерами в каждой сети, и через них они связываются с внешней сетью - интернет. У обоих серверов есть свой "внешний" IP адрес для доступа из интернета - 66.55.44.11 для "Сеть 1" и 13.12.14.15 для "Сеть 2".

Предположим, сотрудник Паша из Сети 1 захочет передать отчет Джону из Сети 2, и нужно чтобы этот отчет пошел по безопасному соединению. Для этого на сервера ставится специальное ПО (о нем поговорим позже) и настраивается виртуальный туннель, например, "tun24" между двумя серверами, посылаются пробные запросы и вуаля - туннель готов. Теперь Паша отправляет отчет на почтовый адрес Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра. . Отчет идет из внутренней сети, сервер получает IP-пакет и видит, что получателем стоит 13.12.14.15. Ага, а админ написал, что все пакеты, которые идут на этот адрес, должны пересобираться, а данные в них - шифроваться и отправляться по туннелю "tun24" в Сеть 2. Шифрованный пакет уходит к следующему серверу, который тоже знает, что пакет нужно расшифровывать согласно ключам, которые стоят на обоих серверах, и отправить на почтовый адрес Джона. Всё это происходит в миллисекунды, и ни Джон, ни Паша не знает, сколько всего происходит с их отчетом по пути.

Если вы увлекаетесь играми, то, наверняка, слышали о Hamachi - это тоже VPN, построенный по ячеистой топологии. Сервер Hamachi лишь помогает двум (или больше) клиентам найти друг-друга, построить между ними туннель и организовать временную локальную сеть, для совместной игры. Да, VPN-сервер может организовывать и обслуживать сразу несколько таких туннелей, а "сеть ячеистой топологии" означает, что все, допустим, 5 компьютеров, косвено соединены друг с другом.

vpn 6

Если же говорить о VPN в той форме, которой он известен общественности (то есть, как продвинутый анонимайзер), то работает это ещё проще для конечного пользователя: вы получаете специальное, простое в управлении ПО, и, быть может, код аутентификации, ставите ПО на ваш компьютер и основная конфигурация производится им самостоятельно - весь трафик сперва идет через ПО, заголовки и IP-адрес меняется на адрес выбранного сервера где-нибудь в Амстердаме (IP-адрес сайта, на который вы хотели зайти, остается). Затем пакет идет на сервер, перенаправляется на сайт, и ответ идет по той же цепочке обратно.

Приведем простой пример.

Предположим, у вас есть бабуля в Амстердаме. В далеком детстве вместо сказок на ночь, она учила вас особому шифру, и теперь он вам пригодился - вы посылаете ей почтальоном письмо в самом обычном конверте, но написанное на шифрованном языке, с просьбой узнать, почем нынче запрещенные Роспотребнадзором леденцы в Москве. Бабуля получает его, расшифровывает, и посылает запрос в Москву. Поступки и интересы вашей бабули не попадают под российскую юрисдикцию, так что никто ничего ей не сделает, и вы оказываетесь вне всяких подозрений. А если вы сами попытаетесь узнать, лично послав прямой запрос в Москву, то кто-то, быть может, вскроет ваше письмо, узнает чем вы интересуетесь, и вместо ответа к вам придут люди в форме.

Бабуля в данном случае - VPN-сервер. Посланное почтальоном письмо - посланные по сети Интернет, зашифрованные данные, указания, которые поступают на VPN сервер, а уже оттуда отправляются по обычной сети, после чего возвращается по той же цепочке: VPN-cервер - шифрование - вы.

Cравнение с прокси

Если вы слышали о прокси-серверах, то можете решить, что никакой разницы между прокси и VPN нету. Это не так.

Прокси-сервер - это попросту компьютер со специальным ПО, который принимает и перенаправляет запросы. То есть, данные не шифруются, и всё что вы получаете от прокси-сервера - другой IP. Да, по ту сторону кабеля никто не узнает что именно вы заходили на такой-то сайт, ведь заходил на него компьютер с прокси-сервером, но данные, переданные прокси-серверу, при желании, можно перехватить и прочитать, да и сам прокси-сервер может быть скомпрометированным и подробно изучать логи своих пользователей (всё таки – прокси-серверов много, и далеко не все сертифицированы). VPN, в свою очередь - это целый программный комплекс, маскирующий как IP-адрес, так и передаваемый трафик, и, как правило, гарантирующий пользователям сохранность переданных данных.  

Компьютерный портал "Компаньон" © 2016.
В случае перепечатки материалов обязательна прямая ссылка на сайт cs-companion.ru.