OpenVPN para todos :D
Buenas tardes, bloggeros!
En esta entrada les comparto la configuración de un servidor OpenVPN, algo extremadamente útil y necesario para establecer conexiones privadas y seguras sobre una red totalmente insegura, como por ejemplo INTERNET.
Es realmente sencillo, aunque creo necesario interiorzarse en qué es una VPN, su funcionamiento y cuáles son los tipos de VPN junto a sus ventajas y desventajas.
En mi caso elegí OpenVPN, por ser de código abierto, estar disponible en los repositorios de Debian, hay mucha documentación disponible y configurarla es simple.
Como detalle en la configuración del servidor que usé, verán que elegí usar el adaptador tap por una cuestión de comodidad de crear un servidor que permitiera múltiples clientes conectados a un bridge, es decir que estarían todos "enchufados a un mismo switch". Usar una interface de red tap tiene sus ventajas y desventajas.
Sin más, acá va el fichero server.conf con las directivas:
local 192.168.1.2
management 127.0.0.1 5555
port 11194
proto udp
dev tap0
tls-server
remote-cert-tls client
ifconfig-pool-persist ipp.txt
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/cert.crt
key /etc/openvpn/easy-rsa/keys/key.key # This file should be kept secret
dh /etc/openvpn/easy-rsa/keys/dh1024.pem
tls-auth /etc/openvpn/easy-rsa/keys/ta.key 0 # This file is secret
server-bridge 192.168.1.1 255.255.255.0 192.168.1.100 192.168.1.110
push "redirect-gateway def1"
push "route 192.168.1.0 255.255.255.0"
keepalive 10 60
persist-key
persist-tun
max-clients 10
user nobody
group nogroup
status openvpn-status.log
log openvpn.log
log-append openvpn.log
verb 3
Del lado del cliente, este sería el fichero client.conf (o client.ovpn para sistemas Windows):
client
dev tap0
proto udp
remote 181.xxx.xxx.xxx 11194 # The OpenVPN server
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert yo.crt
key yo.des3.key
tls-auth ta.key 1
verb 3
ping 10
ping-restart 60
--explicit-exit-notify 2
Existen otras directivas más; además esto es un script, por lo que se puede incluir comandos de Bash si fuese necesario.
Les recomiendo leer los manuales y HOW-TO de la página oficial de OpenVPN y el libro Mastering OpenVPN para profundizar más los conocimientos sobre VPN y OpenVPN en particular.
Saludos... y happy config!
Les recomiendo leer los manuales y HOW-TO de la página oficial de OpenVPN y el libro Mastering OpenVPN para profundizar más los conocimientos sobre VPN y OpenVPN en particular.
Saludos... y happy config!
Genial Vero, muy útil el tutorial.
ResponderBorrarSaludos!
Gracias, Danis! :)
Borrarmuy interesante
ResponderBorrarse deben generar archivos similares en la app de android
no has intentado dales un cat para visualizarlos
probablemente después de una pequeña edición logres acceder a la red 3g sin datos
Similares, dado que la interface TAP no está soportada, debería ser TUN y crear así un enlace punto a punto.
BorrarNo entiendo para qué querría "darles un cat", ya estoy visualizando los fecheros! Jajaja!