VPN-клиенты.
На этой страничке будет небольшой обзорчик VPN-клиентов. Их не надо путать с VPN-серверами, которые способны принять сотни входящих подключений от VPN-клиентов (VPN-cервера будут описаны на другой страничке). Кроме того, надо отличать VPN-тоннели от SSL-тоннелей, которые поддерживаются множеством самых распространенных программ. Например SSH, которой мы ходим в юниксовые системы начиная от FreeBSD. Или VNC, которой мы ходим в Линуксы в графическом режиме. Или VmWare-клиент, которым мы ходим в VmWare или Veem Backup and FastSCP, которым мы ходим в файловую систему VmWare. Или WinSCP, которым мы ходим в файловую систему Линуксов. Все эти проги имеют IPSec-шифрование оно же SSL-тоннель, но это никак не связано с VPN-тоннелями.
С другой стороны надо отличать VPN-тоннели от PROXY-серверов, многократно описанных на моем сайте (см например тут, тут, тут, тут). Прокси-сервер это специфическая штука для трансляции либо SOCK либо HTTP -трафика из внутренних сетей внаружу и наоборот - приема входящего HTTP-трафика и разбрасывания его на основе Host-хеадеров по кампутерам из DMZ. На DNS-запросы прокси-сервера вообще никак не влияют, как и на геолокацию. А любые проги вашего кампутера, которые не знают о существовании где-то вашего прокси-сервера, работают как будто его и нет вовсе.
В отличие от SSL-тоннелей и Proxy-серверов, установленный VPN-тоннель транслирует абсолютно весь трафик на удаленный VPN-сервер, а оттуда по назначению. Например BBC-плеер работает на основе Flash-медиа плеера, геолокации и DNS-запросов. Если вы сконфигурировали VPN-тоннель например с помощью упомянутой ниже инструкции с HideIpVPN, то никаким способом на сервере BBC невозможно определить, что вы смотрите телевидение BBC из России, а не из Англии.
VPN-тоннель создает на локальном кампутере иллюзию, будто вы зашли по RDP в удаленную виндузню или по VNC в удаленный Линукс, развернули удаленный рабочий стол на полный экран и ничего кроме этого удаленного рабочего стола у вас больше нет. И даже айпишник вашего кампутера будет тот, который вам присвоит удаленный VPN-сервер.
VPN-тоннелей существует как минимум три типа - PPTP VPN (по паролю без сертификата, в том числе вообще без шифрования, только инкапсуляция) и IPSec VPN (с сертификатом, шифрование на на канальном уровне). L2TP VPN - это немного иной, чем PPTP, способ установки коннекта, после коннекта работает как IPSec. Практически любой VPN-сервер поддерживает все эти виды тоннелей. Кроме этих трех протоколов есть еще минимум два протокола VPN - SSTP и OpenVPN.
TP-LINK TL-ER604W на скринах также умеет поддерживать совсем простой тоннель PPPoE (при котором коннект происходит только по простому логину-паролю, а сам тоннель не шифруется).
Эти же типы VPN можно увидеть как способ коннекта WAN-порта
Принципиально VPN-клиенты бывают софтверные и хардверные. Софтверные бывают для Виндузовой, Линуксовой и Андроидной платформы. Аппаратные клиенты тоже чуток отличаются по мелким особенностям реализации. Чисто субъективно я бы выделил такие бренды - CISCO, ZYXELL, DLINK и китайские TRENDNET и TP-LINK.
C аппаратных клиентов и начнем.
Hardware VPN
У меня есть маленький CISCO, на котором легко отладить всякие заморочки. Принципиально этот маленький цискарик имеет диалоговую оболочку PDM, в которой можно все сконфигурить и есть командный режим как у всех больших CISCO IOS. Настройка VPN описана в документации подробно с 412-й по 546-ю страницу.
Другой крупный бренд, который делает все без оглядки на CISCO - это ZyXell. Я все делаю на них. У меня есть и свой собственный старенький ZyWall и самый большой и современный ZyWall, который стоит у меня на хостинге в Москве. Большой, на хостинге вы можете увидеть на первой фотке - он второй снизу в правом ряду. А маленький на второй фотке третий сверху. Возможности обоих приборов в части конфигурации VPN вы можете увидеть здесь - для ZyWall 1000 и для ZyWall 70 .
Третий вид аппаратных клиент-серверов - это китайские бренды Trendnet и TP-Link. Первых я купил когда-то десяток и ставил их во все сервера. Много осталось работать и сейчас. Выглядело это так, как на первой фотке. Второй бренд TP-LINK очень крутой и современный. С ними я только учусь работать в момент написания этой заметки. Пока очень нравятся их возможности. Посмотреть скрины и оценить возможности этих приборов касательно VPN вы можете здесь - Trendnet BRV 204, Trendnet BRV 324. Возможности TP-LINK TL-ER604W вы видели на скринах выше.
Еще один крупный бренд DLINK. У него есть тоже отличный VPN Router такого же назначения, как и TP-LINK TL-ER604W, а именно DSR-1000N - живьем у меня его нет, но в принципе впечатления от DLINK-ов были всегда хорошие. DSR-1000N гораздо более мощный, чем TL-ER604W - если первый поддерживает 30 IPSec и 8 L2TP или PPTP, то второй поддерживает 135 VPN-тоннелей, 70 IpSec и 25 PPTP/L2TP. А стоящий у меня на хостинге ZyWall USG 1000 еще мощнее - он поддерживает 1000 IpSec тоннелей.
Как видите, в деталях VPN-возможности у оборудования разных производителей сильно различается. К примеру ZyXell имеет свой ААА-сервер и енролмент сертификатов, зато не имеет развитого сканера MAC-адресов (и вообще даже его собственный MAC невозможно сменить), встроенного (без отдельных дорогих лицензий) обнаружителя атак, не имеет поддержки всяких модных штучек как IPTV, E-Bulletin - как у китайских брендов. Глобально говоря, китайские бренды обеспечивают самые крутые и современные возможности, которых нет у CISCO и ZyXELL, но китайские бренды реально ложатся от любой атаки (проверено на собственной шкуре в реале), а американские бренды работают просто, очень быстро и гораздо надежнее. У меня сложилось впечатление что американские бренды заточены на производительность и надежность, но какие-то имеют странные расширения основных возможностей в тех направления, которые считает необходимыми сделать фирма-производитель, ну например у ZyXell это ААА-сервер и сервер енролмента сертификатов, всякие заморочки с роутингом на основе политик, Fileover VPN, VOIP поверх VPN и прочие заморочки.
В целом китайские бренды намного проще конфигурить (ну например чтобы запретить IPTV есть тупо отдельная галка, а поди еще разберись как это сделать в CISCO или ZyWall) - при чем китайские бренды хорошо поддерживают все самые новые веяния. Но ложатся они запросто, даже на небольшой офис c 30-50-ю кампутерами я бы не решился ставить даже самый мощный китайский Trendnet или TP-LINK.
VPN for Windows
Теперь я перечислю несколько известных программных клиентов VPN. Начнем с Виндузовых. Во первых, я часто использую Securepoint. Очень качественный клиент, с отдельным настроечным файлом, в котором можно описать все что угодно. Он подробно у меня описан здесь.
Подобный же бесплатный клиент Shrew VPN-клиент. По идее это то же самое, но я им просто не пользуюсь. Без пунктов DNSЗ Proxy и Credintal Provider это фриварная софтинка.
OpenVPN-клиент это еще один клон из этой же серии, отличающийся тем что это полное OpenSource. Состоит из двух компонентов - драйвера сетевого интерфейса TAP-Windows и GUI, построенному по такому же принципу как у двух вышеупомянутых софтинок.
А кроме того, исполнительным ядро этого клиента является OpenSSH, которое используется в миллионе случаев, для генерации ключей, подписывания сертификатов и черт знает еще для чего (хотя, в принципе, сами по себе сертификаты можно генерить и без OpenSSH, например виндузовыми инструментами, или ГОСТ-вским ФСБ-шными приблудами).
А на скринах ниже я использовал OpenSSH чтобы получить отклик от цискаря, который не хотел делать респонс сертификата при входе в него по SSL. На скринах ниже вы можете видеть, как я зашел в цискарь, заново сгенерил самоподписанный сертификат, записал его во флешку для последующего использования (в любой последующей загрузке без сброса в заводские установки), затем сделал реквест снова и увидел отклик цискарика, что реквест браузера не авторизован.
Наконец, последний тип виндузового клиента, который мы тут рассмотрим - это встроенный в виндузню клиент от Микрософта.
Наиболее толковое и полное описание настройки VPN встроенными клиентами микрософтовской платформы - я видел на сайте HideIpVPN (кстати и работает клиентская софтинка с этого сайта с VPN-сервером этого сайта изумительно).
VPN for Linux
Теперь посмотрим как зайти в настройки встроенного конфигуратора VPN на линуксовой платформе OpenSuse. Сам по себе протокол PPP и PPTP ставится в SUSE при минимальной настройке (кроме PPPoe).
А вот для настройки простого PPTP очень удобно использовать стандартный Webmin, одинаково работающий на любых линуксах.
NetworkManager - это специфическая приблуда SUSE, впрочем очень удобная и с развитыми возможностями. То что касается настроек VPN вы можете видеть на скринах ниже.
Естественно, на линуксовой платформе существует еще больше VPN-клиентов в виде отдельных софтинок, чем на виндузовой. Но их обзор - это отдельная тема. Здесь упомянут только изначально встроенный в минимальную установку конфигуратор сетевого интерфейса.
VPN for Android
На платформе Android VPN приходится настраивать почти всегда (чтобы приконнектится к VPN-серверу сотового оператора). После чего на коммуникаторе появляется интернет. Пример настройки VPN на платформе Android тоже можно посмотреть на сайте HideIpVPN.
А вот как например выглядела настройка VPN на моем телефоне, для которого я купил новую SIM-ку. Я завел в нем новый аккаунт для коннекта к VPN-серверу и приконнектился к нему встроенными в Андроид инструментами VPN.
Для платформы Andoroid написаны сотни VPN-клиентов - первые 140 вы видите на скринах ниже
|