LINUX.ORG.RU
ФорумAdmin

не выходит прокинуть нат или маршрут в vpn

 


0

1

не получается настроить доступ на удаленный роутер. Есть сервер ubunt14 на нем vpn сервер. Есть роутер openwrt , между ними поднят туннель openvpn. Роутер выходит в сеть через usb модем(он же роутер и свой нат имеет).

Удаленно мы можем зайти на роутер как по web так и по ssh Но не можем попасть на web интерфейс модема.

Ip ubunt 176.3.x.x

Ip ubunt vpn server tun0 10.0.0.1/16

Настройки nat на сервере ubunt

Iptables -t nat -A PREROUTING -p tcp -d 176.3.x.x --dport 33001 -j DNAT --to-destination 10.0.50.1:22 ssh роутера.

Iptables -t nat -A PREROUTING -p tcp -d 176.3.x.x --dport 33001 -j DNAT --to-destination 10.0.50.1:89 web роутера.

Iptables -t nat -A PREROUTING -p tcp -d 176.3.x.x --dport 28001 -j DNAT --to-destination 192.168.50.10:80 web видеорегистратор

На удаленном роутере openwrt

Tun0 10.0.1.201/16

Bridge 192.168.50.1/24

Usb-eth2 192.168.8.100/24

Адрес usb модема 192.168.8.1

Как пример 176.3.x.x:40050 и попасть через vpn на модем 192.168.8.1

подскажите что не так делаю , мне кажется как то надо указать шлюз vpn с которого нужно идти на модем.

Iptables -t nat -A PREROUTING -p tcp -d 176.3.x.x --dport 40050 -j DNAT --to-destination 192.168.8.1:80 web модема

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

Удаленно мы можем зайти на роутер как по web так и по ssh Но не можем попасть на web интерфейс модема.

Если проблема лишь доступа до web интерфейса модема, то тебе достачтоно ssh тунеля и проброса порта средствами ssh.

Вот почитай: https://www.ssh.com/ssh/tunneling/example

Т.е. ты подключаешься по ssh к роутеру и пробрасываешь 80 или 443 порт с ip адреса usb модема на какой-нибудь свой локальный порт.

И далее открыв в браузере http://127.0.0.1:твой_локальный_порт пападаешь на web интерфейс модема.

Всё можно сделать и через Putty в Windows.

anonymous ()
Ответ на: комментарий от anonymous

это как вариант. а можете пример написать , некогда не делал такое на ssh. но в идеале хотелось бы заходить по нормальному, вбил внешний ип и порт и попал на морду модема

sskiller ()
Ответ на: комментарий от sskiller

Ять, да что же ты ленивый такой?

Я тебе привёл ссылку, открой и прочти что написано.

Почему ты не можешь это сдалать?

ssh -L 8080:remote_host:80 login@ssh-server

remote_host - IP адрес USB модема.

Теперь открывай браузер и открывай страницу http://127.0.0.1:8080 - откроется web интерфейс модема, если он висит на USB порту.

anonymous ()

Если правильно понял описание топологии, то на удалённом роутере, к которому подключен usb-модем нужно делать SNAT в 192.168.8.100, иначе модем не знает откуда пришёл запрос, если вобще обрабатывает запросы не из своей сети.

mky ★★★★★ ()
Ответ на: комментарий от mky

да вот с эим и проблема он по дефолу шлет а не обратно по впн

sskiller ()
Ответ на: комментарий от sskiller

Я тебе что написал?

anonymous

Всё можно сделать и через Putty в Windows.

Объясни почему ты не можешь сходить в гугл и вбить там «putty ssh tunnel» .

И буквально первой же ссылкой ты найдёшь: https://putty.org.ru/articles/putty-ssh-tunnels.html

Прочти пожалуйста сам и разберись что нужо сделать.

Есть версия putty для Windows.

Ты что в институте не учился и не умеешь самостоятельно работать с предоставленными материалами?

