Удалённый доступ к домашней сети через ZeroTier: пошаговая настройка

Нужно подключиться к домашнему NAS, камере или рабочему компьютеру, пока ты в другом городе? ZeroTier — один из самых простых способов сделать так, будто ты дома, даже когда физически далеко. Никаких пробросов портов на роутере, никаких статических IP у провайдера, никакого Headache с динамическим DNS. Разберёмся, как это работает и как всё настроить.

Что такое ZeroTier и зачем он нужен

ZeroTier — это программа, которая создаёт виртуальную локальную сеть между вашими устройствами. У каждого устройства появляется свой IP-адрес в этой виртуальной сети, и они могут общаться друг с другом так, будто сидят за одним роутером.

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

  • Подключиться к веб-интерфейсу домашнего NAS (Synology, QNAP, TrueNAS) из отеля.
  • Получить доступ IP-камере, которая висит в локальной сети.
  • Запустить SSH на домашний компьютер с ноутбука в коворкинге.
  • Сыграть с другом в игру по локалке, как в старые добрые времена.
  • Попросить родственников расшарить папку, не настраивая им проброс портов.

ZeroTier в этом плане куда проще и безопаснее, чем классический VPN типа OpenVPN или WireGuard. Не нужно возиться с сертификатами, пробрасывать порты на роутере и настраивать файрвол. В большинстве случаев достаточно установить клиент и нажать пару кнопок.

Как это работает

ZeroTier использует архитектуру, похожую на ту, что стоит за корпоративными SD-WAN решениями, но сильно упрощённую. Коротко о ключевых понятиях:

  • Network — виртуальная сеть, которую вы создаёте. В ней могут быть десятки устройств, и все они будут “видеть” друг друга.
  • Node — каждое устройство, которое подключено к ZeroTier (компьютер, телефон, NAS).
  • Controller — сервер, который управляет сетью. Можно использовать бесплатный облачный ZeroTier Central или поднять свой контроллер.
  • Flow Rules — правила файрвола на уровне сети. Можно запретить некоторым устройствам общаться с другими или ограничить доступ только к нужным портам.

Устройства взаимодействуют напрямую (P2P), когда это возможно. Если прямое соединение невозможно — ZeroTier прокидывает трафик через relay-серверы. Шифрование end-to-end есть всегда, данные в любом случае передаются в зашифрованном виде.

Под капотом ZeroTier использует собственный VPN-протокол на базе UDP. Это значит, что в большинстве случаев работает даже в сетях с ограничениями — трафик выглядит как обычный outbound-трафик, его не нужно разрешать на роутере.

Что понадобится перед настройкой

Вот минимальный список того, что должно быть:

  1. Аккаунт на my.zerotier.com — бесплатный, регистрация по email.
  2. Home Server или тот компьютер/NAS, к которому вы хотите подключаться. Он должен быть включён, когда нужно получить доступ. Желательно, чтобы он был подключён к интернету по проводу, а не по Wi-Fi — это снижает задержки.
  3. Клиент ZeroTier на устройстве, с которого будете подключаться (телефон, ноутбук).
  4. Роутер, который хотя бы не блокирует outbound-трафик (таких практически нет).

ZeroTier поддерживает Windows, macOS, Linux, Android, iOS и ещё несколько платформ. Клиент бесплатный для до 25 устройств в одной сети. Для большинства домашних задач этого с запасом.

Пошаговая настройка

Шаг 1: Создайте сеть в ZeroTier Central

  1. Зайдите на my.zerotier.com и авторизуйтесь.
  2. Нажмите Create A Network.
  3. ZeroTier сгенерирует уникальный Network ID — 16-символьную строку вроде 1c0f77d4c4a1b2c3.
  4. Перейдите в настройки созданной сети. Заполните поля:
    • Name — любое понятное имя, например “HomeNet”.
    • Access Control — выберите “Private”. Это значит, что никто, кроме вас, не сможет добавить устройство в вашу сеть без одобрения.
    • Broadcast — можно оставить по умолчанию, это нужно для некоторых старых сетевых протоколов.
    • Manage Routes — здесь можно указать подсети вашей домашней сети (например, 192.168.1.0/24), если хотите, чтобы устройства ZeroTier могли доставать до всех девайсов в вашей физической локалке. Если вам нужен доступ только к ZeroTier-участникам — этот шаг можно пропустить.

Шаг 2: Установите клиент на сервер

Допустим, у вас дома стоит Linux-сервер (Ubuntu/Debian). Установка:

curl -s https://install.zerotier.com | sudo bash

После установки нужно присоединить сервер к вашей сети:

sudo zerotier-cli join 1c0f77d4c4a1b2c3

Где 1c0f77d4c4a1b2c3 — ваш Network ID. После этой команды сервер появится в ZeroTier Central, но будет в статусе “REQUESTING ACCESS”.

На Windows и macOS установка ещё проще — скачиваете клиент с официального сайта, запускаете, и в системном трее появляется иконка. Через неё вводите Network ID и жмёте Join.

