Puncte:0

OpenVPN LAN conectat - dar fără internet pe client

drapel us

Am încercat să funcționeze de ceva timp, am un server openvpn (instalat folosind Angristan https://github.com/angristan/openvpn-install ) pe Openvz 7 vps care rulează debian 10 . Deci, majoritatea lucrurilor de configurare au fost gestionate de acesta.A creat un fișier de configurare a clientului (myClient.ovpn) pe care l-am descărcat pe client. Pe client (care este linux mint 20.3), testez conectarea folosind:

openvpn --client --config myClient.ovpn

Se conectează bine, acum pot face ping la gateway-ul vpn, adică. (de la client):

PING 10.8.0.1 (10.8.0.1) 56(84) octeți de date.
64 de octeți din 10.8.0.1: icmp_seq=1 ttl=64 time=87,9 ms
64 de octeți din 10.8.0.1: icmp_seq=2 ttl=64 time=86,6 ms
64 de octeți din 10.8.0.1: icmp_seq=3 ttl=64 time=86,6 ms
^C
--- 10.8.0.1 statistici ping ---
3 pachete transmise, 3 primite, 0% pierdere de pachete, timp 2003 ms
rtt min/avg/max/mdev = 86,551/87,041/87,946/0,640 ms

Dar nu pot da ping pe google sau orice altceva, se pare că problema de rutare/NAT nu pot găsi nicio vină cu cunoștințele mele limitate:

ping 8.8.8.8 eșuează.

Dns funcționează corect ca și cum aș folosi ping yahoo.com, apoi se rezolvă la IP-ul yahoo, dar din nou nu poate ping.

$ ping yahoo.com
PING yahoo.com (74.6.143.25) 56(84) octeți de date.

--- statistici ping pe yahoo.com ---
4 pachete transmise, 0 primite, 100% pierdere de pachete, timp 3154 ms```

Detalii server:

Versiunea Openvpn:

~# openvpn --version
OpenVPN 2.4.7 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] construit pe 28 aprilie 2021
versiuni de bibliotecă: OpenSSL 1.1.1d 10 septembrie 2019, LZO 2.10
Dezvoltat inițial de James Yonan

uname -a

~#uname -a
Linux mySerer.domainHost.com 4.19.0 #1 SMP marți 25 august 11:59:26 MSK 2020 x86_64 GNU/Linux

Notă: Este un vps bazat pe openvz 7

Configurare server:

Server
cat /etc/openvpn/server.conf
portul 2220
proto udp
dev tun
utilizator nimeni
grup fără grup
cheie-persiste
persist-tun
menține în viață 10 120
subrețea topologică
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
apăsați „dhcp-option DNS 208.67.222.222”
apăsați „dhcp-option DNS 208.67.220.220”
push "redirect-gateway def1 bypass-dhcp"
dh nici unul
curba ecdh prime256v1
tls-crypt tls-crypt.key
crl-verify crl.pem
ca ca.crt
cert server_JCJHDggypybdTuKJ.crt
cheie server_JCJHDggypybdTuKJ.key
auth SHA256
cifrul AES-128-GCM
ncp-cifre AES-128-GCM
tls-server
tls-version-min 1.2
tls-cipher TLS-ECDHE-ECDSA-WITH-AES-128-GCM-SHA256
client-config-dir /etc/openvpn/ccd
stare /var/log/openvpn/status.log
verbul 4 

Detalii de rețea după pornirea serverului openvpn:

~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue stare UNKNOWN grup implicit 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 pentru totdeauna preferred_lft pentru totdeauna
    inet6 ::1/128 scope host
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
2: venet0: <BROADCAST,POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue stare UNKNOWN grup implicit
    link/gol
    inet 127.0.0.1/32 scope host venet0
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
    inet Y.Y.Y.Y/32 brd Y.Y.Y.Y scope global venet0:0
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
    inet6 2402:x:x:x:x::dc37/80 domeniu global
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
    inet6 ::2/128 scope global
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
7: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN grup implicit qlen 500
    link/niciuna
    inet 10.8.0.1/24 brd 10.8.0.255 scope global tun0
       valid_lft pentru totdeauna preferred_lft pentru totdeauna
    inet6 fe80::505f:b97:1101:5f33/64 scope link stabil-confidențialitate
       valid_lft pentru totdeauna preferred_lft pentru totdeauna

Pe server (reguli iptables)

  iptables -t nat -L -n -v
PRERUTARE în lanț (politica ACCEPT 0 pachete, 0 octeți)
 pkts bytes target prot opt ​​in out source destination

INTRARE în lanț (politica ACCEPT 0 pachete, 0 octeți)
 pkts bytes target prot opt ​​in out source destination

POSTROUTING în lanț (politica ACCEPT 0 pachete, 0 octeți)
 pkts bytes target prot opt ​​in out source destination
    0 0 MASQUERADE toate -- * venet0 10.8.0.0/24 0.0.0.0/0

Ieșire în lanț (politica ACCEPT 0 pachete, 0 octeți)
 pkts bytes target prot opt ​​in out source destination
# Avertisment: tabele iptables-legacy sunt prezente, utilizați iptables-legacy pentru a le vedea 

Pe server, ruta IP:

 $ traseu ip
implicit dev venet0 scope link
10.8.0.0/24 dev tun0 proto kernel scope link src 10.8.0.1

Stare de redirecționare (pe server)

sysctl -a | redirecționare grep
net.ipv4.conf.all.forwarding = 1
net.ipv4.conf.all.mc_forwarding = 0
net.ipv4.conf.default.forwarding = 1
net.ipv4.conf.default.mc_forwarding = 0
net.ipv4.conf.lo.forwarding = 1
net.ipv4.conf.lo.mc_forwarding = 0
net.ipv4.conf.tun0.forwarding = 1
net.ipv4.conf.tun0.mc_forwarding = 0
net.ipv4.conf.venet0.forwarding = 1
net.ipv4.conf.venet0.mc_forwarding = 0
net.ipv6.conf.all.forwarding = 0
net.ipv6.conf.all.mc_forwarding = 0
net.ipv6.conf.default.forwarding = 0
net.ipv6.conf.default.mc_forwarding = 0
net.ipv6.conf.lo.forwarding = 0
net.ipv6.conf.lo.mc_forwarding = 0
net.ipv6.conf.tun0.forwarding = 0
net.ipv6.conf.tun0.mc_forwarding = 0
net.ipv6.conf.venet0.forwarding = 0
net.ipv6.conf.venet0.mc_forwarding = 0

Clientul se poate conecta la VPN, pot face ping la gateway-ul vpn (10.8.0.1), așa cum sa menționat deja mai sus.

ruta pe client după conectarea la VPN:

traseu după conectarea la VPN: 
ruta $
Tabelul de rutare IP kernel
Destination Gateway Genmask Flags Metric Ref Utilizare Iface
0.0.0.0 10.8.0.1 128.0.0.0 UG 0 0 0 tun0
implicit CLIENT-HOSTNAME 0.0.0.0 UG 0 0 0 eth0
10.8.0.0 0.0.0.0 255.255.255.0 U 0 0 0 tun0
128.0.0.0 10.8.0.1 128.0.0.0 UG 0 0 0 tun0
SERVER-HOSTNAME CLIENT-HOSTNAME 255.255.255.255 UGH 0 0 0 eth0
192.168.224.0 0.0.0.0 255.255.240.0 U 0 0 0 eth0

În prezent, nu am idei, deși regulile NAT par în regulă pe server, ruta clientului arată și configurația corectă. Din moment ce nu sunt în rețele, nu pot să-mi dau seama. Configurarea unui VPN simplu s-a dovedit a fi costisitoare de timp. Are ceva de-a face cu serverul bazat pe openVZ 7.

CSF funcționează corect, așa că presupun că modulele necesare pentru iptabless sunt disponibile pe server.

perl csftest.pl
Se testează ip_tables/iptable_filter...OK
Se testează ipt_LOG...OK
Se testează ipt_multiport/xt_multiport...OK
Se testează ipt_REJECT...OK
Se testează ipt_state/xt_state...OK
Se testează ipt_limit/xt_limit...OK
Se testează ipt_recent...OK
Se testează xt_connlimit...OK
Se testează ipt_owner/xt_owner...OK
Se testează iptable_nat/ipt_REDIRECT...OK
Se testează iptable_nat/ipt_DNAT...OK

L-am încercat și pe clientul Debian 10, linuxmin 20.x, același comportament, clientul se poate conecta, poate folosi VPN lan dar nu poate naviga pe internet.

Dacă mai este nevoie de ceva, vă rog să-mi spuneți.

drapel in
tcpdump interfețele pentru a vă asigura că pachetele intră pe interfața vpn de pe server, apoi verificați dacă ies din interfața de rută implicită de pe server și dacă revin sau nu. etc.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.