Puncte:0

OpenVPN: Permite accesul numai la rețeaua client specifică

drapel ro

OpenVPN: Limitarea accesului clientului la anumite clienți de destinație Am doi client OpenVPN (ovpn_dest1, ovpn_dest2) care rulează continuu și au o rețea privată (10.60.10.0/24 & 10.60.20.0/24) pe care vreau să o accesez de la doi clienți Windows OpenVPN.

Clienții Windows OpenVPN (ovpn_user1, ovpn_user2) ar trebui totuși să poată accesa numai rețelele respective (fie 10.60.10.0/24, fie 10.60.20.0/24).

Cu ovpn_user1 acces la ovpn_dest1 (10.60.10.0/24) și ovpn_user2 ar trebui să poată accesa doar ovpn_dest2 (10.60.20.0/24).

Configurația actuală utilizează directiva client-la-client din fișierul gazdă OpenVPN server.conf, care este necesar pentru a permite clienților Windows să vorbească cu ovpn_dest1/2 și cu dispozitivele lor de rețea (device1_1/device1_2/etc).

Din păcate, această directivă client-la-client înseamnă că un client Windows poate accesa și toți clienții ovpn_dest1/2, ceea ce nu este dorit din punct de vedere al securității.

Denumiri de rețea și IP:

ovpn_dest1 - 10.60.10.2
  dispozitiv1_1 - 10.60.10.3
  device1_2 - 10.60.10.4
ovpn_dest2 - 10.60.20.2
  device2_1 - 10.60.20.3

ovpn_user1 - 10.60.10.0/24
ovpn_user2 - 10.60.20.0/24

/etc/openvpn/server/server.conf:

local 188.166.226.159
portul 1194
proto udp
dev tun0
ca ca.crt
cert server.crt
cheie server.cheie
dh dh.pem
auth SHA512
tls-crypt tc.key
subrețea topologică
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"
ifconfig-pool-persist ipp.txt
apăsați „dhcp-option DNS 67.207.67.3”
apăsați „dhcp-option DNS 67.207.67.2”
menține în viață 10 120
cifrul AES-256-CBC
utilizator nimeni
grup fără grup
cheie-persiste
persist-tun
verbul 3
crl-verify crl.pem
explicit-exit-notificare
log-append /var/log/openvpn.log

de la client la client
client-config-dir ccd

/etc/openvpn/server/ccd/ovpn_dest1

traseul 10.60.10.0 255.255.255.0
iroute 10.60.10.0 255.255.255.0
apăsați „route 10.60.10.0 255.255.255.0”

/etc/openvpn/server/ccd/ovpn_dest2

traseul 10.60.20.0 255.255.255.0
iroute 10.60.20.0 255.255.255.0
apăsați „ruta 10.60.20.0 255.255.255.0”

De asemenea, mă pot conecta la toate următoarele dispozitive de pe orice client Windows OpenVPN (ovpn_user1/ovpn_user2):

http://10.8.0.2/ (ovpn_dest1)
http://10.8.0.3/ (ovpn_dest2)
http://10.60.10.2/ (ovpn_dest1)
http://10.60.20.2/ (ovpn_dest2)
10.60.10.3 (dispozitiv1_1)

Cu toate acestea, vreau să limitez accesul pentru clienții Windows, astfel încât un anumit client să poată accesa doar rețeaua ovpn_destN specifică.

Am încercat să folosesc iptables, totuși nu sunt expert în asta și se pare că directiva client-la-client din fișierul server.conf înlocuiește efectiv orice încercare în iptables de a bloca o rută între o sursă și o destinație. (Directiva „rețea client-client se va face în interiorul OpenVPN fără a ajunge la stratul gazdă”). Se pare că ar trebui să elimin „client-to-client” din server.conf pentru a limita conexiunile, dar nu am reușit să stabilesc comunicații când această linie este eliminată.

M-am gândit să folosesc mai multe instanțe OpenVPN (una pentru fiecare set de ovpn_destN, ovpn_userN), dar cu multe zeci de instanțe, acest lucru poate să nu fie ideal. Deși mai multe rețele probabil nu vor fi accesate frecvent simultan.

Care (și cum) este cea mai bună modalitate de a limita un client Windows la o anumită rețea de destinație?

drapel us
Cum își obțin clienții adresele IP?
vbscript avatar
drapel ro
@TeroKilkanen Ne pare rău, nu sunt sigur ce vrei să spui prin asta. Am un fișier ipp.txt care se completează automat când se alătură clienți noi, dar presupun că acest lucru nu este cu adevărat relevant.
Puncte:0
drapel us

Deoarece configurația dvs. conține push "redirect-gateway def1 bypass-dhcp", înseamnă că clienții OpenVPN își vor seta gateway-ul implicit la adresa serverului OpenVPN.

Aceasta înseamnă că tot traficul clientului este redirecționat către serverul OpenVPN. De aceea ccd configurațiile sunt lipsite de sens, deoarece acele rute sunt acoperite de ruta implicită.

În primul rând, asigurați-vă că clienților dvs. li se atribuie adrese IP statice. Adăugați următoarea linie la ovpn_dest1 fișier pe server ccd director pentru client:

ifconfig-push 10.8.0.2 255.255.255.0

Și respectiv să ovpn_dest2:

ifconfig-push 10.8.0.3 255.255.255.0

Apoi configurați firewall-ul pe serverul OpenVPN după cum urmează:

iptables -I FORWARD -s 10.8.0.2 -d 10.60.20.2 -j DROP
iptables -I FORWARD -s 10.8.0.3 -d 10.60.10.2 -j DROP

Primul blochează traficul de la clientul 1 la destinația 2 și al doilea de la clientul 2 la destinația 1.

vbscript avatar
drapel ro
Scuze pentru confuzia mea, dar vrei să adaugi `ifconfig-push 10.8.0.2 255.255.255.0` în fișierul de configurare .ovpn al clientului sau în fișierul server.conf al serverului? De asemenea, ar trebui să fie eliminată linia „client-la-client” din fișierul server.conf, deoarece altfel va face ca regulile iptable să nu aibă efect?
vbscript avatar
drapel ro
Doar pentru a clarifica, ovpn_user1 și ovpn_user2 sunt utilizatorii Windows care ar trebui să aibă acces la rețelele 10.60.10.0/24 și, respectiv, 10.60.20.0/24.
drapel us
Aceste linii ar trebui adăugate pe partea de server la fișierele din directorul `ccd`, deci sunt configurații specifice clientului.
vbscript avatar
drapel ro
Ar trebui să rămână directivele `push "redirect-gateway def1 bypass-dhcp"` și `client-to-client` sau ar trebui să fie ambele eliminate?
drapel us
Pusarea implicită a gateway-ului ar trebui să fie eliminată cel puțin.

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.