Я пытался создать L2TP через IPsec в течение нескольких дней и застрял, не зная, что делать. Журнал выглядит так: . Можешь что-то из этого понять?
jaytcsd
Guest
0
12.01.2020 03:07:00
Я спрашивал о форуме только для VPN, как ты и сказал, эта информация разбросана по всему интернету. Я нашел несколько хороших видео и несколько таких, которые, похоже, просто оправдание, чтобы выложить чей-то личный музыкальный плейлист.
gidgrey
Guest
0
13.01.2020 06:21:00
Вот пошаговое видео по L2TP VPN
tikcc
Guest
0
30.07.2021 21:43:00
Привет всем, я немного поиграл с сервером L2TP на своем домашнем роутере и заставил VPN-туннель работать. Единственное, что меня немного беспокоит, так это то, что я не вижу никаких срабатываний этого правила файрвола, когда клиенты подключаются: /ip firewall filter add chain=input action=accept protocol=ipsec-esp. Я что-то упускаю, это правило вообще нужно (если да, то в каких ситуациях)? (если это имеет значение - подключающиеся клиенты были на iOS и macOS устройствах с их встроенным VPN-клиентом).
nagylzs
Guest
0
03.08.2021 06:57:00
Здравствуйте, если вы хотите принудительно использовать IPSec, то нужно установить use-ipsec=required вместо use-ipsec=yes. Например: /interface l2tp-server server set authentication=mschap2 enabled=yes ipsec-secret=jnasegfASDFgvsadfrg54 use-ipsec=required. Если вы используете клиент Windows 10, то нужно изменить настройки адаптера для соединения, затем сделайте следующее: на странице настроек VPN нажмите "Изменить параметры адаптера". Щелкните на свой VPN, чтобы его выделить. Нажмите "Изменить параметры этого соединения". Откроются свойства этого VPN. Нажмите на вкладку "Безопасность". В выпадающем списке "Шифрование данных" выберите "Требовать шифрования (разъединиться, если сервер отклонит)". Если вы хотите еще больше защитить свое соединение, вам следует изменить свои настройки IPSec по умолчанию, что-то вроде этого: /ip ipsec profile set [ find default=yes ] dh-group=modp2048 enc-algorithm=aes-256 /ip ipsec proposal set [ find default=yes ] auth-algorithms=sha256,sha1 comment="Для l2tp-server" enc-algorithms=aes-256-cbc pfs-group=modp2048. Пожалуйста, обратите внимание на следующее: сервер L2TP использует профиль/предложение IPSec по умолчанию. Они также могут использоваться другими сервисами на вашем маршрутизаторе, поэтому будьте осторожны при изменении настроек по умолчанию. Клиент L2TP в Windows 10 немного отстал и не поддерживает самые безопасные алгоритмы. Поэтому настройки, указанные выше, являются самыми безопасными, которые работают с Windows 10 (на мое скромное мнение). Вы можете обнаружить, что они не сработают с другими клиентами. Многие другие операционные системы поддерживают гораздо более безопасные алгоритмы.
nagylzs
Guest
0
03.08.2021 07:26:00
Вы можете установить allow-fast-path здесь, но в этом случае не сможете применять специальные правила брандмауэра к этим пакетам. Возможно, ваше WAN-соединение настолько медленное, что использование fast path не даст реальных преимуществ. Иногда лучше не использовать fast path. Это то, чего я не знал. Здорово! Если хотите, вы также можете использовать фиксированные удаленные IP-адреса вместо пула. /ppp secret add name=user1 password=password1 profile=ipsec_vpn_maybe_your_default remote-address=192.168.5.121 service=l2tp Это дает другой способ создания правил брандмауэра для каждого пользователя (например, фильтрация по фиксированному удаленному IP вместо имени интерфейса). L2TP-сервер в routeros может использовать стандартную конфигурацию ipsec. Это «все или ничего». Это означает, что вы либо используете настройки ipsec по умолчанию и позволяете L2TP-серверу генерировать политики для вас, либо вы можете создать свой ipsec-туннель поверх l2tp вручную. Первое легче настроить, но менее гибко. Второе более гибкое (например, вы можете создавать различные профили/алгоритмы для разных пиров), но для его настройки потребуется больше времени и усилий. Если вы решите использовать стандартный профиль и предложение ipsec, то нужно настроить его так, чтобы каждый клиент l2tp мог его использовать. Есть компромисс: некоторые клиенты не могут использовать самые безопасные алгоритмы, поддерживаемые ROS. Поэтому, прежде чем настраивать предложение/профиль ipsec по умолчанию, вам нужно знать, какие клиенты будут подключаться и какие алгоритмы они поддерживают. Список поддерживаемых алгоритмов здесь: Например, Windows 10 не поддерживает никакой хеш-алгоритм, кроме SHA1 на второй фазе. Это означает, что если вы не разрешите SHA1 для второй фазы, клиенты Windows 10 не смогут подключиться. Да, L2TP-сервер использует стандартные настройки, и вы не можете это изменить. Если вам действительно нужно тонко настроить параметры ipsec, то нужно отключить ipsec на L2TP-сервере и вручную настроить ipsec (политики, пиры, идентификации, профиль и предложение).
tikcc
Guest
0
03.08.2021 19:55:00
Спасибо, что нашли время ответить. Думаю, настройки у меня в порядке (но на всякий случай я их привел ниже). Как я уже писал раньше, соединение работает (это видно и на скриншоте). Только одна правило брандмауэра для протокола 50 (ipsec-esp) - или необходимость в нем - меня смущает. Если оно не обрабатывает никаких пакетов, зачем оно нужно? (даже с отключенным правилом для протокола 50 (ipsec-esp) соединение VPN все равно будет работать) Детали политики IPsec для активного клиентского соединения: l2tp сервер, IPSec, ppp конфигурации (экспорт без паролей) /interface l2tp-server server set authentication=mschap2 default-profile=L2TP-profile enabled=yes \ use-ipsec=required
/ip ipsec profile set [ find default=yes ] dh-group=modp2048 enc-algorithm=aes-256
/ppp secret add name=mt-vpn-01 profile=L2TP-profile service=l2tp и соответствующие правила брандмауэра в цепочке input: /ip firewall filter add action=accept chain=input dst-port=500,4500 in-interface=combo.wan \ protocol=udp add action=accept chain=input dst-port=1701 in-interface=combo.wan \ ipsec-policy=in,ipsec protocol=udp add action=accept chain=input in-interface=combo.wan protocol=ipsec-esp
nagylzs
Guest
0
04.08.2021 15:00:00
Находится ли ваш L2TP сервер или клиент L2TP за NAT? Когда участник находится за NAT, IPSec использует так называемый "NAT Traversal". Это изменяет ESP-пакеты так, чтобы они выглядели как обычные UDP-пакеты на порту 4500. В результате они могут проходить через NAT-файрволы, которые в противном случае заблокировали бы соединения IPSec-ESP. (ESP-пакеты не имеют понятия "порта", поэтому NAT на них применить невозможно.) Если ваше правило "accept ipsec-esp" не срабатывает, это может быть связано с тем, что эти пакеты приходят как UDP-пакеты на порту 4500, затем декапсулируются в ESP и дальше декапсулируются и расшифровываются. Вы можете найти детали о NAT Traversal здесь: . Вы можете проверить, используют ли ваши политики NAT-T следующим образом: "/ip ipsec active-peers print" и посмотрите на флажок "N".
tikcc
Guest
0
04.08.2021 19:09:00
Ну, ты прямо в точку попал с NAT — действительно, все тесты, которые я проводил, были из-за NAT (со стороны клиента). Я также совершенно забыл, что мобильный оператор NAT’ит все соединения на своей стороне, так что когда я пробовал напрямую с телефона через 4G, у меня не было прямого выхода, а тоже был NAT’ed. Загадка решена.