LINUX.ORG.RU
решено ФорумAdmin

openvpn + local + удаленная local

 


0

2

Добрый день.

Что имеется(скрин):

  • 1. В роутере(статический ip) проброшен порт до openvpn сервера.
  • 2. Сервер с openvpn(10.1.0.1), машина имеет две сетевые карты и адреса:
    • 2.1. 192.168.0.101 подключен к роутеру.
    • 2.2. 10.4.31.17(статика) подключен к коммутатору.
  • 3. Сервер держит на себе dhcp и несколько самописных веб сервисов, шлюз по умолчанию 10.4.31.254.
  • 4. Так же через шлюз 10.4.31.254 пользователи сети 10.4.31.* имеют доступ к сервисам которые располагаются где то в области. Например http://10.5.45.32:9000. Нужно:

    Чтобы удаленные пользователи openvpn могли получать доступ ко всем сервисам типа (http://10.5.45.32:9000) , к которым имеют доступ пользователи локальной сети.

    т.е. нужно как то подменять адрес пользователей openvpn и направлять их на шлюз 10.4.31.254.

    https://ibb.co/G03rn66

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

На данный момент у меня проблема с пробросом портов через второй нат, поэтому машина с openvpn подключена напрямую к роутеру и соответственно второй сетевой картой смотрит в lan, чтобы доступ и туда и туда был. На днях я разберусь с пробросом портов и отключю от роутера, но на данный момент так.

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

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

Может на этом и остановиться ? А не «городить огород» на пару дней? Сейчас мы вам «насоветуем», и роутинг поправить и nat использовать, а потом заново все делать будете. Это не «подкол», если схема поменяется через «пару дней», то какой смысл сейчас её обсуждать?

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

Понимате, дело в том, что когда я отключу сервер от роутера и у машинки останется только 10.4.31.17 мне все равно нужно будет как то разрешать задачу, порты я надеюсь проброшу через шлюз завтра. Для упрощения задачи, можем исключить из внимания 192.168.0.101 машинки.

Представил схему на скрине.

https://ibb.co/FnYZ9PC

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

Ну тогда отлично, один dnat на роутере, он же знает о сети 10.4.31. ? Если не знает, то «рассказать ему». А вот остальные «части» из топика с 10.5.45.* разбираем отдельно.
Upd хотя, предположим не знает, тогда dnat на самом роутере на 192.168.0.188, а уже на нем на 10.4.31.17

anc ★★★★★ ()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от anc

Предположу что в данной схеме роутер не имеет значения, т.к. у всех устройств в сети шлюз 10.4.31.254 и роутер про 10.4.31.254 не знает.

Про сервисы:

1. Сервисы из заморских сетей, до серверов на которых они крутятся созданы туннели на координаторе(10.4.31.254) клиентские машины про эти тоннели понятия не имеют.

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

1. т.е. на клиентских машинах (ubuntu) нужно прописывать static route для каждого из сервисов ( они располагаются, как правило в разных подсетях), но их фиксированное количество =< 5. ?

2. Да, -A POSTROUTING -s 10.1.1.0/8 -o eth0 -j MASQUERADE.

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

1. Достаточно «отправить» со стороны сервера ovpn
push «route....»
2.

Да, -A POSTROUTING -s 10.1.1.0/8 -o eth0 -j MASQUERADE.

Продолжаете издеваться? Не поменяли ничего, как было 10/8 так и осталось. По вашей схеме не должно сыграть роли, хоть вообще убрать -s, но как говорил «Матроскин» «Это перебор».

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

Благодарю за ваше внимание, завтра как разберусь с проблемным пробросом портов, займусь openvpn, скорее всего, возникнут некоторые уточнения в процессе настрйоки, хотя вопрос вроде как не очень сложен. Если вы не против готов вас отблагодарить.

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

хотя вопрос вроде как не очень сложен

По вашему не очень внятному изложению, он вообще «прост как пробка». Но «админской попой» чую есть грабли о которых вы не написали :) Разберемся. :)

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

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

При подключении из интернета выпадает по таймауту. Прошу посмотреть лог файервола, скорее всего что то не так прописано.

net.ipv4.ip_forward=1 поставил

Прикрепляю лог фаервола