anonymous ()
Ответ на: комментарий от anonymous

что то на подобие я получал когда делал трансляцию, тут явно понятно что модем шлет вроде не туда

sskiller ()
Ответ на: комментарий от sskiller

Что такое ответ в браузере?

У тебя веб открывается веб интерфейс модема на порту 8080?

Пока скриншот настройки тунеля в putty.

anonymous ()
Ответ на: комментарий от anonymous

web modem 192.168.8.1:80 в путт в туннели ставлю 8080 а адрес 192.168.8.1:80 потом перехажу на вкладку сиссии конекчусь к впс а он редиректит по впн туннелю на роутер . тоесть конект ssh до роутера.

как картинку пиложить я не знаю

sskiller ()
Ответ на: комментарий от sskiller

как картинку пиложить я не знаю

На форуме нет такой функции, поэтому заливаешь картинку на любой хостинг хранения изображений, а сюда помещаешь ссылку.

anonymous ()

Если я правильно понял задачу. Двойной dnat 1. с сервера на роутер 2. с рутера на web модема. Плюс на роутере snat 192.168.8.100

anc ★★★★★ ()
Ответ на: комментарий от sskiller

хотя доступ до модема с роутера2 по телнет есть.

Все верно вы из одной сети 192.168.8.0/24. Поэтому речь про snat и идет что бы с других адресов тоже работало.

anc ★★★★★ ()
Ответ на: комментарий от anc

проблема в том что модем не отдает ответ через виртуальную сеть 192.168.8.0/24 а шлет ответ по 10.64.64.1 root@android:/ # route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface default 10.64.64.1 0.0.0.0 UG 0 0 0 wan0 10.64.64.1 * 255.255.255.255 UH 0 0 0 wan0 192.168.8.0 * 255.255.255.0 U 0 0 0 br0

вот модем

|root@android:/ # iptables -t nat -L -n -v Chain PREROUTING (policy ACCEPT 783 packets, 47939 bytes) pkts bytes target prot opt in out source destination 0 0 DNAT icmp — wan0 * 0.0.0.0/0 100.127.224.211 icmptype 8 to:100.127.224.211 146K 17M SIP_PREROUTING all  — * * 0.0.0.0/0 0.0.0.0/0 146K 17M PORTMAP_PREROUTING all  — * * 0.0.0.0/0 0.0.0.0/0 146K 17M UPNP_PREROUTING all  — * * 0.0.0.0/0 0.0.0.0/0 103 7214 DNAT all  — wan0 * 0.0.0.0/0 0.0.0.0/0 to:192.168.8.100

Chain INPUT (policy ACCEPT 164 packets, 10680 bytes) pkts bytes target prot opt in out source destination

Chain OUTPUT (policy ACCEPT 186 packets, 22712 bytes) pkts bytes target prot opt in out source destination

Chain POSTROUTING (policy ACCEPT 28 packets, 12236 bytes) pkts bytes target prot opt in out source destination 89773 9088K SNAT all  — * wan0 0.0.0.0/0 0.0.0.0/0 to:100.127.224.211 0 0 SNAT tcp  — * * 0.0.0.0/0 10.0.1.1 tcp dpt:80 to:192.168.8.1 0 0 SNAT tcp  — * * 0.0.0.0/0 10.0.1.1 tcp dpt:47001 to:192.168.8.1 0 0 SNAT tcp  — * * 0.0.0.0/0 10.0.0.1 tcp dpt:47001 to:192.168.8.1 0 0 SNAT tcp  — * * 0.0.0.0/0 10.0.1.1 tcp dpt:47001 to:192.168.8.100 0 0 SNAT tcp  — * * 0.0.0.0/0 10.0.1.1 tcp dpt:80 to:192.168.8.100 0 0 SNAT tcp  — * * 0.0.0.0/0 10.0.0.1 tcp dpt:47001 to:192.168.8.100 0 0 SNAT tcp  — * * 0.0.0.0/0 10.0.0.1 tcp dpt:80 to:192.168.8.100

