VPN: Red Privada Virtual
13 de enero de 2022Si quieres aumentar la seguridad o conectar ordenadores en distintos lugares, una VPN es ideal para ambas cosas. VPN significa red privada virtual. Y en este artículo, describiré qué es una VPN y cómo crear tu propia VPN utilizando el software de código abierto OpenVPN. Es decir, cómo instalarlo y configurarlo en Linux o Windows como cliente y servidor.
VPN, abreviatura de Virtual Private Network, es una tecnología que crea una red privada virtual entre dispositivos, y así los dispositivos que están en ella pueden acceder entre sí directamente. Normalmente este tráfico está envuelto en una comunicación encriptada, por lo que se proporciona más seguridad.
Vídeo qué es una VPN
Vídeo donde describo qué es una VPN:
OpenVPN
OpenVPN es un software opensource que permite crear un punto=servidor central al que se pueden conectar otros dispositivos cliente.
Y una vez conectados, entre estos dispositivos se crea una red que los conecta virtualmente de forma directa, es decir, sin estar conectados directamente por un cable físico.
Además, toda la comunicación que fluye a través de esta conexión está cifrada.
La Red Privada Virtual es útil, por ejemplo, en los casos en los que no disponga de una dirección IPv4 pública y, por tanto, no pueda acceder fácilmente a los PC en cuestión. Una VPN te facilitará el acceso.
Hay más formas de utilizar OpenVPN, por lo que es necesaria una introducción más detallada al principio.
Puede iniciar sesión en el VPNcei con un nombre y contraseña o con un certificado. Recomiendo usar un certificado en su lugar. La utilidad easy-rsa se utiliza para generar autoridad, claves y certificados tanto para el servidor como para los clientes.
También existen distribuciones de Linux prediseñadas para routers que incluyen OpenVPN.
Estas soluciones suelen tener una interfaz de administración basada en web que hace que añadir y editar usuarios VPN sea muy cómodo.
Se trata, por ejemplo, de OPN sense, PF sense o Pritunl.
Instalación de OpenVPN
Dado que OpenVPN es una solución opensource, es posible ejecutar esta VPN no sólo en Linux, sino también en MS Windows y muchos otros sistemas operativos.
Describiré la instalación para Windows y Linux.
Instalación de OpenVPN en Linux
En Linux realiza la instalación fácilmente.
Comando de instalación de Mageia:
urpmi openvpnUn comando para instalaciones en la distribución Debian:
apt-get install openvpnEsto instalará el OpenVPN completo, que puedes ejecutar tanto en modo cliente como servidor.
Instalación de OpenVPN Windows
Descargue el cliente de Windows aquí. Descarga la versión servidor/completa de OpenVPN para Windows aquí. Por supuesto, tienes que elegir el instalador adecuado para Windows, según la arquitectura de tu procesador. También tienes la opción de descargar otras versiones anteriores.
Tuve un problema con la generación de certificados cuando instalé OpenVPN en Windows en 2019. Se trataba de la versión 2.4.6-I602 del instalador de OpenVPN. Hubo algunos cambios al respecto en la versión de windows. Mi problema se solucionó finalmente instalando la versión anterior. Utilicé el instalador de OpenVPN versión 2.3.18, que incluía el easy-rsa y openssl completos de la versión original y todo funcionaba. La configuración y generación de certificados fue como se describe en la documentación original y todo funcionó.
Hay que tener en cuenta que el SO Windows no es apto para ejecutar ninguna aplicación de servidor e incluso instalando OpenVPN, su funcionamiento y posterior gestión del PC será más laborioso. Por ello, si es posible, opte por Linux u otro Unix.
Configuración de OpenVPN
Puede configurar OpenVPN en modo servidor o cliente. Un único ordenador con una dirección IP pública se utiliza como servidor, y luego otros dispositivos=clientes se conectan a este PC. No se puede prescindir de una dirección IP pública. Alternativamente, usted necesita ser capaz de reenviar el puerto en el router que tiene la dirección IP pública.
Tanto si estás configurando un cliente como un servidor necesitas tener un fichero de configuración con contenido válido. E idealmente colocarlo en el directorio esperado.
En Linux esto es típicamente ,/etc/openvpn
.
Configuración del servidor OpenVPN
Ejemplo de configuración del servidor:
puerto 1194 proto udp dev tun0 ca easy-rsa/keys/ca.crt #certificado de autoridad de certificación cert easy-rsa/keys/server.crt #certificado del servidor key easy-rsa/keys/server.key #marcado dh easy-rsa/keys/dh1024.pem comp-lzo servidor 192.168.101.0 255.255.255.0 ifconfig-pool-persist /var/lib/openvpn/ip.txt cliente-a-cliente log-append /var/log/openvpn.log status /var/run/openvpn/vpn.status 10
Por supuesto, necesitas habilitar el puerto apropiado en el firewall.
Configuración del cliente OpenVPN
Ejemplo de configuración de cliente:
#dirección del servidor remoto 147.32.117.1 1194 #cliente-tls cliente dev tun0 pull proto udp silenciar 10 ca ca.crt cert perro.crt key perro.key #compresión comp-lzo #eficiencia de registro verbo 3 servidor ns-cert-type log-append /var/log/openvpn.log
A continuación, puede iniciar el cliente manualmente o mediante systemd.
Generación de claves
Un video tutorial que muestra como generar claves usando easy-rsa. Easy-rsa es un conjunto de comandos que llaman al programa openssl que permite generar claves , certificados, firmar etc.... Las claves se generan para que luego puedan ser utilizadas por la VPN OpenVPN.
La generación de claves es universal independientemente del SO. Esta guía también es universal.
Sin embargo, como trabajar con Windows es más complicado, he implementado la demo en Windows para que los usuarios de Windows tengan un tutorial.
Instalación de una VPN personalizada
Si instalar una VPN es demasiado complicado para ti o necesitas una solución personalizada, te ofrezco consulta e instalación de OpenVPN.Otros recursos
Puedes utilizar la web y documentación oficial de OpenVPN como principal fuente de información.
Si te ocupas de otras cosas en el ámbito de la instalación y configuración de servidores Linux, puedes inspirarte en los apuntes de mi ebook gestión de servidores Linux
Artículos sobre un tema similar
Uso de la clave de cifrado por hardware GoTrust de MojeID en Linux
Gestor de contraseñas Bitwarden
Boletin informativo
Si está interesado en recibir noticias puntuales por correo electrónico.
Puedes registrarte rellenando tu email
suscripción de noticias.
+