# Generated by iptables-save v1.6.1 on Tue May 14 15:18:30 2019
*nat
:PREROUTING ACCEPT [111:10596]
:INPUT ACCEPT [3:218]
:OUTPUT ACCEPT [3:984]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.8.0.0/24 -o enp2s0 -j MASQUERADE
-A POSTROUTING -s 10.0.0.0/8 -o enp2s0 -j SNAT --to-source 10.4.31.254
COMMIT
# Completed on Tue May 14 15:18:30 2019
# Generated by iptables-save v1.6.1 on Tue May 14 15:18:30 2019
*filter
:INPUT DROP [6:188]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:ufw-after-forward - [0:0]
:ufw-after-input - [0:0]
:ufw-after-logging-forward - [0:0]
:ufw-after-logging-input - [0:0]
:ufw-after-logging-output - [0:0]
:ufw-after-output - [0:0]
:ufw-before-forward - [0:0]
:ufw-before-input - [0:0]
:ufw-before-logging-forward - [0:0]
:ufw-before-logging-input - [0:0]
:ufw-before-logging-output - [0:0]
:ufw-before-output - [0:0]
:ufw-logging-allow - [0:0]
:ufw-logging-deny - [0:0]
:ufw-not-local - [0:0]
:ufw-reject-forward - [0:0]
:ufw-reject-input - [0:0]
:ufw-reject-output - [0:0]
:ufw-skip-to-policy-forward - [0:0]
:ufw-skip-to-policy-input - [0:0]
:ufw-skip-to-policy-output - [0:0]
:ufw-track-forward - [0:0]
:ufw-track-input - [0:0]
:ufw-track-output - [0:0]
:ufw-user-forward - [0:0]
:ufw-user-input - [0:0]
:ufw-user-limit - [0:0]
:ufw-user-limit-accept - [0:0]
:ufw-user-logging-forward - [0:0]
:ufw-user-logging-input - [0:0]
:ufw-user-logging-output - [0:0]
:ufw-user-output - [0:0]
-A INPUT -j ufw-before-logging-input
-A INPUT -j ufw-before-input
-A INPUT -j ufw-after-input
-A INPUT -j ufw-after-logging-input
-A INPUT -j ufw-reject-input
-A INPUT -j ufw-track-input
-A FORWARD -j ufw-before-logging-forward
-A FORWARD -j ufw-before-forward
-A FORWARD -j ufw-after-forward
-A FORWARD -j ufw-after-logging-forward
-A FORWARD -j ufw-reject-forward
-A FORWARD -j ufw-track-forward
-A OUTPUT -j ufw-before-logging-output
-A OUTPUT -j ufw-before-output
-A OUTPUT -j ufw-after-output
-A OUTPUT -j ufw-after-logging-output
-A OUTPUT -j ufw-reject-output
-A OUTPUT -j ufw-track-output
-A ufw-after-input -p udp -m udp --dport 137 -j ufw-skip-to-policy-input
-A ufw-after-input -p udp -m udp --dport 138 -j ufw-skip-to-policy-input
-A ufw-after-input -p tcp -m tcp --dport 139 -j ufw-skip-to-policy-input
-A ufw-after-input -p tcp -m tcp --dport 445 -j ufw-skip-to-policy-input
-A ufw-after-input -p udp -m udp --dport 67 -j ufw-skip-to-policy-input
-A ufw-after-input -p udp -m udp --dport 68 -j ufw-skip-to-policy-input
-A ufw-after-input -m addrtype --dst-type BROADCAST -j ufw-skip-to-policy-input
-A ufw-after-logging-input -m limit --limit 3/min --limit-burst 10 -j LOG --log-prefix "[UFW BLOCK] "
-A ufw-before-forward -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A ufw-before-forward -p icmp -m icmp --icmp-type 3 -j ACCEPT
-A ufw-before-forward -p icmp -m icmp --icmp-type 11 -j ACCEPT
-A ufw-before-forward -p icmp -m icmp --icmp-type 12 -j ACCEPT
-A ufw-before-forward -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A ufw-before-forward -j ufw-user-forward
-A ufw-before-input -i lo -j ACCEPT
-A ufw-before-input -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A ufw-before-input -m conntrack --ctstate INVALID -j ufw-logging-deny
-A ufw-before-input -m conntrack --ctstate INVALID -j DROP
-A ufw-before-input -p icmp -m icmp --icmp-type 3 -j ACCEPT
-A ufw-before-input -p icmp -m icmp --icmp-type 11 -j ACCEPT
-A ufw-before-input -p icmp -m icmp --icmp-type 12 -j ACCEPT
-A ufw-before-input -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A ufw-before-input -p udp -m udp --sport 67 --dport 68 -j ACCEPT
-A ufw-before-input -j ufw-not-local
-A ufw-before-input -d 224.0.0.251/32 -p udp -m udp --dport 5353 -j ACCEPT
-A ufw-before-input -d 239.255.255.250/32 -p udp -m udp --dport 1900 -j ACCEPT
-A ufw-before-input -j ufw-user-input
-A ufw-before-output -o lo -j ACCEPT
-A ufw-before-output -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A ufw-before-output -j ufw-user-output
-A ufw-logging-allow -m limit --limit 3/min --limit-burst 10 -j LOG --log-prefix "[UFW ALLOW] "
-A ufw-logging-deny -m conntrack --ctstate INVALID -m limit --limit 3/min --limit-burst 10 -j RETURN
-A ufw-logging-deny -m limit --limit 3/min --limit-burst 10 -j LOG --log-prefix "[UFW BLOCK] "
-A ufw-not-local -m addrtype --dst-type LOCAL -j RETURN
-A ufw-not-local -m addrtype --dst-type MULTICAST -j RETURN
-A ufw-not-local -m addrtype --dst-type BROADCAST -j RETURN
-A ufw-not-local -m limit --limit 3/min --limit-burst 10 -j ufw-logging-deny
-A ufw-not-local -j DROP
-A ufw-skip-to-policy-forward -j ACCEPT
-A ufw-skip-to-policy-input -j DROP
-A ufw-skip-to-policy-output -j ACCEPT
-A ufw-track-forward -p tcp -m conntrack --ctstate NEW -j ACCEPT
-A ufw-track-forward -p udp -m conntrack --ctstate NEW -j ACCEPT
-A ufw-track-output -p tcp -m conntrack --ctstate NEW -j ACCEPT
-A ufw-track-output -p udp -m conntrack --ctstate NEW -j ACCEPT
-A ufw-user-input -p udp -m udp --dport 1194 -j ACCEPT
-A ufw-user-input -p tcp -m tcp --dport 22 -m comment --comment "\'dapp_OpenSSH\'" -j ACCEPT
-A ufw-user-input -p tcp -m tcp --dport 943 -j ACCEPT
-A ufw-user-input -p tcp -m tcp --dport 443 -j ACCEPT
-A ufw-user-limit -m limit --limit 3/min -j LOG --log-prefix "[UFW LIMIT BLOCK] "
-A ufw-user-limit -j REJECT --reject-with icmp-port-unreachable
-A ufw-user-limit-accept -j ACCEPT
COMMIT
# Completed on Tue May 14 15:18:30 2019
andrey7690 ()
Ответ на: комментарий от andrey7690

