L2TP VPN не работает на USG ultra. Похоже, исходящие соединения не обрабатываются conntrack.

Вопрос или проблема

Я настроил L2TP VPN на своем Ubiquiti USG Ultra. Эта часть работает для доступа к локальной сети.

Где это не работает, так это выход в интернет.

У нас есть интерфейс l2tp0 – VPN, и ppp0 – интернет.

Я подключаю свой телефон, тестирую VPN на доступ к локальной сети, а затем открываю браузер.

Я пытаюсь подключиться к 8.8.4.4.

Открывая ssh на USG: в tcpdump я вижу запрос, приходящий на l2tp, и вижу, как он уходит на ppp0.

Я не вижу ничего, что возвращается.

Смотря на счетчики iptables, кажется, что пакеты проигрываются, так как не удалось соответствовать обычным правилам related/established.

Проверяя таблицы conntrack для -d 8.8.4.4, я вижу совпадение для l2tp адреса источника, но я не вижу ничего для ppp0 адреса источника – что, я предполагаю, является причиной, по которой пакеты теряются.

Так есть идеи, почему это не работает? Я пропускаю какие-то настройки conntrack/masquerade?

Отредактировал, чтобы добавить: некоторые подключения, похоже, работают и отслеживаются – но постоянно http из браузера будет неудачным.

(Я пытаюсь разобраться в том, что происходит на уровне Linux сейчас и игнорирую тот факт, что это USG Ultra – как только я пойму, что и как сломано, я постараюсь наложить решение на это) Есть идеи, что настроено неправильно?

Ответ или решение

Проблема с работой L2TP VPN на Ubiquiti USG Ultra: Обратные соединения и настройки conntrack

Введение

Установка L2TP VPN на устройство Ubiquiti USG Ultra может вызвать определенные сложности, особенно в отношении обработки обратных соединений. В данном случае, вам удалось успешно настроить доступ к локальной сети, но возникли проблемы с тем, чтобы обеспечить выход в интернет. В этой статье мы разберем возможные причины данного вопроса и предоставим рекомендации по их устранению.

Технические детали проблемы

Согласно вашему описанию, интерфейсы, с которыми вы работаете, – это l2tp0 (для VPN) и ppp0 (для выхода в интернет). При подключении к VPN вы можете получить доступ к локальной сети, но запросы на публичные IP-адреса, такие как 8.8.4.4, не возвращают ответ.

Вы наблюдали следующие моменты:

  1. Запросы из вашего браузера (к 8.8.4.4) отображаются на интерфейсе l2tp, и уходят на ppp0.
  2. Ответы на эти запросы не фиксируются, и в таблице conntrack (отслеживание соединений) отсутствуют записи о завершенных соединениях.

Эти явления указывают на то, что пакеты могут быть сбрасываемыми из-за несоответствия правилам фильтрации или настройкам NAT.

Потенциальные причины и решения

  1. Проблемы с conntrack: Определенные пакеты могут не отслеживаться должным образом из-за особенностей работы conntrack. Убедитесь, что на уровне iptables установлены соответствующие правила для отслеживания трафика. Например, правило NAT может отсутствовать для интерфейса ppp0:

    iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
  2. Правила iptables: Проверьте существующие правила iptables. Возможно, вам нужно добавить правила, которые позволят пакетом с адресами, которые находятся в сети L2TP, проходить системы обратной связи. Убедитесь, что у вас есть правила для связей с состоянием:

    iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A FORWARD -i l2tp0 -o ppp0 -j ACCEPT
  3. Настройки MTU и MSS: Проверьте настройки MTU (Maximum Transmission Unit) для интерфейсов. Иногда уменьшение значения MTU может помочь в избежании проблем с фрагментацией. Попробуйте уменьшить MTU для ppp0:

    ifconfig ppp0 mtu 1400
  4. Логи и отладка: Используйте tcpdump и другие инструменты логирования для дополнительной отладки. Выполните команду tcpdump -i ppp0 и tcpdump -i l2tp0, чтобы наблюдать за входящими и исходящими пакетами.

  5. Проверка правил маршрутизации: Убедитесь, что маршруты корректно настроены. Проверьте наличие маршрута по умолчанию для интерфейса ppp0. При необходимости добавьте его:

    ip route add default dev ppp0
  6. Смешанные протоколы и приложения: Как вы заметили, некоторые соединения могут работать (например, ping), однако HTTPS или HTTP не проходят. Попробуйте отправить http-запрос через команду curl и посмотрите, какой ответ вернется.

Заключение

Проблемы с L2TP VPN, возникающие на Ubiquiti USG Ultra, часто связаны с неправильными настройками conntrack и правилами iptables. Проверка правил фильтрации, настройки NAT и отладка соединений позволит значительно улучшить ситуацию. Если после выполнения этих шагов проблема все еще сохраняется, стоит обратиться к документации Ubiquiti или сообществу поддержки для дополнительной помощи.

Оцените материал
Добавить комментарий

Капча загружается...