По нынешним временам всеобщей удалёнки всё, этой удалёнке помогающее, стремительно набирает популярность. И речь не только о видеоконференциях, иногда ведь хочется и нормально поработать с ресурсами офисной или домашней сети. Те, у кого удалённая работа входит в нормальный рабочий цикл, конечно, всё уже давно настроили, но многие ещё только подтягиваются, открывая дивный новый мир VPN, проброса портов, UPnP и т.п.
Проще всего тем, у кого под рукой оказался хотя бы один «белый» IP-адрес, хоть дома, хоть на работе. В большинстве приличных домашних роутеров либо NAS уже давно можно найти серверы PPTP, OpenVPN, IPSec, иногда какой-то один, иногда все. После простой настройки устанавливаем подходящий клиент и радуемся жизни. PPTP-сервер тысячу лет входит в поставку любой Windows, для IPSec, правда, потребуется Windows Server. В самостоятельном разворачивании OpenVPN-сервера или набирающего популярность WireGuard тоже нет ничего сложного.
Я и сам именно так подключаюсь к домашней сети уже лет десять. Но далеко не все провайдеры предоставляют честные IP-адреса, пусть даже динамические, а уж в рабочих сетях сплошь и рядом все сидят за NAT — и если вы не являетесь по счастливому стечению обстоятельств администратором сети, флаг в руки уговаривать его пробросить порт для столь вопиющего нарушения периметра.
На этом этапе многие ломаются и просто ставят какой-нибудь TeamViewer, AnyDesk или вообще Chrome Remote Desktop, решив, что вместо удалённого подключения к сети достаточно удалённого управления одной машиной в этой сети. С одной стороны, минимальные усилия по настройке, с другой — вот так гонять картинку своего экрана через чужие узлы — бррр, разве что для каких-то очень второстепенных систем.
Не сдавшиеся уходят сравнивать цены на VDS/VPS, чтобы поднять там сервер любимой VPN, к которому подключаются со всех своих систем уже в качестве клиентов. В минусах очень дополнительная головная боль и, как правило, ограничения на скорость и трафик.
И теперь на сцене появляется собственно герой рассказа — сервис Tailscale, основанный в прошлом году парой выходцев из Google и открытый для публичного использования весной этого года. Лично моё внимание он привлёк, когда в него перешёл Брэд Фицпатрик (Brad Fitzpatrick), известный разработкой memcached и LiveJournal и тоже проработавший в Google 13 лет, 10 последних из которых занимаясь Go (языком, а не игрой).
Идея Tailscale — организация VPN на основе mesh-сети из узлов уже упоминавшегося WireGuard. Сервер координации раздает сертификаты и статические адреса, при регистрации клиентов используются аккаунты Google либо Microsoft. Для организации прохода сквозь NAT используется несколько техник, основанных на стандартах STUN и ICE, в особо запущенных случаях используется сеть из серверов-ретрансляторов DERP (Designated Encrypted Relay for Packets), взаимодействующих поверх HTTPS.
Клиенты доступны для Windows, macOS, Linux, Android, iOS, установка и настройка просты до безобразия, исходники открыты. Есть и сторонние пакеты для всех популярных NAS. Linux-клиент после этого может обеспечить доступ ко всей сети, Windows-клиенты дают доступ только к той машине, на которой установлены.
Для личных целей можно бесплатно использовать до 100 устройств, привязанных к одному аккаунту. Хочется иметь больше устройств или использовать разные аккаунты для разных клиентов — уже придётся платить, но для личного использования выглядит вполне достаточно, а для описанной задачи взаимодействия двух систем, скрытых NAT, — практически идеально. С точки зрения безопасности — ну да, в принципе, вы пускаете в свою сеть трафик с постороннего узла. С другой стороны, это всяко не хуже упомянутых решений для удалённого доступа и явно комфортнее самопального велосипеда на VDS/VPS.
Update: На момет написания Windows-клиент работал лишь у залогиненных пользователей, Unattended Mode for Windows тогда лишь тестировался, но начиная с версии 1.2 он доступен уже всем, для включения достаточно выставить соответствующую галочку в контекстном меню.
Источник: Tailscale |
теги: vpn | предложить новость | обсудить | все отзывы (0) | [14773] |
|
|
|
|