Конфиг openvpn

# Which local IP address should OpenVPN
# listen on? (optional)
;local a.b.c.d

port 1194

# TCP or UDP server?
;proto tcp
proto udp

;dev tap
dev tun

;dev-node MyTap


ca ca.crt
cert server.crt
key server.key  # This file should be kept secret

# Diffie hellman parameters.
# Generate your own with:
#   openssl dhparam -out dh2048.pem 2048
dh dh2048.pem

;topology subnet


server 10.8.0.0 255.255.255.0


ifconfig-pool-persist /var/log/openvpn/ipp.txt


;server-bridge 10.8.0.4 255.255.255.0 10.8.0.50 10.8.0.100


;server-bridge

;push "route 192.168.10.0 255.255.255.0"
;push "route 192.168.20.0 255.255.255.0"

;client-config-dir ccd
;route 192.168.40.128 255.255.255.248


# EXAMPLE: Suppose you want to give
# Thelonious a fixed VPN IP address of 10.9.0.1.
# First uncomment out these lines:
;client-config-dir ccd
;route 10.9.0.0 255.255.255.252
# Then add this line to ccd/Thelonious:
#   ifconfig-push 10.9.0.1 10.9.0.2

# Suppose that you want to enable different
# firewall access policies for different groups
# of clients.  There are two methods:
# (1) Run multiple OpenVPN daemons, one for each
#     group, and firewall the TUN/TAP interface
#     for each group/daemon appropriately.
# (2) (Advanced) Create a script to dynamically
#     modify the firewall in response to access
#     from different clients.  See man
#     page for more info on learn-address script.
;learn-address ./script

push "redirect-gateway def1 bypass-dhcp"


push "dhcp-option DNS 10.4.31.254"
push "dhcp-option DNS 10.4.31.254"

