Jump to content
Pablo

OpenVPN - недоступна подсеть за клиентом

Recommended Posts

Добрый день.

 Поднят OpenVPN- сервер - N-1010 (192.168.1.1, прошивки 2.10 все последние перепробовал), на другой стороне Асус (192.168.6.1) с прошивкой Падавана.

Туннельные IP доступны (10.8.0.1 и 10.8.0.2). На стороне клиента нет пакетов с сервера, смотрели tcpdump-ом. 

Все возможные сочетания маршрутизаций из веб-морды Кинетика проверили.

Самое интересное, что со стороны клиента все прекрасно пингуется и видится - и сервер, и подсеть за ним.

Маршруты на сервере

(config)> show ip route
================================================================================
Destination          Gateway           Interface                         Metric
================================================================================
0.0.0.0/0            0.0.0.0           PPPoE0                            0
10.1.30.0/24         0.0.0.0           Guest                             0
10.8.0.0/24          0.0.0.0           OpenVPN0                          0
83.217.192.2/32      0.0.0.0           PPPoE0                            0
83.217.193.2/32      0.0.0.0           PPPoE0                            0
89.109.200.59/32     0.0.0.0           PPPoE0                            0
89.169.0.1/32        0.0.0.0           PPPoE0                            0
93.123.222.141/32    0.0.0.0           PPPoE0                            0
94.25.168.128/32     0.0.0.0           PPPoE0                            0
178.173.115.248/32   0.0.0.0           PPPoE0                            0
192.168.1.0/24       0.0.0.0           Home                              0
192.168.6.0/24       0.0.0.0           OpenVPN0                          0
(config)> 3.74.27 show ip route

Маршруты на клиенте.

/home/root # route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.0.0.1        0.0.0.0         UG    1      0        0 weth0
10.0.0.0        *               255.255.255.0   U     0      0        0 weth0
10.8.0.0        *               255.255.255.0   U     0      0        0 tun0
127.0.0.0       *               255.0.0.0       U     0      0        0 lo
192.168.1.0     10.8.0.1        255.255.255.0   UG    0      0        0 tun0
192.168.6.0     *               255.255.255.0   U     0      0        0 br0


 

 

Конфиги.

Сервер.

port 5190
proto udp
dev tun
tls-server

server 10.8.0.0 255.255.255.0
push "route 192.168.1.0 255.255.255.0"

#client-to-client
topology subnet
comp-lzo yes
keepalive 10 120

cipher AES-256-CBC

persist-key
persist-tun

verb 3
mute 20

explicit-exit-notify 1

Клиент картинкой, т.к. там все из веб-морды делается.
 

Скажите, почему так может происходить, и как с этим бороться.

Спасибо.

Screen Shot 2018-03-03 at 01.27.17.png

Share this post


Link to post
Share on other sites

На сервере тоже гляньте - вылетают ли они в интерфейс openvpn? Поскольку если есть ответы на запросы от клиента - значит маршрутизация работает верно.

Еще не забудьте про правильный security-level.

Share this post


Link to post
Share on other sites
1 hour ago, Le ecureuil said:

На сервере тоже гляньте - вылетают ли они в интерфейс openvpn? Поскольку если есть ответы на запросы от клиента - значит маршрутизация работает верно.

Еще не забудьте про правильный security-level.

Пинги с сервера идут на 10.8.0.1 и на другой конец туннеля - 10.8.0.2. При попытке пропинговать Клиента (192.168.6.1) пинги идут на шлюз провайдера Сервера (подключение PPoE). 

Если нетрудно, то поясните, пожалуйста, как секьюрити-левел тут может присутствовать? Соединение OpenVPN поднимается же без проблем.

Edited by Pablo

Share this post


Link to post
Share on other sites

Если пинги идут на шлюз провайдера значит нет маршрута на 192.168.6.0.

Edited by dexter

Share this post


Link to post
Share on other sites
8 minutes ago, dexter said:

Если пинги идут на шлюз провайдера значит нет маршрута на 192.168.6.0.

Ну как же? Может, я  неправильно маршруты прописываю?

 

Screen Shot 2018-03-03 at 19.45.13.png

Share this post


Link to post
Share on other sites
2 minutes ago, dexter said:

192.168.6.0 за 10.8.0.2?

да

Много маршрутов некритично, оставляли только один клиент  и один маршрут - 192.168.6.1 (10.8.0.2)

Edited by Pablo

Share this post


Link to post
Share on other sites

@Pablo Нужно либо прописывать маршрут через ip клиента 192.168.6.0 через 10.8.0.2(шлюз), но в этом случае ip клиента не должен меняться.

Или читать мануал по openvpn client-config-dir. И настраивать папку с конфигами openvpn на сервере. Тогда не будет зависимости по ip , будет динамическая маршрутизация силами openvpn сервера

Edited by r13

Share this post


Link to post
Share on other sites

Пропишите маршрут, что 192.168.6.0 за 10.8.0.2, а не как у вас за 10.8.0.1.