Шаг 3: Авторизуйте устройство в сети

  1. Вернитесь в ZeroTier Central, в раздел вашей сети.
  2. Вы увидите список устройств, которые запросили доступ. У каждого будет галочка в колонке Auth. Поставьте её напротив вашего сервера.
  3. При желании дайте устройству понятное имя (например, “Home Server”) и добавьте заметку.

После авторизации сервер получит свой IP в ZeroTier-сети. По умолчанию это что-то вроде 10.147.20.x. Этот IP можно зафиксировать в настройках сети, чтобы он не менялся.

Шаг 4: Настройте IP-адрес и маршрутизацию

По умолчанию ZeroTier назначает адреса из пула, который вы задали в настройках сети. Рекомендую сразу зафиксировать IP для сервера:

  1. В ZeroTier Central найдите ваше устройство.
  2. В разделе Managed IPs нажмите Add IP.
  3. Укажите адрес, например 10.147.20.1 — пусть сервер будет первым в вашей сети.

Если вы хотите, чтобы через ZeroTier можно было достучаться не только до сервера, но и до других устройств в вашей домашней сети (принтер, камера, умный дом), добавьте маршрут:

  1. В настройках сети найдите раздел Managed Routes.
  2. Добавьте маршрут: 192.168.1.0/24 via 10.147.20.1 (подставьте вашу подсеть и IP сервера).
  3. На сервере включите IP forwarding:
    sudo sysctl -w net.ipv4.ip_forward=1
  4. Чтобы настройка сохранилась после перезагрузки, добавьте в /etc/sysctl.conf:
    net.ipv4.ip_forward = 1

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

Шаг 5: Подключите клиентское устройство

Установите ZeroTier на ноутбук или телефон, которым будете пользоваться вне дома:

  1. Установите клиент (Windows, macOS, Linux, Android, iOS).
  2. Запустите его и введите ваш Network ID.
  3. Нажмите Join.
  4. Вернитесь в ZeroTier Central и авторизуйте новое устройство.
  5. Зафиксируйте IP, например 10.147.20.2.

Теперь попробуйте пропинговать сервер с клиента:

ping 10.147.20.1

Если пинги идут — поздравляю, базовая связка работает. Дальше можно пробовать подключаться к веб-интерфейсу NAS по адресу http://10.147.20.1:5000 или SSH по ssh user@10.147.20.1.

Настройка безопасности и контроля доступа

Безопасность — это то, ради чего многие вообще переходят на ZeroTier вместо проброса портов. Вот что стоит сделать сразу:

Flow Rules — файрвол на уровне сети

В ZeroTier Central есть вкладка Flow Rules. По умолчанию там стоит разрешить всё. Можно настроить более строгие правила. Например:

# Разрешить только SSH и HTTPS на сервер
accept
ipprotocol tcp and dport 22;
ipprotocol tcp and dport 443;

# Разрешить ICMP для диагностики
accept
ipprotocol icmp;

# Запретить всё остальное
drop;

Это значит, что устройства в вашей ZeroTier-сети смогут обращаться к серверу только по SSH и HTTPS. Всё остальное — заблокировано. Правила применяются ко всем устройствам в сети, поэтому если нужно дать кому-то доступ только к определённым сервисам — это лучший способ.

Ограничение доступа для разных устройств

Если вы добавили в сеть телефон родственника, чтобы он мог заходить на ваш NAS, но не имел доступа к другим сервисам — это тоже можно настроить через Flow Rules. Например:

# Разрешить доступ только от конкретного устройства к NAS по HTTPS
accept
ipprotocol tcp and dport 443
from 10.147.20.5;

# Запретить этому устройству всё остальное
drop
from 10.147.20.5;

Где 10.147.20.5 — IP телефона родственника в ZeroTier-сети.

Сравнение с другими решениями

ZeroTier — не единственный инструмент для удалённого доступа. Вот как он выглядит на фоне альтернатив:

Параметр ZeroTier WireGuard OpenVPN Проброс портов + DDNS
Сложность настройки Очень низкая Средняя Высокая Средняя
Нужен статический IP Нет Да (или DDNS) Да (или DDNS) Нет (DDNS решает)
Проброс портов на роутере Не нужен Нужен Нужен Нужен
Шифрование End-to-end End-to-end End-to-end Нет (открытый порт)
Контроль доступа Гибкий (Flow Rules) Ручной Через сертификаты Ограниченный
Платформы Все основные Все основные Все основные Зависит от сервиса
Бесплатный лимит 25 устройств Без ограничений Без ограничений Без ограничений
P2P-соединение Да Да Нет (через сервер) Нет

ZeroTier выигрывает по простоте и встроенным инструментам управления. Проигрывает, если вам нужен полный контроль над сетевым стеком или вы не хотите зависеть от стороннего облака (в таком случае можно поднять свой контроллер).

Что выбрать в зависимости от ситуации