;client-to-client

;duplicate-cn

keepalive 10 120


tls-auth ta.key 0 # This file is secret
key-direction 0

cipher AES-256-CBC
auth SHA256

;compress lz4-v2
;push "compress lz4-v2"

;comp-lzo

# The maximum number of concurrently connected
# clients we want to allow.
;max-clients 100

# It's a good idea to reduce the OpenVPN
user nobody
group nogroup

persist-key
persist-tun

status /var/log/openvpn/openvpn-status.log

;log         /var/log/openvpn/openvpn.log
;log-append  /var/log/openvpn/openvpn.log

# Set the appropriate level of log
# file verbosity.
#
# 0 is silent, except for fatal errors
# 4 is reasonable for general usage
# 5 and 6 can help to debug connection problems
# 9 is extremely verbose
verb 3

# Silence repeating messages.  At most 20
# sequential messages of the same message
# category will be output to the log.
;mute 20

# Notify the client that when the server restarts so it
# can automatically reconnect.
explicit-exit-notify 1
[/cut]
andrey7690 ()
Ответ на: комментарий от andrey7690

Я предполагаю что там много лишнего и было бы очень хорошо, если бы мы поправили это сегодня, если вы согласны, я скину вам свои контакты данные, вы отправите свои и я сразу отправлю вам «благодарность».

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

с 10.4.31.17

Тогда «что за нафиг в этом доме?» (c)

-A POSTROUTING -s 10.0.0.0/8 -o enp2s0 -j SNAT --to-source 10.4.31.254

SNAT - замена адреса источника. Куда по вашему мнению придет ответ согласно схемы? И это только наискосок. Вообще вопрос, вам зачем ufw на 10.4.31.17 ? Какая-то принципиальность?

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

Поймите правильно, «курить» все правила ufw возможно, я помогал так другим, кому это было принципиально. Но если вам оно не нужно, зачем оно стоит? Проще начать с простого, когда нет никаких правил. И постепенно добавлять правила iptables. Тему маскарада вроде обсудили ранее.
-A POSTROUTING -s 10.8.0.0/24 -o enp2s0 -j MASQUERADE
если правильно указан интерфейс должно хватить.
1. Покажите выхлопы с 10.4.31.17

ip r a
ip r s
что бы голову меньше ломать.
2. Через роутер1 192.168.0.100 и роутер2 10.4.31.254 точно сделан проброс (двойной dnat) 1194/udp до конечного узла 10.4.31.17 ? Что на нем говорит tcpdump при попытке подключения?

anc ★★★★★ ()
Ответ на: комментарий от anc
icrb_1@icrb-1:~$ ip r s
default via 10.4.31.254 dev enp2s0 proto static metric 100 
10.4.31.0/24 dev enp2s0 proto kernel scope link src 10.4.31.17 metric 100 
10.8.0.0/24 via 10.8.0.2 dev tun0 
10.8.0.2 dev tun0 proto kernel scope link src 10.8.0.1 
169.254.0.0/16 dev enp2s0 scope link metric 1000 
icrb_1@icrb-1:~$ ip r a
Usage: ip route { list | flush } SELECTOR
       ip route save SELECTOR
       ip route restore
       ip route showdump
       ip route get [ ROUTE_GET_FLAGS ] ADDRESS
                            [ from ADDRESS iif STRING ]
                            [ oif STRING ] [ tos TOS ]
                            [ mark NUMBER ] [ vrf NAME ]
                            [ uid NUMBER ]
       ip route { add | del | change | append | replace } ROUTE
SELECTOR := [ root PREFIX ] [ match PREFIX ] [ exact PREFIX ]
            [ table TABLE_ID ] [ vrf NAME ] [ proto RTPROTO ]
            [ type TYPE ] [ scope SCOPE ]
ROUTE := NODE_SPEC [ INFO_SPEC ]
NODE_SPEC := [ TYPE ] PREFIX [ tos TOS ]
             [ table TABLE_ID ] [ proto RTPROTO ]
             [ scope SCOPE ] [ metric METRIC ]
             [ ttl-propagate { enabled | disabled } ]
INFO_SPEC := NH OPTIONS FLAGS [ nexthop NH ]...
NH := [ encap ENCAPTYPE ENCAPHDR ] [ via [ FAMILY ] ADDRESS ]
	    [ dev STRING ] [ weight NUMBER ] NHFLAGS