Share this post


Link to post
Share on other sites
12 minutes ago, r13 said:

@Pablo Нужно либо прописывать маршрут через ip клиента 192.168.6.0 через 10.8.0.2 но в этом случае ip клиента не должен меняться.

Или читать мануал по openvpn client-config-dir. И настраивать папку с конфигами openvpn на сервере тогда не будет зависимости по ip , будет динамическая маршрутизация силами openvpn сервера

а можно поподробнее, как мне сделать ccd на кинетике? В линуксе я умею, а в Кинетике же через веб-морду нет такой функции.

Про маршрут через ip клиента. Смотрите, какая штука получается. В данном случае 192.168.6.1 за 10.8.0.3 (на потери пингов внимания не обращаем, там колченогая Йота):

 5a9ad93046b20_ScreenShot2018-03-03at20_13_02.png.27a03e137c48e878ac49f092e9d8dfb3.png

Screen Shot 2018-03-03 at 20.18.06.png

Screen Shot 2018-03-03 at 20.18.30.png

Share this post


Link to post
Share on other sites

Вот как у меня прописаны маршруты для сетей на обоих концах IPIP туннеля.

5a9adb5da7c46_.thumb.png.e70f225694008228e925994eb34b9f04.png

Если trasert запустить куда пойдут пакеты?

А откуда 10.8.0.3 взялся?

 

Edited by dexter

Share this post


Link to post
Share on other sites

@Pablo

Не, никакой веб морды, все руками

Раз как в линуксе знаете то все просто:

На кинетике есть маленький раздел /storage

Как раз подходит для этих целей. Создаете в нем папку, например ccd и кладете туда файлики с клиентскими настройками(iroute).

Ну и в конфиг сервера добавляете

client-to-client
client-config-dir /storage/ccd

+ настройки route / push route

Из специфики кинетика только поставить галку в веб " Получать маршруты от удаленной стороны "

Edited by r13
  • Thanks 1

Share this post


Link to post
Share on other sites
9 minutes ago, dexter said:

Вот как у меня прописаны маршруты для сетей на обоих концах IPIP туннеля.

5a9adb5da7c46_.thumb.png.e70f225694008228e925994eb34b9f04.png

Если trasert запустить куда пойдут пакеты?

А откуда 10.8.0.3 взялся?

 

10.8.0.3 - за ним сейчас сидит 192.168.6.1

MacBook-Pro:~ psychov$ ping 10.8.0.3
PING 10.8.0.3 (10.8.0.3): 56 data bytes
64 bytes from 10.8.0.3: icmp_seq=0 ttl=63 time=125.867 ms
64 bytes from 10.8.0.3: icmp_seq=1 ttl=63 time=116.168 ms
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3
Request timeout for icmp_seq 4
64 bytes from 10.8.0.3: icmp_seq=2 ttl=63 time=3274.598 ms
64 bytes from 10.8.0.3: icmp_seq=3 ttl=63 time=2278.284 ms
64 bytes from 10.8.0.3: icmp_seq=4 ttl=63 time=1276.272 ms
64 bytes from 10.8.0.3: icmp_seq=5 ttl=63 time=277.551 ms
64 bytes from 10.8.0.3: icmp_seq=6 ttl=63 time=111.146 ms
64 bytes from 10.8.0.3: icmp_seq=7 ttl=63 time=69.384 ms
^C
--- 10.8.0.3 ping statistics ---
8 packets transmitted, 8 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 69.384/941.159/3274.598/1149.986 ms
MacBook-Pro:~ psychov$ ping 192.168.6.1
PING 192.168.6.1 (192.168.6.1): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3
Request timeout for icmp_seq 4
^C
--- 192.168.6.1 ping statistics ---
6 packets transmitted, 0 packets received, 100.0% packet loss

MacBook-Pro:~ psychov$ traceroute 192.168.6.1
traceroute to 192.168.6.1 (192.168.6.1), 64 hops max, 52 byte packets
 1  192.168.1.1 (192.168.1.1)  1.188 ms  0.779 ms  0.658 ms
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * * *
^C

Share this post


Link to post
Share on other sites

У вас трасса на роутере оборвалась. С tcpdump дружите, если его из консоли запустить на нужных интерфейсах. Нужен ssh для этого будет.

Share this post


Link to post
Share on other sites
6 minutes ago, dexter said:

У вас трасса на роутере оборвалась. С tcpdump дружите, если его из консоли запустить на нужных интерфейсах. Нужен ssh для этого будет.

запускали, конец туннеля пинги ловит (10.8.0.3), но на 192.168.6.1 не приходит абсолютно ничего. Все файрволы и прочее, естественно, выключены.

Share this post


Link to post
Share on other sites

Т.е. режется фаерволом кинетика? У Ovpn интерфейса параметр security-level существует?(Я не поднимал никогда прошивочный Ovpn, а из пакетов у меня работал корректно. Отключен сейчас за ненадобностью т.к. есть туннели.)

 