Chain PORTMAP_PREROUTING (1 references) pkts bytes target prot opt in out source destination

Chain SIP_PREROUTING (1 references) pkts bytes target prot opt in out source destination 0 0 ACCEPT udp  — wan0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:5060 0 0 ACCEPT udp  — wan0 * 0.0.0.0/0 0.0.0.0/0 udp dpts:7070:7079 0 0 REDIRECT udp  — br0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:5060 redir ports 5060

Chain UPNP_PREROUTING (1 references) pkts bytes target prot opt in out source destination

sskiller ()
Ответ на: комментарий от sskiller

проблема в том что модем не отдает ответ через виртуальную сеть 192.168.8.0/24 а шлет ответ по 10.64.64.1

Ничего не понял, откуда еще 10.64.64.1 взялось?
В случае

хотя доступ до модема с роутера2 по телнет есть

вы на какой адрес обращаетесь?

вышел брет. я таблицы в файл закинул https://yadi.sk/d/D9JUDcGyc8oNIg

Это выхлоп с какого устройства?

anc ★★★★★ ()
Ответ на: комментарий от anc

на роутере тоже прописано. да просто посмотрел мож на какое правело сработало бы.

можете написать какой именно правело?

sskiller ()
Ответ на: комментарий от sskiller

Пишу по вашей схеме (в топике ip адреса другие)

сервер ovpn

iptables -t nat -A PREROUTING -p tcp -d 176.3.x.x --dport 40050 -j DNAT --to-destination 10.0.1.1:40050

роутер openwrt
iptables -t nat -A PREROUTING -p tcp -d 10.0.1.1 --dport 40050 -j DNAT --to-destination 192.168.8.1:80
iptables -t nat -A POSTROUTING -d 192.168.8.1 -j SNAT --to-source 192.168.8.1

Это для случая когда у вас конкретный клиент ovpn получает статический адрес 10.0.1.1. Или если нет, но сеть клиента (192.168.1.0/24) роутится в ovpn можно использовать ip роутера openwrt из этой сети.

anc ★★★★★ ()
Ответ на: комментарий от anc

да у меня статика на всех клиентах впн. и все клиенты в мир ходят не через впн. впн для управления. щас буду пробовать. последнее правила такое я еще не использовал.

sskiller ()
Ответ на: комментарий от anc

не помогло. может правило , ответ тотже. iptables -t nat -A POSTROUTING -d 192.168.8.1 -j SNAT --to-source 192.168.8.1 счетчик правила 0

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

sskiller ()
Ответ на: комментарий от sskiller

Простите, не дописал нолики в конце, вот так должно быть:
iptables -t nat -A POSTROUTING -d 192.168.8.1 -j SNAT --to-source 192.168.8.100
а можно и так
iptables -t nat -A POSTROUTING -d 192.168.8.1 -j MASQUERADE

anc ★★★★★ ()
Ответ на: комментарий от sskiller

счетчик правила 0

А вот это не есть гуд, он не меняется даже если вы с openwrt обращаетесь к модему? Если да, то возможно какие-то правила в цепочке postrouting срабатывают раньше.

anc ★★★★★ ()
Ответ на: комментарий от anc

на наге вот что один ответил

Ну если вам никакой разницы нет, тогда активируйте Web Proxy на удалённом роутере или настраивайте роуты на устройстве с модемом и удалённом девайсе с которого пытаетесь зайти на модем, примеры на этом форуме уже приводили. Вы зациклились на пробросе порта, тут уже писали что

На веб морду huawei не получится зайти с помощью проброса портов по причине того, что если он видит в http запросе хост, отличающийся от 192.168.8.1, то в ответ вы получите HTTP 307 Temporary Redirect и Location: http://192.168.8.1/html/index.html?url=

тоесть проблема в модеме

sskiller ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.