Usuaris registratsNavegacióEnviaments recents de blog
Qui està connectatActualment hi ha 0 usuaris i 0 guests connectats.
|
Com acceidr a una LAN des d'internet usant una VPN (OpenVPN HowTo)En aquest article explicaré les meves experiències per configurar un servidor OpenVPN per permetre accés a una LAN a múltiples clients connectats a Internet (road warriors). En realitat reedito l'entrada al meu wiki personal, perquè crec que és un tema interessant i hi ha poca documentació en català de OpenVPN. ** Disclaimer ** Intro Un altre avantatge, en el meu cas és que el servidor OpenVPN fa de gateway de la LAN i per tant no s'ha de tocar cap configuració de cap mà quina de la LAN per tal que puguin usar la VPN. L'escenari és el següent:
Esquemà ticament tenim:
+------------------+
| |
| PRIVATE LAN |
| WORKSTATIONS + |
+--------------+ | FILE SERVER | 192.168.0.x
| | | |
| ROAD | +------------------+
| WARRIOR | ^
| (CLIENT) | |
| | | 192.168.0.100
+--------------+ +--------------+
| VPN TUNNEL IP | |
| (172.16.0.x) | OpenVPN | VPN TUNNEL IP
| | SERVER | (172.16.0.1)
+--------------+ | |
| | +--------------+
| INTERNET | ^ 10.0.0.2
| | |
+--------------+ | (DMZ)
| |
| SERVER PUBLIC IP +--------------+
+------------------------>| ROUTER |
+--------------+
Instal·lació OpenVPN Ull! Cal mirar si tenim la interfÃcie que necessitem (en el nostre cas tun) a /dev/net, si no la creem: NOTA: L'última ordre és per carregar el mòdul, debian ja té l'alias fet a /etc/modutils/aliases: alias char-major-10-200 tun) Configuració Inicial (client-servidor amb clau està tica) Servidor Hem d'assegurar-nos que els paquets poden arribar a la interfÃcie que els correspon. Hem d'obrir el port 1194 del router cap al servidor, i assegurar-nos que no el tenim "firewallejat". En el meu cas tinc l'iptables molt restrictiu: he hagut de donar permÃs als paquets udp al port 1194 i a l'ÃnterfÃcie tun0 Client Ara cal crear la clau amb la què es comunicaran el client i el servidor. En aquest primer exemple, la cosa és simple. Es tracta d'una clau simètrica compartida per ambdós extrems. Creem la clau al servidor: Ara copiem la clau al client (a C:\Archivos de programa\openvpn\config) d'una manera segura (amb un pen drive, després cal esborrar-la!, mitjançant sftp, ...). Llavors obrim el servidor (de moment des de la lÃnia d'ordres, estem fent proves, després ja l'obrirem com un servei): Ara des del client, fem clic amb el botó dret a sobre el fitxer client.opvn i li diem Start OpenVPN on this config file(de moment, ho fem manualment, es pot configurar pequè s'iniciï com un servei). Al cap de pocs segons veurem un missatge que diu: En aquests moments podem (o haurÃem de poder) fer ping d'una mà quina a l'altre utilitzant les ip's del túnnel que (172.16.0.X). Si no es pot fer el ping, cal revisar la configuració (sobretot repassar el firewall) Optimitzant Servidor: #Connection #Misc # Per tal que el client pugui veure totes les mà quines de la subxarxa del servidor #Connection Tornem a mirar que efectivament connecta (el client pot accedir a qualsevol mà quina de la xarxa del servidor) i ja podem anar pel següent pas: Enlloc de fer servir una clau està tica farem certificats individuals per a cada client. NOTA: Si no et funciona, revisa el firewall. Amb la meva configuració d'iptables (FORWARD a DROP), he hagut de deixar pas als paquets sortints per la interficie tap0 (primer només deixava pas als entrants, però no als que sortien, vaig tenir problemes amb això!) Autenticació PKI Ara toca crear les claus: Ara a /etc/openvpn/easy-rsa/keys hi tenim la clau privada (ca.key, guardar-la molt bé!!!) i la clau pública (ca.crt) del CA (aquesta última l'hauran de tenir tots els clients i el servidor). SÃ, el CA és el servidor, podria ser qualsevol altre mà quina (i si paguem un CA oficial) Ara cal generar les claus pel servidor i pel client (jo de moment només en tinc un): En aquest punt ja tenim les claus generades. Per poder completar l'operació cal generar els parà metres de Diffie Hellman (ens serveix perquè el client i el servidor s'intercanviïn les claus, més info): Resumint, tenim (extret de la web oficial):
Fitxer Necessitat Per Ús Secret?
ca.crt server + all clients Root CA cert NO
ca.key MÃ quina CA Root CA key YES
dh{n}.pem server only DH param NO
server.crt server only Server Cert NO
server.key server only Server Key YES
client1.crt client1 only Client1 Cert NO
client1.key client1 only Client1 Key YES
Un cop arribat aquÃ, només cal que cada mà quina tingui les claus necessà ries i modificar els fitxers de configuració (perquè quedi més lògic - almenys segons el meu criteri :-D - he posat el directori de les claus a /etc/openvpn/keys) : Servidor: # If connections fails, this file will keep track the connections to restblish them # IP Range clients (VPN Subnet, by default server will take 172.16.0.1) # Key settings # Diffie hellman # Connection #Misc Client: # Key settings ns-cert-type server # Per tal que el client pugui veure totes les mà quines a la xarxa del servidor #Connection Amb aquesta configuració, haurÃem de ser capaços d'accedir a qualsevol mà quina de la LAN (servidor SQL, recursos compartits als workstations, ssh al servidor de fitxers, etc.). Tot i aixÃ, cal dir que no es pot accedir a una carpeta compartida del Samba. Caldrà revisar-ne la configuració: smb.conf: Si a més volem accedir usant noms NetBIOS enlloc de IPs, caldrà activar el servidor WINS (més info): smb.conf: Bé, això és tot. Si has arribat fins aquà (vaia tostón, jeje) espero que t'hagi sigut útil, si menys no interessant. ----------------
|
CercaLlista de correuEnquestaquin escritori uses ? gnome 8% kde 50% sawfish 0% wmaker 0% xfce-4 0% enlightenment 16 0% enlightenment 17 (cvs) 8% gnome amb beryl 8% kde amb beryl 25% un altra i ho explico a continuació 0% Total de vots: 12
Continguts popularsHistòrics:Darrera visualització: |