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

OpenVPN туннель


0

2

Добрый день.

Сразу начну с описани я ситуации. Есть 2 офиса в 1 городе. В первом офисе сеть 192.168.2.0/24 во 2м - 192.168.4.0/24. В каждом офисе установленны по маршрутизатору на Debian. Их надо объеденить. Я поднял тунель через OpenVPN. В первом офисе сервер имеет адрес 10.10.0.1, во 2м - 10.10.0.6. Вот так выглядят таблицы маршрутизации на серверах:

1-й сервер:

nixon:~# route -n | grep -i tun0
192.168.4.0     10.10.0.6       255.255.255.0   UG    0      0        0 tun0
10.10.0.0       0.0.0.0         255.255.255.0   U     0      0        0 tun0

2-й сервер:

obama:~# route -n | grep -i tun0
10.10.0.0       0.0.0.0         255.255.255.0   U     0      0        0 tun0 
192.168.2.0     10.10.0.1       255.255.255.0   UG    0      0        0 tun0

Связь из 2го офиса в первый через тунель работает отлично. Компьютеры пингуются, RDP работает. Связь из 1го офиса во второй через тунель работает только до сервера. Т.е. я могу пинговать только хост 10.10.0.6. Хосты из сети 192.168.4.0/24 не пингуются. Нет даже ответа что хост не доступен.

nixon:~# ping 192.168.4.13
PING 192.168.4.13 (192.168.4.13) 56(84) bytes of data.
^C
--- 192.168.4.13 ping statistics ---
252 packets transmitted, 0 received, 100% packet loss, time 251003ms

Форвардинг включен на обоих серверах, на всех цепочках iptables стоит ACCEPT. Помогите разобраться, идеи у самого уже кончились.

маршруты проверь

anonymous
()

>Форвардинг включен на обоих серверах
но, кажется, плохо настроен на 2-м. iptables-save с него покажите.

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

но, кажется, плохо настроен на 2-м. iptables-save с него покажите.

obama:~# iptables-save
# Generated by iptables-save v1.4.2 on Fri Sep 24 16:52:27 2010
*nat
:PREROUTING ACCEPT [146852:12555792]
:POSTROUTING ACCEPT [1556:104221]
:OUTPUT ACCEPT [1989:138951]
-A POSTROUTING -o ppp0 -j MASQUERADE
-A POSTROUTING -o tun0 -j MASQUERADE
COMMIT
# Completed on Fri Sep 24 16:52:27 2010
EdmunDD
() автор топика
Ответ на: комментарий от anonymous

Хотелось бы увидеть конфиги openvpn с обоих концов туннеля.

1й сервер

nixon:~# cat /etc/openvpn/server.conf | grep -v '^[#;].*'
management localhost 7505
port 1194
proto udp
dev tun0
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/server.crt
key /etc/openvpn/easy-rsa/keys/server.key  # This file should be kept secret
dh /etc/openvpn/easy-rsa/keys/dh1024.pem
server 10.10.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
keepalive 10 120
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3
tun-mtu 1500
2й сервер
obama:~# cat /etc/openvpn/client.conf | grep -v '^[#;].*'
client
dev tun
proto udp
remote mss2.vpn.mgn.ru 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/obama.crt
key /etc/openvpn/easy-rsa/keys/obama.key
ns-cert-type server
comp-lzo
verb 3

EdmunDD
() автор топика

1. В такой схеме имеет смысл использовать не client-server режим, а peer-to-peer со статическим ключом
2. В client-ccd файл на первом сервере забыли добавить iroute 192.168.4.0 255.255.255.0

Nastishka ★★★★★
()
Ответ на: комментарий от EdmunDD
# EXAMPLE: Suppose the client
# having the certificate common name "Thelonious"
# also has a small subnet behind his connecting
# machine, such as 192.168.40.128/255.255.255.248.
# First, uncomment out these lines:
client-config-dir ccd
route 192.168.1.0 255.255.255.0
# Then create a file ccd/Thelonious with this line:
#   iroute 192.168.40.128 255.255.255.248
# This will allow Thelonious' private subnet to
# access the VPN.  This example will only work
# if you are routing, not bridging, i.e. you are
# using "dev tun" and "server" directives.

копай в эту сторону

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

Nastishka, anton_jugatsu

Спасибо. проблема решена.

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