Jump to content

Recommended Posts

Здравствуйте, не являюсь гуру сетевым администратором, поэтому постараюсь изложить проблему с возможно не самыми корректными терминами, прошу извинить :)

Задача: получить доступ к IP камере на даче с серым ip  из любой точки мира , по протоколу RTMP, с помощью Open VPN сервера на домашнем роутере, на белом ip.

Тех характертики:

Дача: Keenetic 4g III (2.12.B.1.0-3) с 4g модемом и серым ip-адресом

Дома: Keenetic Lite II (2.12.B.1.0-4) + KeenDNS (прямой доступ), соответственно с белым ip-адресом

Дома поднят Open VPN сервер по следующей инструкции: https://help.keenetic.com/hc/ru/articles/115005822629-OpenVPN-сервер-на-Keenetic , с использованием общего ключа. Конфиг:

Скрытый текст

#
# Sample OpenVPN configuration file for
# office using a pre-shared static key.
#
# '#' or ';' may be used to delimit comments.

# Use a dynamic tun device.
# For Linux 2.2 or non-Linux OSes,
# you may want to use an explicit
# unit number such as "tun1".
# OpenVPN also supports virtual
# ethernet "tap" devices.
dev tun

# 10.1.0.1 is our local VPN endpoint (office).
# 10.1.0.2 is our remote VPN endpoint (home).
ifconfig 10.1.0.1 10.1.0.2

cipher AES-128-CBC
# Our pre-shared static key
<secret>
-----BEGIN OpenVPN Static key V1-----

---
-----END OpenVPN Static key V1-----
</secret>
# OpenVPN 2.0 uses UDP port 1194 by default
# (official port assignment by iana.org 11/04).
# OpenVPN 1.x uses UDP port 5000 by default.
# Each OpenVPN tunnel must use
# a different port number.
# lport or rport can be used
# to denote different ports
# for local and remote.
; port 1194

# Downgrade UID and GID to
# "nobody" after initialization
# for extra security.
; user nobody
; group nobody

# If you built OpenVPN with
# LZO compression, uncomment
# out the following line.
comp-lzo

# Send a UDP ping to remote once
# every 15 seconds to keep
# stateful firewall connection
# alive.  Uncomment this
# out if you are using a stateful
# firewall.
; ping 15

# Uncomment this section for a more reliable detection when a system
# loses its connection.  For example, dial-ups or laptops that
# travel to other locations.
; ping 15
; ping-restart 45
; ping-timer-rem
; persist-tun
; persist-key

# Verbosity level.
# 0 -- quiet except for fatal errors.
# 1 -- mostly quiet, but display non-fatal network errors.
# 3 -- medium output, good for normal operation.
# 9 -- verbose, good for troubleshooting
verb 1
route 192.168.2.0 255.255.255.0

На даче, соответственно, клиент OpenVPN, который успешно соединяется: 

Скрытый текст

#
# Sample OpenVPN configuration file for
# home using a pre-shared static key.
#
# '#' or ';' may be used to delimit comments.

# Use a dynamic tun device.
# For Linux 2.2 or non-Linux OSes,
# you may want to use an explicit
# unit number such as "tun1".
# OpenVPN also supports virtual
# ethernet "tap" devices.
dev tun

# Our OpenVPN peer is the office gateway.
remote poohvlz.mykeenetic.ru

# 10.1.0.2 is our local VPN endpoint (home).
# 10.1.0.1 is our remote VPN endpoint (office).
ifconfig 10.1.0.2 10.1.0.1

cipher AES-128-CBC
# Our pre-shared static key
<secret>
-----BEGIN OpenVPN Static key V1-----
---
-----END OpenVPN Static key V1-----
</secret>
# OpenVPN 2.0 uses UDP port 1194 by default
# (official port assignment by iana.org 11/04).
# OpenVPN 1.x uses UDP port 5000 by default.
# Each OpenVPN tunnel must use
# a different port number.
# lport or rport can be used
# to denote different ports
# for local and remote.
; port 1194

# Downgrade UID and GID to
# "nobody" after initialization
# for extra security.
; user nobody
; group nobody

# If you built OpenVPN with
# LZO compression, uncomment
# out the following line.
comp-lzo

# Send a UDP ping to remote once
# every 15 seconds to keep
# stateful firewall connection
# alive.  Uncomment this
# out if you are using a stateful
# firewall.
ping 15

# Uncomment this section for a more reliable detection when a system
# loses its connection.  For example, dial-ups or laptops that
# travel to other locations.
;ping 30
;ping-restart 75
; ping-timer-rem
; persist-tun
; persist-key

# Verbosity level.
# 0 -- quiet except for fatal errors.
# 1 -- mostly quiet, but display non-fatal network errors.
# 3 -- medium output, good for normal operation.
# 9 -- verbose, good for troubleshooting
verb 1
route 192.168.1.0 255.255.255.0

Далее были объединены локальные сети следующими командами на стороне vpn-сервера:

no isolate-private
system configuration save

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

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

Далее потребовалось иметь доступ к камере на даче не только из домашней сети, но и из любой точки в интернете.

Дома делаю KeenDNS (с прямым доступом), в межсетевом экране разрешаю все протоколы, делаю переадресацию портов: вход-провайдер, выход-ip устройства на даче (см скриншот). Соединяюсь с домашним роутером по доменному имени без проблем (на стандартный порт 80), но когда пробую поменять на порт, на указанные в переадресации, то соединения нет. Напомню, что из домашней сети доступ на дачу по данным портам проходит. Также, если из домашней сети обратиться по доменному имени, указанному в KeenDNS, то соединение проходит. Соединения нету только из интернета по доменному имени и любому порту из переадресации. Также тоже самое пробовал и с доменным именем 4ого уровня, проблема не решается. Далее пробовал обратиться просто на белый ip домашнего роутера, но также нет соединения, кроме как с 80 портом. Надеюсь на помощь, спасибо.

1.jpg

Edited by Killer_Pooh

Share this post


Link to post
Share on other sites

Апну и перефразирую вопрос кратко. Как попасть в сеть к клиенту OpenVPN из интернета

Share this post


Link to post
Share on other sites

Нашёл решение своей проблемы в данной инструкции https://help.keenetic.com/hc/ru/articles/213967949-Проброс-портов-через-интернет-канал-VPN-сервера-в-удаленную-локальную-сеть-за-VPN-клиентом , но сразу возникает новый вопрос. Клиенту нельзя получать интернет через VPN сервер, но у сервера динамик ip. Какое может быть решения для проброса маршрута с динамическим Ip?

Share this post


Link to post
Share on other sites

Кто нибудь может ответить? Есть ли какие-то варианты решения проблемы (без стороннего VPN-сервера) для доступа в сеть vpn-клиента из интернета, где хосты имеют динамический ip?

Edited by Killer_Pooh

Share this post


Link to post
Share on other sites
On 7/6/2018 at 6:40 AM, Killer_Pooh said:

Кто нибудь может ответить? Есть ли какие-то варианты решения проблемы (без стороннего VPN-сервера) для доступа в сеть vpn-клиента из интернета, где хосты имеют динамический ip?

Думаю решения нет и не нужно. Ну зачем VPN серверу динамически IP -- объясните мне, ибо сам я не в состоянии представить?

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...