OpenVPN'deki bir başka yönlendirme sorunu - VPN'deyken yerel makinelere erişilemiyor


3

Bu muhtemelen oldukça uzun bir yazı olacak çünkü hiçbir şeyi unutmadığımdan emin olmak istiyorum. Bu muhtemelen çok önemsiz bir konudur, ancak kurulumumda neyin yanlış olduğunu çözemiyorum.

senaryo

Geçenlerde OpenVPN çalıştıran , halihazırda ESXi'de bir VM içinde çalışan bir VPN sunucusu yapılandırdım . Kurulumu bu kılavuza dayandırdım ve her şey yolunda gözüküyor: VPN sunucuma bağlanabiliyorum (yönlendiricideki port yönlendirme ile) ve sertifika kimlik doğrulaması ile giriş yapabilirim.

Ne çalışmıyor

192.168.0.0VPN ile bağlandığımda yerel ağımdaki makinelere ( ) erişemiyorum .

Şu anda, VPN üzerinden ev ağıma başarıyla bağlandıktan sonra, LAN üzerindeki tüm makinelere erişilemiyor (ping bile yapamıyorum).

Ağ bilgisi

Ağ yapılandırması çok basittir:

  • Yerel ağım: 192.168.0.0
  • OpenVPN IP’m: 192.168.0.140
  • Benim ağ geçidi: 192.168.0.1
  • VPN ağım: 10.8.0.0
  • OpenVPN VPN IP’m: 10.8.0.1
  • Yöneltici, bağlantı noktasında yapılandırılmış bağlantı noktası yönlendirmeye sahiptir 1194

Şimdiye kadar ne denedim (yüksek seviye)

Bu sorunu denemek ve düzeltmek için üç kaynağı takip ettim:

  1. OpenVPN yönlendirme kılavuzu, özellikle varsayılan ağ geçidinde çalışmıyorsa Yönlendirme ve OpenVPN kullanma bölümü
  2. LAN'ımdaki ana makinelere bağlanmak için OpenVPN ile yönlendirmeyi nasıl ayarlayacağınız üzerine bu kısa makale
  3. Bunun çalışması için ESXi'nin nasıl yapılandırılacağına dair bir başka makale , çünkü görünüşe göre, varsayılan konfigürasyonunda, ESXi bu sorunun işe yaramasına neden olabilir.
  4. VPN sunucusunda etkin IP iletme
  5. OpenVPN'in güvenlik duvarından geçen tüm trafiği etkinleştirdi

Şimdiye kadar ne denedim (detaylı)

Bu OpenVPN server.conf:

local 192.168.0.140
topology subnet
dev tun
proto udp
port 1194

ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/vpnserver.crt
key /etc/openvpn/easy-rsa/keys/vpnserver.key
dh /etc/openvpn/easy-rsa/keys/dh1024.pem

server 10.8.0.0 255.255.255.0
# server and remote endpoints
ifconfig 10.8.0.1 10.8.0.2

# Add route to Client routing table for the OpenVPN Server
push "route 10.8.0.1 255.255.255.255"
# Add route to Client routing table for the OpenVPN Subnet
push "route 10.8.0.0 255.255.255.0"
# your local subnet
push "route 192.168.0.0 255.255.255.0"
# Set primary domain name server address to the SOHO Router
# If your router does not do DNS, you can use Google DNS 8.8.8.8
push "dhcp-option DNS 192.168.0.254"
# Override the Client default gateway by using 0.0.0.0/1 and
# 128.0.0.0/1 rather than 0.0.0.0/0. This has the benefit of
# overriding but not wiping out the original default gateway.
push "redirect-gateway def1"

client-to-client
duplicate-cn
keepalive 10 120
tls-auth /etc/openvpn/easy-rsa/keys/ta.key 0
cipher AES-128-CBC
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log 20
log /var/log/openvpn.log
verb 1

Bir örnek client.ovpn:

client
dev tun
proto udp
remote <my_router_ip> 1194
resolv-retry infinite
nobind
persist-key
persist-tun
mute-replay-warnings
ns-cert-type server
key-direction 1
cipher AES-128-CBC
comp-lzo
verb 1
mute 20

Mevcut yönlendiricim statik rotaları desteklemediğinden, maalesef yönlendirmeyi bir kez ve herkes için yapılandıramıyorum, ancak VPN ile bağlanırken erişmek istediğim her cihazda bunu yapıyorum. Mesela Plex sunucumda ( 192.168.0.110) bunu yaptım:

route add -net 10.8.0.0/24 gw 192.168.0.140

Böylece OpenVPN makinem ( 192.168.0.140) VPN ağındaki ( 10.8.0.0) yerel ağdaki ( 192.168.0.0) makinelere bağlanabilir .