FAMILY := [ inet | inet6 | ipx | dnet | mpls | bridge | link ]
OPTIONS := FLAGS [ mtu NUMBER ] [ advmss NUMBER ] [ as [ to ] ADDRESS ]
           [ rtt TIME ] [ rttvar TIME ] [ reordering NUMBER ]
           [ window NUMBER ] [ cwnd NUMBER ] [ initcwnd NUMBER ]
           [ ssthresh NUMBER ] [ realms REALM ] [ src ADDRESS ]
           [ rto_min TIME ] [ hoplimit NUMBER ] [ initrwnd NUMBER ]
           [ features FEATURES ] [ quickack BOOL ] [ congctl NAME ]
           [ pref PREF ] [ expires TIME ] [ fastopen_no_cookie BOOL ]
TYPE := { unicast | local | broadcast | multicast | throw |
          unreachable | prohibit | blackhole | nat }
TABLE_ID := [ local | main | default | all | NUMBER ]
SCOPE := [ host | link | global | NUMBER ]
NHFLAGS := [ onlink | pervasive ]
RTPROTO := [ kernel | boot | static | NUMBER ]
PREF := [ low | medium | high ]
TIME := NUMBER[s|ms]
BOOL := [1|0]
FEATURES := ecn
ENCAPTYPE := [ mpls | ip | ip6 | seg6 | seg6local ]
ENCAPHDR := [ MPLSLABEL | SEG6HDR ]
SEG6HDR := [ mode SEGMODE ] segs ADDR1,ADDRi,ADDRn [hmac HMACKEYID] [cleanup]
SEGMODE := [ encap | inline ]
ROUTE_GET_FLAGS := [ fibmatch ]

Через оба роутера сделаны пробросы до openvpn и до ssh, к ssh я подключаюсь спокойно.

andrey7690 ()
Ответ на: комментарий от anc
ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:21:97:91:16:a5 brd ff:ff:ff:ff:ff:ff
    inet 10.4.31.17/24 brd 10.4.31.255 scope global noprefixroute enp2s0
       valid_lft forever preferred_lft forever
    inet6 fe80::221:97ff:fe91:16a5/64 scope link 
       valid_lft forever preferred_lft forever
5: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 100
    link/none 
    inet 10.8.0.1 peer 10.8.0.2/32 scope global tun0
       valid_lft forever preferred_lft forever
    inet6 fe80::77ec:99ac:2a76:fc90/64 scope link stable-privacy 
       valid_lft forever preferred_lft forever
-A POSTROUTING -s 10.0.0.0/8 -o enp2s0 -j SNAT --to-source 10.4.31.254

сейчас пытаюсь полностью вычистить ufw.

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

сейчас пытаюсь полностью вычистить ufw.

Для разового применения
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

iptables -F
iptables -F -t nat
iptables -F -t mangle
iptables -F -t raw
iptables -X
iptables -X -t nat
iptables -X -t mangle
iptables -X -t raw
после этого выхлоп iptables-save должен стать «мягким и шелковистым» :)

anc ★★★★★ ()
Последнее исправление: anc (всего исправлений: 2)
Ответ на: комментарий от anc
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o enp2s0 -j MASQUERADE
  GNU nano 2.9.3                                                                                delet3                                                                                          

# Generated by iptables-save v1.6.1 on Tue May 14 21:17:51 2019
*raw
:PREROUTING ACCEPT [976:79332]
:OUTPUT ACCEPT [574:66240]
COMMIT
# Completed on Tue May 14 21:17:51 2019
# Generated by iptables-save v1.6.1 on Tue May 14 21:17:51 2019
*mangle
:PREROUTING ACCEPT [999:81797]
:INPUT ACCEPT [940:79153]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [582:67000]
:POSTROUTING ACCEPT [586:67128]
COMMIT
# Completed on Tue May 14 21:17:51 2019
# Generated by iptables-save v1.6.1 on Tue May 14 21:17:51 2019
*nat
:PREROUTING ACCEPT [5:769]
:INPUT ACCEPT [4:737]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.8.0.0/24 -o enp2s0 -j MASQUERADE
COMMIT
# Completed on Tue May 14 21:17:51 2019
# Generated by iptables-save v1.6.1 on Tue May 14 21:17:51 2019
*filter
:INPUT ACCEPT [870:72172]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [565:65468]
COMMIT
# Completed on Tue May 14 21:17:51 2019

но я не запускаю, мне кажется после ufw start он добавит туда много ненужного .

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

Вот для начала проверьте в таком варианте.

