OpenVPN в линуксах — не rocket science, это должен уметь каждый

Материал из Rosalab Wiki
Перейти к: навигация, поиск


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

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

Однако мир меняется, разные границы появляются и в интернете, и все чаще, можно получить удивительные ошибки «Ресурс заблокирован», «Это видео недоступно для вашей страны» и т.п. Кто только этим не занимается — Netflix и Hulu не хотят, даже за деньги[1] делиться контентом с Восточной Европой и Азией, ну, а про а про наши интернет-блокировки решениями районных судов тоже наслышаны все.

Впрочем, иногда ограничение доступа вполне оправдано, когда речь идет о доступе к корпоративному интранету — только доверенные сотрудники должны иметь к нему доступ. Но ведь этим сотрудникам хочется удобства и постоянного доступа, и не с привинченного к полу громоздкого десктопа в унылом офис-центре, а с своего любимого лептопа, в любой момент, из дома, вайфайзированного кафе или парка, и прочего цивилизованного пространства («дом, это то место, где WiFI подключается автоматически»). В общем, BYOD-тренд заруливает.

XKCD aboud VPN.png

Все эти задачи — как протуннелировать в другую сеть, и стать для интернета «голландцем» или «американцем», или наоборот, попасть в свою внутреннюю сверхзащищенную сеть, или даже просто — вырваться из недоверенной сети, где твои пароли могут прослушать — решают VPN-технологии, и здесь мы не будем говорить прописных истин о том, как это работает, почему это надежно, о тонкостях алгоритмов шифрования, сертификатах, heartbleed, капусте, Королях и т.п., а расскажем о том, как это для выглядит для пользователя в наших дистрибутивах.

Да, подавляющее большинство VPN-сетей кстати тоже сделаны на базе open-source технологий OpenVPN[2], и там очень много гитик, как все это настраивать — сертификаты, ключи, конфиги, под винду надо ставить специальный софт, с глючными драйверами, в общем, сам в свое время писал регламенты подключения удаленным сотрудникам, ставил все это, офигевая от сложностей объяснения, ну а большинство пользователей запомнили, что «випиэн» — это какой-то рокетсайнс, и надо звать бородатых чуваков в растянутых свитерах[3], ибо само не заработает.

В GNOME же все это работает из коробки! И не нужно знать практически ничего.

Bunch of VPN files.png

Допустим, вы решили вырваться в Атлантический Интернет — арендуете за $1/месяц какой-нибудь ProstoVPN[4], вам присылают набор каких-то файлов (файл-конфигурации и всякие ключи — не глядя положите-распакуйте их куда-нибудь, где вы их не сотрете, и запустите «Настроить сеть» → «+» → «VPN» → «Импортировать из файла»

ProstoVPN-Tune-01.png ProstoVPN-Tune-02.png ProstoVPN-Tune-03.png

Тут уже выберите файл с расширением «*.ovpn» или «.config», это зависит от фантазии сисадминов или провайдера, и если есть выбор между «что-то TCP» и «что-то UDP», то, в любой такой непонятной ситуации выбирайте «что-то TCP».

ProstoVPN-Tune-04.png

Все, ничего не трогая руками, можете смело жать кнопку «Добавить».

ProstoVPN-Tune-05.png


ProstoVPN-Tune-06.png

Ура! У вас в выпадающем списке сетей появился еще один слайдер-переключатель для защищенной сети, и достаточно переключить его, как иконка сети превратится в замочек, а вы, согласно сервисам, типа http://internet.yandex.ru, смените место жительства.


Итак, все замечательно, работает из коробки, зачем же я начал писать статью… А, конечно нет. Не все. Без напильника и наших доработок конечно не обошлось.

Да, обычный VPN, когда весь трафик мы выбрасываем через выбранную точку, работает ОК, но при доступе к корпоративным частным сетям нужно несколько другое — чтобы только в корпоративную сеть шли только обращения за внутренними сайтами, всякими там *.office.supercompany.ru, а гугл-яндекс-вконтактик по-прежнему работали с вами напрямую.

Технически, это означает, что маршрут по умолчанию не должен меняться (см. первую строчку таблицы)


[stas@stas-HP2740p-grey test-openvpn]$ netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         10.168.0.1      0.0.0.0         UG        0 0          0 wlan0
10.9.0.0        10.9.0.5        255.255.255.0   UG        0 0          0 tun0
10.9.0.5        0.0.0.0         255.255.255.255 UH        0 0          0 tun0

А практически, для этого в GNOME Network Manager нужно было поставить одну галочку:

Опция «использовать это подключение только для ресурсов локальной сети» .png

Но это не работало! Галочку «использовать это подключение только для ресурсов локальной сети» ставили, но она не запоминалась, и соответственно, все работало по прежнему, через… туннель.

Пришлось разбираться и фиксить — оказалось да, глупая UI-ошибка, когда изменение этого чекбоксика формой не отслеживалось, это изменение не запоминалось, ну и так далее.


Good news, everyone!

UX Team пофиксил и это, и у нас OpenVPN в GNOME работает из коробки и как должно — просто, легко, и надежно.


А, что касается KDE — там тоже все ОК, допиливать не пришлось, и примерно также.

Тоже не надо забывать установить правильную галочку про частные сети, и про использование TCP-соединения:

Настройка OpenVPN в KDE для корпоративной частной сети - 03.png Настройка OpenVPN в KDE для корпоративной частной сети - 04.png


Здесь могла бы быть реклама вашего VPN-сервиса

Надеюсь, эта новость вас…

Ввела в экстаз ^_^6
17%
Порадовала :)25
71%
Оставила равнодушным -_-1
3%
Огорчила :(3
9%
  1. Когда я тестировал работоспособность платных DRM-каналов, см. Blog:Точка Росы/Из всех искусств для нас важнейшим является кино…, я оплачивал доступ к этим ресурсам… и так получилось, что как-то забыл отписаться от Hulu — и оно несколько месяцев доило мой карточный счет, а чтобы отписаться, пришлось пройти нетривиальный квест… :(
  2. И кровавыми слезами плачут пользователи разных малораспространенных вендорских решений
  3. Ну или тыжпрограммиста
  4. Это бесплатная реклама

[ Хронологический вид ]Комментарии

(нет элементов)

Войдите, чтобы комментировать.