Ayrıca OpenVPN sunucusunda IP yönlendirmenin etkinleştirildiğinden ve aşağıdaki satırdan gelenlerden de emin olduk /etc/sysctl.conf:

net.ipv4.ip_forward=1

Son olarak, iptablesVPN ağındaki tüm trafiğin yerel ağa erişmesine izin vermek için aşağıdaki kuralları ekledim :

# Allow traffic initiated from VPN to access LAN
iptables -I FORWARD -i tun0 -o eth0 -s 10.8.0.0/24 -m conntrack --ctstate NEW -j ACCEPT

# Allow established traffic to pass back and forth
iptables -I FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

Son olarak, vSwitchESXi'deki sanal anahtarı , bazı paketleri düşürmeyecek şekilde yapılandırdım; yukarıdaki bağlantı, varsayılan yapılandırmasında bu paketleri bırakacağını ve yerel ağdaki makinelere erişmeye çalışırken OpenVPN kullanırken sorunlara yol açabileceğini belirtir. .

Bir şeyi kaçırmadığım sürece, yapılması gereken tek şey bu olmalı. Ne yazık ki, VPN'e başarıyla bağlandıktan sonra, makineleri 192.168.0.0ağda hala pingleyemiyorum .

Yine, bu oldukça önemsiz bir şey olabilir, ancak yine de doğru cevap için bir miktar ödül sunmaya hazırım, çünkü VPN'i ilk başta kurduğum sebeplerden biri, diğer makinelerime gerek kalmadan erişebilmekti. yönlendirici üzerinde daha fazla bağlantı noktası iletin.

İstemci makine ağ bilgisi