мне кажется после ufw start он добавит туда много ненужного .

Конечно. Я поэтому и написал «Для разового применения». Нам нужно решить начальную задачу, а потом все остальное «прилизывать». Если бы у вас это был сервак голой попой в инет, такого-го не советовал, но тут вроде как локалка.

anc ★★★★★ ()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от anc

Вот готовый конфиг, я могу убрать все из /etc/ufw/user.rules и сделать

service ufw start
Как по другому запустить iptables я не знаю.
# Generated by iptables-save v1.6.1 on Tue May 14 21:23:47 2019
*raw
:PREROUTING ACCEPT [2146:178978]
:OUTPUT ACCEPT [1143:147906]
COMMIT
# Completed on Tue May 14 21:23:47 2019
# Generated by iptables-save v1.6.1 on Tue May 14 21:23:47 2019
*mangle
:PREROUTING ACCEPT [2169:181443]
:INPUT ACCEPT [2038:175905]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1151:148666]
:POSTROUTING ACCEPT [1162:149452]
COMMIT
# Completed on Tue May 14 21:23:47 2019
# Generated by iptables-save v1.6.1 on Tue May 14 21:23:47 2019
*nat
:PREROUTING ACCEPT [174:17805]
:INPUT ACCEPT [101:14879]
:OUTPUT ACCEPT [1:258]
:POSTROUTING ACCEPT [1:258]
-A POSTROUTING -s 10.8.0.0/24 -o enp2s0 -j MASQUERADE
COMMIT
# Completed on Tue May 14 21:23:47 2019
# Generated by iptables-save v1.6.1 on Tue May 14 21:23:47 2019
*filter
:INPUT ACCEPT [49:4017]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [16:2552]
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 1022 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 1194 -j ACCEPT
-A INPUT -p udp -m state --state NEW -m udp --dport 1194 -j ACCEPT
COMMIT
# Completed on Tue May 14 21:23:47 2019

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

Повторюсь

Вот для начала проверьте в таком варианте.

ЗЫ

Как по другому запустить iptables я не знаю.

Давайте пока об этом забудем. И будем решать проблему Y а не X

anc ★★★★★ ()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от andrey7690

«Выдохнули, вздохнули, anc ты спокоен...уммммм(ну или что там при мантрах делают)» :) Проверяем работоспособность ovpn при выхлопе который вы показали
openvpn + local + удаленная local (комментарий)

Все остальное потом.

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

Отлично, вот теперь смотрим логи клиента и сервера (при попытке подключения) и tcpdump.
Тот вариант правил iptables, точнее всего одного правила, еще не имеет никакого значения к подключению. Проблема где-то в другом, возможно в dnat

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

Полагаю, где вкралась ошибка в пробросе портов на втором шлюзе.

А может и на первом.

Проблема где-то в другом, возможно в dnat

Что похоже на правду.

Смотрите последовательно tcpdump на каждом участке (роутер1, роутер2).

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

У меня к сожалению сейчас нет доступа к первому роутеру, но на втором:

|NAT |@InternetIP|192.168.0.188 Change: 10.4.31.17 | udp: to 1194 

Завтра с 06.30 я начну разбираться с dnat и попробую найти проблему, но мои правила они по аналогии с правилом ssh написаны и должны работать и меня тревожит еще следующее в шлюзе 2 (внутренний/ 10.4.31.254) настроено много туннелей с подсетями вида 10.1.0.* и т.д. подсети вида 10.8.0.0 там нет, но я могу ошибиться, можно изменить диапазон нашего openvpn на, скажем 192.168.76.* ? мой не используемый email: server082@rambler.ru, если надумаете пишите реквизиты. Сегодня благодарю за ответы, завтра отпишусь по поводу dnat.

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

Немного ликбеза совсем по простому. Что такое DNAT, это замена [адреса]:[порта] назначения. Например, есть пакет где src 1.1.1.1:4000 dst 2.2.2.2:5000, на роутере dnat пакетов 2.2.2.2:5000 на 5.5.5.5:6000. Что получаеться:
в исходном пакете было
src 1.1.1.1:4000 dst 2.2.2.2:5000
после dnat стало
src 1.1.1.1:4000 dst 5.5.5.5:6000
Заметьте мы только поменяли в заголовке пакета адрес назначения. Ответ от 5.5.5.5:6000 на адрес 1.1.1.1 может уйти и другим маршрутом.

anc ★★★★★ ()