Я пытаюсь настроить OpenVPN-туннель для подключения двух LAN
Открытое vpn-соединение установлено и работает, но есть проблема с моей маршрутизацией или nat или чем-то еще.
Мне нужен пример того, как должна выглядеть рабочая маршрутизируемая установка openvpn на стороне сервера и клиента. В основном таблицы маршрутизации, трансляция Nat, межсетевые экраны и т. Д.
Вот что у меня работает:
Мой клиент OpenVPN может получить доступ к сети на стороне сервера, но мой сервер не может даже проверить связь с моим клиентом OpenVPN. eth0
Маршрутизация моих серверов:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0
10.8.0.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0
10.8.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.3.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0
192.168.4.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0
Маршрутизация моих клиентов:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.64.64.64 0.0.0.0 UG 0 0 0 3g-wan
10.8.0.0 10.8.0.9 255.255.255.255 UGH 0 0 0 tun0
10.8.0.9 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
10.64.64.64 0.0.0.0 255.255.255.255 UH 0 0 0 3g-wan
192.168.1.0 10.8.0.9 255.255.255.0 UG 0 0 0 tun0
192.168.3.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.4.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
Это автоматически настраивается openvpn с помощью:
push "route 192.168.1.0 255.255.255.0"
маршрут 192.168.3.0 255.255.255.0
маршрут 192.168.4.0 255.255.255.0
и команду iroute в каталоге client-config-dir
Если кто-нибудь может предложить что-то, что мне нужно проверить, я был бы очень благодарен Алекс
Редактировать 1 #
Конфигурация сервера OpenVPN:
port 1194
proto udp
dev tun
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/mom_server.crt
key /etc/openvpn/keys/mom_server.key
dh /etc/openvpn/keys/dh1024.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 192.168.1.0 255.255.255.0"
client-config-dir /etc/openvpn/ccd
client-to-client
route 192.168.3.0 255.255.255.0
push "route 192.168.3.0 255.255.255.0"
route 192.168.4.0 255.255.255.0
push "route 192.168.4.0 255.255.255.0"
keepalive 10 120
comp-lzo
user nobody
chroot /etc/openvpn
group nogroup
daemon
persist-key
persist-tun
status openvpn-status.log
verb 3
В / etc / openvpn / ccd / flexo_client
iroute 192.168.3.0 255.255.255.0
iroute 192.168.4.0 255.255.255.0
Редактировать 2 #
У меня это работает, см. Здесь решение:
OP опубликовал ответ на forum.openvpn.net
Используйте эту конфигурацию сервера:
port 1194
proto udp
dev tun
topology subnet
mode server
tls-server
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt # flexo_client,10.8.0.4
client-config-dir ccd
client-to-client
#ifconfig 10.8.0.1 255.255.255.0
route 192.168.3.0 255.255.255.0 10.8.0.4
route 192.168.4.0 255.255.255.0 10.8.0.4
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/mom_server.crt
key /etc/openvpn/keys/mom_server.key # This file should be kept secret
dh /etc/openvpn/keys/dh1024.pem
keepalive 10 120i
comp-lzo
user nobody
chroot /etc/openvpn
group nogroup
daemon
persist-key
persist-tun
status openvpn-status.log
verb 3
С этим / etc / openvpn / ccd / flexo_client
push "route 192.168.1.0 255.255.255.0 10.8.0.1"
iroute 192.168.3.0 255.255.255.0
iroute 192.168.4.0 255.255.255.0
и эта конфигурация клиента:
config openvpn 'flexo_client'
option nobind '1'
option float '1'
option client '1'
option comp_lzo '1'
option dev 'tun0'
option verb '3'
option persist_tun '1'
option persist_key '1'
option remote_cert_tls 'server'
option remote 'x.x.x.x'
option proto 'udp'
option resolv_retry 'infinite'
option ca '/etc/openvpn/ca.crt'
option cert '/etc/openvpn/flexo_client.crt'
option key '/etc/openvpn/flexo_client.key'
option ns_cert_type 'server'
option topology 'subnet'
option enable '1'
Подробнее об использовании OpenVPN и iroute можно найти на backreference.org
У меня была аналогичная проблема, когда я мог сначала подключиться с сервера к клиенту, но после некоторого времени бездействия я терял эту возможность. Я использую
статический ключ, топлогия p2p, протокол udp и TUN
Я решил проблему, добавив
keepalive 20 120
как серверу, так и клиенту. Это приведет к отправке эхо-запроса каждые 20 секунд, и предполагается, что соединение будет разорвано, если прошло 120 секунд без ответа.