ipconfigBağlanmak için kullandığım makinenin tam çıktısı ( uzak bir ağdan "sahte" olmak için, telefonumun 3G bağlantısını bağlıyorum ve Windows'tan Wi-Fi üzerinden bağlanıyorum):

C:\Windows\System32>ipconfig

Windows IP Configuration


Ethernet adapter Local Area Connection:

   Connection-specific DNS Suffix  . :
   Link-local IPv6 Address . . . . . : fe80::2c0e:13f0:840c:37b4%15
   IPv4 Address. . . . . . . . . . . : 10.8.0.10
   Subnet Mask . . . . . . . . . . . : 255.255.255.252
   Default Gateway . . . . . . . . . :

Wireless LAN adapter Local Area Connection* 2:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :

Wireless LAN adapter Wi-Fi:

   Connection-specific DNS Suffix  . :
   Link-local IPv6 Address . . . . . : fe80::a5e8:546c:e046:a246%4
   IPv4 Address. . . . . . . . . . . : 192.168.43.220
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 192.168.43.1

Ethernet adapter Ethernet:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :

Ethernet adapter VirtualBox Host-Only Network:

   Connection-specific DNS Suffix  . :
   Link-local IPv6 Address . . . . . : fe80::1d14:52cd:fd6a:2395%10
   IPv4 Address. . . . . . . . . . . : 192.168.56.1
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . :

Tunnel adapter isatap.{75888664-BED0-4908-8984-4DBCF9E9BDDC}:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :

Tunnel adapter isatap.{6F952140-AFCD-46E4-89E3-02CDEF869C50}:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :

Tunnel adapter isatap.{1F6CE10F-8498-4A7B-B647-FAE7422FF030}:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :

Çıktı route print:

C:\Windows\System32>route print
===========================================================================
Interface List
 15...00 ff 1f 6c e1 0f ......TAP-Windows Adapter V9
  7...12 56 f2 a5 d0 53 ......Microsoft Wi-Fi Direct Virtual Adapter
  4...80 56 f2 a5 d0 53 ......Killer Wireless-N 1202 Network Adapter
  3...80 fa 5b 00 d7 1f ......Realtek PCIe GBE Family Controller
 10...08 00 27 00 68 59 ......VirtualBox Host-Only Ethernet Adapter
  1...........................Software Loopback Interface 1
  8...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
  9...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #3
 11...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #4
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0     192.168.43.1   192.168.43.220     25
         10.8.0.4  255.255.255.252         On-link          10.8.0.6    276
         10.8.0.6  255.255.255.255         On-link          10.8.0.6    276
         10.8.0.7  255.255.255.255         On-link          10.8.0.6    276
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
     192.168.43.0    255.255.255.0         On-link    192.168.43.220    281
   192.168.43.220  255.255.255.255         On-link    192.168.43.220    281
   192.168.43.255  255.255.255.255         On-link    192.168.43.220    281
     192.168.56.0    255.255.255.0         On-link      192.168.56.1    276
     192.168.56.1  255.255.255.255         On-link      192.168.56.1    276
   192.168.56.255  255.255.255.255         On-link      192.168.56.1    276
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link      192.168.56.1    276
        224.0.0.0        240.0.0.0         On-link          10.8.0.6    276
        224.0.0.0        240.0.0.0         On-link    192.168.43.220    281
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link      192.168.56.1    276
  255.255.255.255  255.255.255.255         On-link          10.8.0.6    276
  255.255.255.255  255.255.255.255         On-link    192.168.43.220    281
===========================================================================
Persistent Routes:
  None

IPv6 Route Table
===========================================================================
Active Routes:
 If Metric Network Destination      Gateway
  1    306 ::1/128                  On-link
 10    276 fe80::/64                On-link
 15    276 fe80::/64                On-link
  4    281 fe80::/64                On-link
 10    276 fe80::1d14:52cd:fd6a:2395/128
                                    On-link
 15    276 fe80::2c0e:13f0:840c:37b4/128
                                    On-link
  4    281 fe80::a5e8:546c:e046:a246/128
                                    On-link
  1    306 ff00::/8                 On-link
 10    276 ff00::/8                 On-link
 15    276 ff00::/8                 On-link
  4    281 ff00::/8                 On-link
===========================================================================
Persistent Routes:
  None

İstemci makinenizin IP adresi nedir? Aynı ağdaysa ( 192.168.0.XXX), trafiği VPN'ye iletmez).
Ocak'ta

@heavyd VPN'e bağlandığımda normal olarak IP alıyorum 10.8.0.6. Sorunun tamamını çıktıyla güncellememe izin verin ipconfig, yararlı olabilir.
user1301428

route printVPN istemcisinin çıktısı da yararlı olabilir. Ayrıca, bir makineye ping yapmaya çalışırken ne elde edersiniz? Ve sysctl -pdeğiştirdikten sonra sunucuyu çalıştırdınız veya yeniden başlattınız /etc/sysctl.confmı?
user2313067

@ user2313067 Çıktısını ekledim ve çalıştığımı route printonaylıyorum sysctl -p. Ayrıca çalışan çift kontrol varcat /proc/sys/net/ipv4/ip_forward
user1301428

Üzgünüm, sonuna kadar okumalıydım. VPN ile yerel ağınız arasında bağlantı durumu olmadan iptables yönlendirmelerini açmanızı ve gerisini sorun giderme için ilk adım olarak kaydetmenizi öneririm. Ayrıca, yönlendiricinize bırakılan paketleri günlüğe kaydedebilir misiniz?
Mehdi,

Yanıtlar:


1

Tamam, sorun müşteri tarafındaydı. Kök nedenin ne olduğu hakkında hiçbir fikrim yok, ancak temelde müşterim bir nedenden dolayı OpenVPN sunucusundan statik yollar alamazdı. OpenVPN istemcisini kaldırıp yeniden yüklemek sorunu çözdü: /

Bu nedenle, yukarıdaki yapılandırma tamamen doğru.


-1

Bence ne soruyorsun, Split Tunneling . Windows'un yerel VPN istemcisini kullanıyorsanız, Denetim Masası-> Ağ ve İnternet-> Ağ Bağlantıları -> VPN BAĞLANTISINIZ - - Özellikler -> Ağ -> IPv4 özellikleri -> Gelişmiş -> Seçimi Kaldır "seçeneğine gidin. Uzak ağda varsayılan ağ geçidini kullan "

Başka bir yazılım kullanıyorsanız, bölünmüş tünel aramaya bakın. Sunucu tarafında da etkinleştirmeniz gerekebilir.


Bu da bazı trafiğin VPN sunucusundan geçmemesini sağlamaz mı?
user1301428

Evet! Ama istediğin bu değil mi (yerel trafik VPN'den geçmiyor).
Mehdi

Bölünmüş tünel açmanın hedefime ulaşmamı sağlayacağından eminim, ama bu şekilde yapmak istemedim. Hala tüm trafiğimin VPN sunucumdan geçmesini istiyorum, ancak farklı bir ağa da erişmek istiyorum ve işte yönlendirmenin dahil olduğu yer.
user1301428

1
Bölünmüş tünelleme, temel olarak yönlendirmenizi değiştiriyor. Lical trafiğinizi VPN üzerinden göndermek mantıklı değil, sadece tünelin diğer ucunda yerel ağ hakkında hiçbir fikriniz yok. Tüm giden trafiği hala VPN üzerinden gönderiyorsunuz.
Mehdi

"Tünelin diğer ucunda yerel ağ hakkında hiçbir fikrim yok", doğru, ve işte bir kez daha çalışmak için yönlendirmeye ihtiyacım var :)
user1301428

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.