Если у вас NAS и нужно просто заходить в веб-интерфейс из любой точки мира — ZeroTier идеален. Установили клиент на NAS (Synology и QNAP поддерживают ZeroTier нативно или через Docker), добавили ноутбук в ту же сеть, зашли по IP. Готово.

Если нужно дать доступ нескольким людям (например, семье к общему NAS) — ZeroTier снова хорош. Каждый участник получает свой IP, можно настроить права доступа через Flow Rules. Не нужно создавать учётки на сервере или раздавать пароли от VPN.

Если у вас сложная сетевая инфраструктура с несколькими подсетями — ZeroTier тоже справится, но потребуется настроить маршрутизацию. Возможно, удобнее будет WireGuard с ручной настройкой маршрутов.

Если вы не доверяете сторонним облакам — можно поднять собственный ZeroTier-контроллер на VPS или домашнем сервере. Это чуть сложнее, но полностью убирает зависимость от ZeroTier Inc.

Частые ошибки и проблемы

Устройство не пингуется после добавления в сети

Самая частая причина — устройство не авторизовано в ZeroTier Central. Проверьте, стоит ли галочка Auth напротив устройства. Вторая причина — на клиентском устройстве не поднялся интерфейс ZeroTier. Попробуйте перезапустить клиент или выполнить:

sudo zerotier-cli listnetworks

Если сеть есть в списке, но статус не OK — проверьте, не блокирует ли файрвол на устройстве трафик ZeroTier (UDP порт 9993).

Пинг есть, но сервисы недоступны

Проверьте Flow Rules — возможно, порт заблокирован. Также убедитесь, что сервис на сервере слушает на всех интерфейсах, а не только на физическом. Например, веб-интерфейс NAS может быть доступен только на 127.0.0.1 или 192.168.1.x, но не на ZeroTier-интерфейсе. Проверьте настройки самого сервиса.

Низкая скорость или высокий пинг

Если устройства не могут установить прямое P2P-соединение, трафик идёт через relay-серверы ZeroTier. Это снижает скорость и увеличивает задержку. Проверить можно командой:

sudo zerotier-cli listpeers

Если напротив вашего устройства написано RELAY вместо DIRECT — проблема в NAT или файрволе. Решение: на домашнем роутере включите UPnP или пробросьте UDP порт 9993 на сервер. В большинстве случаев ZeroTier сам договаривается с NAT, но иногда требуется ручное вмешательство.

ZeroTier конфликтует с корпоративным VPN

Если вы используете корпоративный VPN (Cisco AnyConnect, GlobalProtect и т.п.), он может перехватывать весь трафик и блокировать ZeroTier. Попробуйте изменить приоритет маршрутов или использовать ZeroTier с другым диапазоном IP, чтобы избежать конфликта подсетей.

Забыли авторизовать устройство и не можете зайти в ZeroTier Central

Если вы добавили устройство, но не авторизовали его, и при этом потеряли доступ к ZeroTier Central — не паникуйте. Авторизация происходит через веб-интерфейс, и пока устройство не авторизовано, оно просто не получит IP. Просто зайдите в Central с любого устройства и авторизуйте нужное.

Практические рекомендации

Вот несколько советов, которые я бы дал другу, который настраивает ZeroTier:

  • Фиксируйте IP-адреса для всех устройств в настройках сети. Это упрощает диагностику и настройку правил.
  • Используйте понятные имена для устройств в ZeroTier Central. Через месяц вы скажете себе спасибо, когда вспомните, что 10.147.20.7 — это телефон жены, а не ваш рабочий ноутбук.
  • Настройте Flow Rules сразу, не откладывайте. Даже если сеть маленькая — лучше сразу ограничить доступ только к нужным портам.
  • Проверяйте статус соединения командой zerotier-cli listpeers на сервере. Если видите RELAY — имеет смысл разобраться с пробросом порта.
  • Не добавляйте в сеть все подряд устройства. Чем меньше устройств в сети, тем проще контролировать доступ и тем меньше поверхность атаки.
  • Если используете Docker на сервере, учтите, что Docker создаёт свои сетевые интерфейсы и может конфликтовать с ZeroTier. Иногда проще запустить ZeroTier в контейнере с сетью host или использовать макрос zerotier/docker-network-router.

Итог

ZeroTier — это один из самых простых и безопасных способов организовать удалённый доступ к домашней сети. Бесплатный для до 25 устройств, работает на всех платформах, не требует проброса портов и статического IP. Настройка занимает 15–20 минут, а результат — полноценный доступ к домашним сервисам из любой точки мира.

Если вам нужен простой удалённый доступ к NAS, камерам или домашнему серверу — начните именно с ZeroTier. Если же задача сложнее (несколько подсетей, специфические требования к безопасности) — возможно, стоит рассмотреть WireGuard или собственный контроллер ZeroTier.

Начните с малого: создайте сеть, добавьте два устройства, проверьте связь. Всё станет понятно на практике.

Dfncfg.ru