Как завернуть трафик от клиентов IKEv2 в интернет

Обсуждение ПО и его настройки
Forged
Сообщения: 39
Зарегистрирован: 19 июн 2020, 17:24

Всем доброго времени суток.
Имеется выделенная машина в Европке на которой установлена RouterOS, уже несколько лет настроено и успешно крутится там L2TP+IPsec.
Всё очень стабильно и хорошо, ни разу проблем не было. И всё бы хорошо, и жили они долго и счастливо, но...
Потребовалось подключить к этой VPNке мобилку на Android, а мобилка при выборе типа VPN даёт на выбор только IKEv2.
Делать нечего, пошёл настроил сервер, выпустил сертификаты, настроил клиент.
Момент истины, подключение есть, стабильное, но... Нет доступа к сайтам в интернете.
Пошёл искать, нашёл что в NAT надо добавить следующее:

Код: Выделить всё

/ip firewall nat
add action=src-nat chain=srcnat ipsec-policy=out,none out-interface=ether1 src-address=1.0.1.0/24 to-addresses=1.1.1.1
где 1.0.1.0/24 - это подсеть из которой выдаются IPшники клиентам IKEv2
1.1.1.1 - внешний IPшник выделенной машины.

Куда стоит смотреть?
p.s при подключении к VPN winbox с подключением к routeros не отваливается, что как бы говорит о том что доступ к ней есть.
Но в Address не создаётся новое подключение, как при l2TP+IPSec, хотя в IPSec в Active Peer оно появляется.


xvo
Сообщения: 4230
Зарегистрирован: 25 фев 2018, 22:41
Откуда: Москва

Policy у вас как выглядят?

А вообще, почему вы wireguard не хотите попробовать?
На CHR вообще без проблем работает уже давно.


Telegram: @thexvo
Forged
Сообщения: 39
Зарегистрирован: 19 июн 2020, 17:24

По поводу wireguard это Вы ловко придумали. Попробую именно от этого работать, потому что wireguard я уже там даже настраивал, но потом отказался от него, чтобы не заморачивать клиентов установкой ПО.


По поводу policy:
Изображение


xvo
Сообщения: 4230
Зарегистрирован: 25 фев 2018, 22:41
Откуда: Москва

Вообще говоря mode-config вроде как должен сам в NAT правила создавать.
Может в firewall'е просто как-то неявно запрещен выход наружу вот этим новым пользователям?


Telegram: @thexvo
Forged
Сообщения: 39
Зарегистрирован: 19 июн 2020, 17:24

с wireguard та же проблема, подключение между сервером и клиентом смартфоном устанавливается, но сайты со стороны клиента не открываются.
У Server WireGuard Peer поставил allowed Address: ::/0
и в Peer клиента указал Разрешённые IP-адреса:
0.0.0.0/0
Попробовал в firewall отключить все правила, в NAT оставил только правило на masquerade, эффекта нет.


xvo
Сообщения: 4230
Зарегистрирован: 25 фев 2018, 22:41
Откуда: Москва

конфиг?


Telegram: @thexvo
Forged
Сообщения: 39
Зарегистрирован: 19 июн 2020, 17:24

WireGuard Interface:
Изображение

WireGuard Peer:
Изображение

Address List:
Изображение

Клиент:
Изображение


xvo
Сообщения: 4230
Зарегистрирован: 25 фев 2018, 22:41
Откуда: Москва

Конфиг машины, говорю, покажите.

И да, кстати, на клиенте /32 адрес должен быть, а не /24.


Telegram: @thexvo
Forged
Сообщения: 39
Зарегистрирован: 19 июн 2020, 17:24

Код: Выделить всё

# apr/04/2023 13:36:41 by RouterOS 7.6
# software id = 
#
/interface ethernet
set [ find default-name=ether1 ] arp=local-proxy-arp disable-running-check=no
/interface wireguard
add listen-port=13231 mtu=1420 name=Tallin
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/ip ipsec policy group
add name=ikev2_group
/ip ipsec profile
set [ find default=yes ] enc-algorithm=aes-256,aes-192,aes-128,3des
add dh-group=modp2048,modp1536,modp1024 enc-algorithm=aes-256,aes-128,3des \
    hash-algorithm=sha256 name=IKEv2_prof
/ip ipsec peer
add exchange-mode=ike2 local-address=185.***.***.*** name=ikev2_peer passive=\
    yes profile=IKEv2_prof
/ip ipsec proposal
set [ find default=yes ] enc-algorithms=\
    aes-256-cbc,aes-192-cbc,aes-128-cbc,3des