Share this post


Link to post
Share on other sites
4 minutes ago, dexter said:

Т.е. режется фаерволом кинетика? У Ovpn интерфейса параметр security-level существует?(Я не поднимал никогда прошивочный Ovpn, а из пакетов у меня работал корректно. Отключен сейчас за ненадобностью т.к. есть туннели.)

 

Я не очень разбираюсь в командах Кинетика, хотя чем-то похоже на IOS цисковский.

Настраивал по мануалу с офсайта, в конце дисциплинированно сделал

interface OpenVPN0 no ip global
interface OpenVPN0 security-level private

 

system configuration save

 

Может, так не надо было?

Share this post


Link to post
Share on other sites
4 minutes ago, dexter said:

На клиенте " no isolate-private" пропишите.

легко сказать, там асус какой-то с падавановской прошивкой. 

А в Кинетике это отменить или разрешить можно как-то? А то этих клиентов сильно больше, чем один.

Есть такая возможность?

Share this post


Link to post
Share on other sites

Так, на асусе есть возможность через ssh прописать:

iptables -I INPUT -i tun0 -j ACCEPT
iptables -I FORWARD -o tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -j ACCEPT

Перед там как писать tun0 нужно узнать с каким он там номером создался.

 

Что в Кинетике отменить или разрешить хотите, не понял вопроса.

 

 

Share this post


Link to post
Share on other sites
3 minutes ago, dexter said:

Так, на асусе есть возможность через ssh прописать:

iptables -I INPUT -i tun0 -j ACCEPT
iptables -I FORWARD -o tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -j ACCEPT

Перед там как писать tun0 нужно узнать с каким он там номером создался.

 

Что в Кинетике отменить или разрешить хотите, не понял вопроса.

 

 

Я предположил, что пакеты идут с маркером private от Кинетика, а Асус их не роутит поэтому.

Можно ли сделать так, чтобы убрать эти маркеры, и Асус роутил?

Да, хочу добавить. Кинетик был куплен взамен сдохшего Асуса, на котором был поднят OpenVPN 2.2.0, все прекрасно работало.

Конфигурации клиентов в данном случае не менялись, за исключением сертификатов. Поэтому есть неиллюзорная вероятность, что вопрос не в IPTABLES

 

Edited by Pablo

Share this post


Link to post
Share on other sites

Да, еще хочу добавить, вчера пробовал на Асусе сделать вообще фулл ACCEPT, безрезультатно, на 10.8.0.3. идут пакеты, на 192.168.6.1 - нет.

Share this post


Link to post
Share on other sites

Тогда ничего не понятно.

До ОVPN клиента пакет дошел, мы его увидели на интерфейсе, но вот на br0(или, что там у асуса мы его не увидели) его уже нет, а это форвард внутри асуса должен работать.

Share this post


Link to post
Share on other sites
6 minutes ago, dexter said:

Тогда ничего не понятно.

До ОVPN клиента пакет дошел, мы его увидели на интерфейсе, но вот на br0(или, что там у асуса мы его не увидели) его уже нет, а это форвард внутри асуса должен работать.

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

/home/root # traceroute 192.168.1.11
traceroute to 192.168.1.11 (192.168.1.11), 30 hops max, 38 byte packets
 1  10.8.0.1 (10.8.0.1)  49.872 ms  44.314 ms  64.646 ms
 2  192.168.1.11 (192.168.1.11)  63.771 ms  39.631 ms  66.036 ms

 

C:\Users\psychov>tracert 192.168.1.11

Трассировка маршрута к HPMICROSERVER [192.168.1.11]
с максимальным числом прыжков 30:

  1    <1 мс    <1 мс    <1 мс  mi_zhp5 [192.168.6.1]
  2    37 ms    39 ms    43 ms  10.8.0.1
  3    89 ms    86 ms    69 ms  HPMICROSERVER [192.168.1.11]

Трассировка завершена.
                                           

Что делать, ума не приложу.

Edited by Pablo

Share this post


Link to post
Share on other sites

Я боюсь, что и CCD не поможет, тут, по ходу, вопрос не в маршрутизации.

Сверхъестественное что-то.

Share this post


Link to post
Share on other sites
31 минуту назад, Pablo сказал:

Я боюсь, что и CCD не поможет, тут, по ходу, вопрос не в маршрутизации.

Сверхъестественное что-то.

Может таки firewall на асусе?

Share this post


Link to post
Share on other sites
28 minutes ago, r13 said:

Может таки firewall на асусе?

Вообще все отключено. И он не один такой, их несколько, никуда не идет.

Share this post


Link to post
Share on other sites

Как вариант клиента OpenVPN на Win машине поднять. Тогда вопрос в IPTABLES будет снят

Share this post


Link to post
Share on other sites

Господа, я сейчас специально купил Кинетик Старт, поднял  на нем клиента, от него вижу подсеть за сервером, от сервера клиент кинетик не виден.

Возникает вопрос, это у меня кривые руки или не у меня.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...