Добавить в корзинуПозвонить
Найти в Дзене

MikroTik + WireGuard: настройка за 15 минут с нуля

WireGuard на MikroTik — это один из лучших способов сделать нормальный VPN для удалённой работы. Быстрее L2TP, проще IPSec, и работает почти из коробки начиная с RouterOS 7. Я уже писал про генератор конфигов — это для тех, кто не хочет разбираться с командами. Но сегодня разберём руками, чтобы понимать что происходит. Зайдите в Winbox → System → RouterBoard. Версия RouterOS должна быть 7.x. Если у вас 6.x — сначала обновите: System → Packages → Check For Updates. В Winbox: WireGuard → кнопка «+» → вкладка WireGuard. Настройки: Нажмите «OK». Запомните (или скопируйте) Public Key — он понадобится при настройке клиента. IP → Addresses → кнопка «+»: OK. WireGuard требует, чтобы ключи генерировались на стороне клиента. На Android/iOS: приложение WireGuard → «+» → «Создать с нуля». Приложение само сгенерирует пару ключей. Скопируйте Public Key — он нужен для следующего шага. На Windows: установите WireGuard с официального сайта, нажмите «Добавить туннель» → «Создать пустой туннель». Скопиру
Оглавление

WireGuard на MikroTik — это один из лучших способов сделать нормальный VPN для удалённой работы. Быстрее L2TP, проще IPSec, и работает почти из коробки начиная с RouterOS 7.

Я уже писал про генератор конфигов — это для тех, кто не хочет разбираться с командами. Но сегодня разберём руками, чтобы понимать что происходит.

Что нужно

  • MikroTik с RouterOS 7.1 и выше (WireGuard поддерживается только в 7-й ветке)
  • Белый IP на роутере (или DynDNS)
  • Телефон или ноутбук на стороне клиента с приложением WireGuard

Шаг 1. Проверяем версию RouterOS

Зайдите в Winbox → System → RouterBoard. Версия RouterOS должна быть 7.x. Если у вас 6.x — сначала обновите: System → Packages → Check For Updates.

Шаг 2. Создаём интерфейс WireGuard на роутере

В Winbox: WireGuard → кнопка «+» → вкладка WireGuard.

Настройки:

  • Name: wg0 (или любое удобное имя)
  • Listen Port: 51820 (стандартный порт, можно любой)
  • Private Key: нажмите «Generate» — ключ сгенерируется автоматически

Нажмите «OK». Запомните (или скопируйте) Public Key — он понадобится при настройке клиента.

Шаг 3. Назначаем IP-адрес интерфейсу

IP → Addresses → кнопка «+»:

  • Address: 10.0.0.1/24 (это будет IP роутера в VPN-сети)
  • Interface: wg0

OK.

Шаг 4. Генерируем ключи для клиента

WireGuard требует, чтобы ключи генерировались на стороне клиента.

На Android/iOS: приложение WireGuard → «+» → «Создать с нуля». Приложение само сгенерирует пару ключей. Скопируйте Public Key — он нужен для следующего шага.

На Windows: установите WireGuard с официального сайта, нажмите «Добавить туннель» → «Создать пустой туннель». Скопируйте Public Key.

Шаг 5. Добавляем клиента на роутере

WireGuard → вкладка Peers → кнопка «+»:

  • Interface: wg0
  • Public Key: вставьте Public Key клиента
  • Allowed Address: 10.0.0.2/32 (IP который получит этот клиент)
  • Persistent Keepalive: 25 (чтобы соединение не разрывалось за NAT)

OK.

Шаг 6. Настраиваем клиент

Возвращаемся к клиенту и заполняем конфиг.

На Android — прямо в приложении. В разделе «Интерфейс»:

  • Addresses: 10.0.0.2/24
  • DNS: 8.8.8.8

Нажмите «Добавить пира»:

  • Публичный ключ: Public Key вашего MikroTik (Winbox → WireGuard → поле Public Key)
  • Адрес узла: ваш_внешний_ip:51820
  • Разрешённые IP-адреса: 0.0.0.0/0 (весь трафик через VPN)

На Windows — конфиг-файл wg0.conf:

[Interface]
PrivateKey = <ваш приватный ключ клиента>
Address = 10.0.0.2/24
DNS = 8.8.8.8

[Peer]
PublicKey = <публичный ключ MikroTik>
AllowedIPs = 0.0.0.0/0
Endpoint = ваш_ip:51820
PersistentKeepalive = 25

В приложении WireGuard: «Добавить туннель» → «Импортировать из файла».

Шаг 7. Открываем порт в файерволе

IP → Firewall → вкладка Filter Rules → «+»:

  • Chain: input
  • Protocol: UDP
  • Dst. Port: 51820
  • Action: accept

Поставьте это правило выше правила «drop» в списке.

Шаг 8. Проверяем

Включите VPN на клиенте. Через 5-10 секунд в Winbox → WireGuard → Peers должна появиться строка с вашим клиентом, и в колонке «Last Handshake» будет время последнего подключения.

Проверьте IP на клиенте — он должен стать вашим внешним IP MikroTik.

Что делать если не подключается

  • Нет handshake: проверьте, что порт 51820 открыт на MikroTik и у провайдера
  • Handshake есть, но трафик не идёт: добавьте маскарадинг — IP → Firewall → NAT → правило srcnat с masquerade для интерфейса wg0
  • Подключается, но только к серверу: проверьте AllowedIPs — там должно быть 0.0.0.0/0
  • Туннель работает, но сайты не открываются: скорее всего, проблема в DNS. В конфиге клиента должен быть прописан DNS-сервер (например, 8.8.8.8). Если не помогает — читайте про решение проблем с DNS в браузере.

Если остались вопросы — пишите в комментариях. Это рабочая схема, у меня уже несколько точек так поднято.