add auth-algorithms=sha512,sha256,sha1 enc-algorithms="aes-256-cbc,aes-256-ctr\
    ,aes-256-gcm,aes-192-ctr,aes-192-gcm,aes-128-cbc,aes-128-ctr,aes-128-gcm" \
    lifetime=1h name=IKEv2_prop pfs-group=none
/ip pool
add name=vpn_GP1 ranges=172.16.28.10-172.16.28.150
add name=vpn_GP2 ranges=172.16.29.10-172.16.29.150
add name=vpn_GP3 ranges=172.16.30.10-172.16.30.150
add name=vpn_GP4 ranges=172.16.40.10-172.16.40.150
add name=IKEv2_pool ranges=172.16.31.10-172.16.31.150
/ip ipsec mode-config
add address-pool=IKEv2_pool address-prefix-length=32 name=IKEv2-modeconf \
    split-include=0.0.0.0/0 static-dns=172.16.31.1 system-dns=no
/ppp profile
add local-address=172.16.28.1 name=l2tp_GP1 remote-address=vpn_GP1
add local-address=172.16.29.1 name=l2tp_GP2 remote-address=vpn_GP2
add local-address=172.16.30.1 name=l2tp_GP3 remote-address=vpn_GP3 \
    use-encryption=yes use-ipv6=no
add local-address=172.16.40.1 name=l2tp_GP4 remote-address=vpn_GP4
/interface l2tp-server server
set allow-fast-path=yes caller-id-type=number default-profile=l2tp_Server \
    enabled=yes l2tpv3-ether-interface-list=all max-mru=2000 max-mtu=2000 \
    use-ipsec=required
/interface pptp-server server
# PPTP connections are considered unsafe, it is suggested to use a more modern VPN protocol instead
set enabled=yes
/interface wireguard peers
add allowed-address=::/0 interface=Tallin persistent-keepalive=10s \
    public-key="ttt92qjzBpzi4***************************************"
/ip address
add address=185.***.***.***/24 interface=ether1 network=185.***.***.0
add address=172.16.31.1/24 interface=Tallin network=172.16.31.0
/ip dhcp-client
add interface=ether1
/ip dns
set servers=8.8.8.8,8.8.4.4
/ip firewall filter
add action=accept chain=input comment="Access L2TP" disabled=yes dst-port=\
    1701,500,4500 protocol=udp
add action=accept chain=input disabled=yes protocol=ipsec-esp
add action=accept chain=input disabled=yes protocol=ipsec-ah
add action=accept chain=input comment=WireGuard disabled=yes dst-port=13231 \
    in-interface=Tallin protocol=udp
add action=drop chain=input comment="drop icmp \"ping\" from Ethernet" \
    disabled=yes in-interface=all-ethernet protocol=icmp
/ip firewall nat
add action=masquerade chain=srcnat out-interface=ether1
add action=dst-nat chain=dstnat disabled=yes dst-port=80 in-interface=ether1 \
    protocol=tcp to-addresses=95.***.***.*** to-ports=2080
add action=dst-nat chain=dstnat disabled=yes dst-port=443 in-interface=ether1 \
    protocol=tcp to-addresses=95.***.***.*** to-ports=2443
/ip firewall service-port
set sip disabled=yes
/ip ipsec identity
add auth-method=digital-signature certificate=Server generate-policy=\
    port-strict match-by=certificate mode-config=IKEv2-modeconf peer=\
    ikev2_peer policy-template-group=ikev2_group remote-certificate=User1102 \
    remote-id=user-fqdn:User1102
/ip ipsec policy
add dst-address=172.16.31.0/24 group=ikev2_group proposal=IKEv2_prop \
    src-address=0.0.0.0/0 template=yes
/ip route
add gateway=185.***.***.1
/ip service
set telnet disabled=yes
set ftp disabled=yes
set www disabled=yes
set ssh disabled=yes
set api disabled=yes
set api-ssl disabled=yes
/ppp secret
*Тут учётки L2TP+IPSec
/system clock
set time-zone-name=Europe/Minsk
/system ntp client
set enabled=yes
/system ntp client servers
add address=0.ru.pool.ntp.org
add address=1.ru.pool.ntp.org
/system package update
set channel=testing


xvo
Сообщения: 4230
Зарегистрирован: 25 фев 2018, 22:41
Откуда: Москва

Ничего такого не вижу, кроме того, что вы не убрав хвосты от IKEv2 продолжаете использовать те же адреса для клиентов WG.


Telegram: @thexvo
Ответить