OpenVPN non è il gateway predefinito per tutto il traffico

Sto provando a rendere il mio cliente inoltrato tutto il traffico attraverso un VPS che esegue OpenVPN. Come potete vedere, permetterà ai ping di entrambi i domini e gli indirizzi IP grezzi, ma non permetterà che il traffico come quello fatto attraverso l'arricciatura e il traceroute non esca di nulla. Il traffico funziona correttamente quando non è connesso alla VPN.

Tutte le informazioni sono qui: http://pastebin.com/Zpvzs7gW

  • Come utilizzare vps per connettere due macchine dietro NAT tramite openvpn senza dare accesso a VPS?
  • Rispondi alla stessa interface in arrivo con IP DNATed
  • Come provare la connessione OpenVPN dalla stessa networking?
  • Il tunneling SSH è più veloce di OpenVPN, potrebbe essere?
  • Routing IPv6 su VPN
  • Scarsa performance di OpenVPN NFS
  • Grazie.

    Funzionamento di configura grazie alla soluzione sottostante:

    Server:

    port <integer> proto udp dev tun ca ca.crt cert vpnserver.crt key vpnserver.key # This file should be kept secret dh dh4096.pem tls-auth ta.key 0 server 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "redirect-gateway autolocal" push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4" keepalive 10 120 cipher AES-256-CBC comp-lzo user nobody group nogroup persist-key persist-tun status openvpn-status.log verb 3 

    Cliente:

     client dev tun proto udp remote xxxx <port number> resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert vpnclient.crt key vpnclient.key tls-auth ta.key 1 ns-cert-type server cipher AES-256-CBC comp-lzo verb 3 

    One Solution collect form web for “OpenVPN non è il gateway predefinito per tutto il traffico”

    Esistono due parti nella soluzione:

    1. Redirect tutto il traffico nel tunnel

    La soluzione più semplice – utilizzare l'opzione --redirect-gateway autolocal OpenVPN --redirect-gateway autolocal (o metterla nel file di configuration come --redirect-gateway autolocal redirect-gateway autolocal .

    2. Gestire il traffico sul server OpenVPN

    Ora che il tunnel è su tutto il traffico entra nel tunnel e si apre alla fine del server dall'interface tun0 .

    Devi configurare due cose per farlo funzionare:

    un. Attiva l'inoltro dei pacchetti

    Per impostazione predefinita nella maggior parte delle distribuzioni, l'inoltro dei pacchetti è disabilitato, quindi i pacchetti dall'interface tunnel non lo fanno mai all'interface pubblica. È necessario abilitare l'inoltro con:

     ~ # sysctl net.ipv4.ip_forward=1 net.ipv4.ip_forward = 1 

    Una volta testato effettuare la modifica permanente in /etc/sysctl.conf

    Assicurarsi inoltre che gli iptables non bloccino il traffico inoltrato:

     ~ # iptables -I FORWARD -j ACCEPT 

    Questo è abbastanza buono per testare – in produzione vorrai rendere il firewall regole un po 'più specifico, ma questo è fuori field.

    b. NAT i pacchetti in output dal tunnel

    Con l'inoltro abilitato i pacchetti vengono inoltrati per impostazione predefinita con l'indirizzo di origine immutato, che è nel vostro caso 10.8.0.6 – tali pacchetti vengono lasciati sul gateway ISP o anche se lo fanno alla destinazione la risposta non trova mai la via di return. Questi indirizzi privati ​​non sono installabili su internet.

    La soluzione è quella di NAT il traffico di output, ovvero sostituire l'indirizzo privato 10.8.0.6 con il pubblico pubblico IP del server VPN. Ciò garantirà che le risposte raggiungano il server VPN e lì verranno riportte indietro nel tunnel.

     ~ # iptables -t nat -I POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE 

    3. Prova

    Ora prova a ping 8.8.4.4 dal tuo client VPN. Dovresti vedere una risposta. Farci sapere se non 🙂

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.