Cómo crear su propia VPN en Linux con OpenVPN

Cómo crear su propia VPN en Linux con OpenVPN

Las redes privadas virtuales (VPN) le permiten ocultar sus transmisiones de datos en línea y mejorar su seguridad mientras navega por Internet desde lugares públicos. Muchos proveedores de servicios en línea ofrecen opciones de VPN gratuitas y de pago para su uso. Sin embargo, incluso los planes mejor pagados pueden ser poco confiables o lentos en ocasiones.

Aquí discutiremos cómo puede usar OpenVPN para crear una conexión segura en una máquina Linux.

Tenga en cuenta que crearemos una configuración de enrutamiento y no una de puente, lo que debería estar bien para la mayoría de los casos de uso. Los usuarios de Windows pueden seguir leyendo la documentación de OpenVPN , comenzando con la sección sobre cómo configurar una autoridad de certificación. Los comandos utilizados en Windows serán similares a los que se muestran a continuación.

Preparando el servidor para OpenVPN

  • Instala las dependencias necesarias:

sudo apt install wget curl

  • Descargue el script de instalación de OpenVPN desde Github. Este es un script de terceros que automatiza una gran parte del proceso de configuración de los nodos del servidor:

wget https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh -O. /openvpn-install.sh

Una terminal que muestra el proceso de descarga del script de instalación de OpenVPN.
  • Habilite los bits de permiso de «ejecutar» para su script de instalación:

sudo chmod ug+x. /openvpn-install.sh

Instalación de OpenVPN en el servidor

  • Ejecute el script del instalador con privilegios de superusuario :

sudo. /openvpn-install.sh

  • Aparecerá un mensaje básico en el que se le solicita la dirección IP de la interfaz que desea utilizar con OpenVPN. Como estoy exponiendo la interfaz Ethernet, presionaré Enterel valor predeterminado.
Una terminal que muestra el mensaje de selección de interfaz del script del instalador.
  • Escriba «Y», luego presione Enterpara habilitar la compatibilidad con IPv6 .
Una terminal que muestra la solicitud de compatibilidad con IPv6.
  • Presione Enterpara usar el puerto OpenVPN predeterminado para su servidor.
Una terminal que muestra la indicación del puerto predeterminado.
  • Presione Enternuevamente para permitir que OpenVPN transmita a través de UDP.
Una terminal que muestra la indicación del protocolo de transporte predeterminado.
  • Una vez hecho esto, el script le pedirá la resolución de DNS de su servidor. La opción más fácil y confiable es entre Cloudflare o Google DNS. En mi caso, ingresaré «9» para usar el servicio DNS de Google para mi servidor OpenVPN.
Una terminal que muestra la solicitud del solucionador de DNS predeterminado.
  • Escriba «N», luego presione Enterpara la compresión de paquetes y el conjunto de cifrado personalizado para su VPN.
Una terminal que muestra el aviso solicitando funciones adicionales en el servidor OpenVPN.
  • Presione Enterpara iniciar el proceso de instalación y configuración.
Una terminal que muestra el mensaje de confirmación para el instalador.
  • Una vez que el script haya terminado de instalarse, le pedirá el nombre de su primera máquina cliente.
Una terminal que muestra un aviso para el primer cliente VPN en la red.
  • También le preguntará si desea incluir una contraseña personalizada para su cliente. Escriba «1», luego presione Enterpara desactivarlo.
Una terminal que muestra un aviso para una configuración protegida por contraseña.
  • Esto debería generar un archivo de cliente (en este caso, maketecheasier.ovpn) en el directorio raíz.

Conexión a su servidor OpenVPN desde Linux

Con su servidor en funcionamiento, ahora puede comenzar a configurar su cliente local para conectarse al servidor a través de OpenVPN. Para hacer esto, debe instalar OpenVPN y usar la página de configuración integrada de su sistema o la de OpenVPN.

  • Descargar el. ovpn desde el directorio de inicio de su servidor remoto. Puede hacerlo utilizando un cliente FTP o ejecutando el comando scp :

scp user@your.server.ip.address:/home/$USER/maketecheasier.ovpn /home/$USER/

  • Vaya al menú del iniciador de aplicaciones de su distribución y busque «Configuración».
Una captura de pantalla que muestra el programa de Configuración en Ubuntu.
  • Haga clic en la categoría «Red» en la barra lateral izquierda de la aplicación.
Una captura de pantalla que muestra un punto destacado de la categoría Red en la aplicación de configuración de GNOME.
  • Haga clic en el icono «+» junto a la categoría «VPN».
Una captura de pantalla que muestra el botón para agregar una nueva conexión VPN.
  • Haga clic en la opción «Importar desde archivo…».
Una captura de pantalla que muestra el proceso de importación de un archivo OpenVPN en Ubuntu.
  • Selecciona el. ovpn desde el selector de archivos de su sistema y luego haga clic en «Abrir».
  • Vuelva a verificar si los detalles de su servidor OpenVPN son correctos, luego presione «Agregar».
Una captura de pantalla que muestra los detalles del servidor OpenVPN.

Eso es todo. Puede conectarse fácilmente a su servidor OpenVPN desde la barra de tareas ahora.

Conexión a su servidor OpenVPN desde Windows

  • Para conectar una máquina con Windows a su servidor OpenVPN , descargue el cliente del sitio web del desarrollador .
  • Ejecute el instalador del cliente y luego haga clic en «Siguiente» para iniciar el proceso de instalación.
  • Marque la casilla de verificación «Acepto los términos del Acuerdo de licencia», luego haga clic en «Siguiente».
Una captura de pantalla que muestra el Acuerdo de licencia para el cliente OpenVPN de Windows.
  • Haga clic en «Instalar», luego en «Sí» en el indicador de UAC de Windows.
Una captura de pantalla que muestra el proceso de instalación del cliente de Windows OpenVPN.
  • Una vez instalado, haga clic en «Aceptar» en el mensaje de recopilación de datos de OpenVPN Connect.
Una captura de pantalla que muestra la pantalla del acuerdo de la política de recopilación de datos para OpenVPN.
  • Haga clic en la pestaña «Cargar archivo», luego haga clic en «Examinar».
Una captura de pantalla que muestra el botón Examinar para el cliente OpenVPN.
  • Selecciona tu. ovpn y haga clic en «Abrir».
Una captura de pantalla que muestra el cuadro de selección de archivos para el archivo ovpn.
  • Verifique los detalles de su servidor OpenVPN, luego haga clic en «Conectar».
Una captura de pantalla que muestra los detalles del servidor OpenVPN.

Conexión a su servidor OpenVPN desde Mac

Una captura de pantalla que muestra los dos binarios diferentes para OpenVPN en Mac.
  • Acepte el Acuerdo de licencia del software del cliente y luego haga clic en «Continuar».
Una captura de pantalla que muestra el aviso del Acuerdo de licencia para el cliente OpenVPN.
  • Haga clic en «Instalar» para iniciar el proceso de instalación.
Una captura de pantalla que muestra el proceso de instalación del cliente OpenVPN en Mac.
  • Abra el Launchpad y luego seleccione el ícono «OpenVPN Connect».
Una captura de pantalla que muestra el cliente OpenVPN en el Launchpad.
  • Haga clic en «Aceptar» en el mensaje de recopilación de datos de OpenVPN.
Una captura de pantalla que muestra la política de recopilación de datos del cliente OpenVPN.
  • Haga clic en la pestaña «Cargar archivo».
Una captura de pantalla que destaca la pestaña Cargar archivo para el cliente OpenVPN.
  • Después de eso, haga clic en «Examinar» y seleccione su. ovpn desde el indicador del selector de archivos.
Una captura de pantalla que destaca el
  • Verifique los detalles de su servidor OpenVPN y luego haga clic en «Conectar».
Una captura de pantalla que muestra los detalles del servidor OpenVPN.

¿Sabes que también puedes usar Tunnelblick en tu Mac como un cliente Openvpn alternativo?

Agregar un nuevo cliente al servidor OpenVPN

Si bien OpenVPN funciona a la perfección entre un servidor y un solo cliente, hay instancias en las que desea compartir su túnel VPN con varias máquinas a la vez. Esto puede ser útil si desea asegurarse de que sus conexiones salientes siempre provengan de una sola dirección IP.

  • Vuelva a ejecutar el script del instalador:

sudo. /openvpn-install.sh

  • Escriba «1», luego presione Enter.
Una terminal que muestra el aviso posterior a la instalación para la secuencia de comandos del instalador.
  • Proporcione un nombre para su nuevo cliente. En mi caso, lo nombré como «maketecheasier-2».
Una terminal que muestra el mensaje para el nuevo cliente VPN.
  • Escriba «1», luego presione Enterpara deshabilitar cualquier verificación de contraseña para su cliente.
Un indicador de terminal que muestra el esquema de protección de contraseña para el nuevo cliente.

Esto generará un nuevo archivo maketecheasier-2.ovpn. Puedes distribuir esto. ovpn al cliente que desea conectar a la red.

Eliminar clientes de OpenVPN

Además de configurar un clúster de OpenVPN, el script de instalación también puede eliminar clientes existentes de su red privada.

  • Ejecute el script del instalador:

sudo. /openvpn-install.sh

  • Escriba «2», luego presione Enter.
  • Seleccione el número de índice del cliente que desea eliminar de la lista de clientes permitidos del servidor. En mi caso, escribiré «2» y luego presionaré Enter.
Una terminal que muestra el proceso de eliminación de la configuración del cliente en el servidor VPN.

Elimina OpenVPN de tu servidor

  • Ejecute el script del instalador:

sudo. /openvpn-install.sh

  • Escriba “3”, luego presione Enter.

El script luego eliminará OpenVPN de su servidor.

Preguntas frecuentes

¿Es posible redireccionar una máquina usando OpenVPN?

No, OpenVPN no permite que una máquina externa realice una conexión entrante a ningún sistema dentro de un clúster de OpenVPN. Una forma de evitar este problema es reenviar el puerto de su máquina directamente desde su red doméstica o utilizar una solución de DNS dinámico .

¿Pierdo mi dirección IP externa cuando uso OpenVPN?

No. No pierde la dirección IP original de su máquina cuando usa OpenVPN. La VPN solo sirve como puerta de enlace entre su máquina local e Internet.

¿Es posible usar múltiples configuraciones de OpenVPN en un solo sistema?

Sí. Para hacer esto, debe asegurarse de que su segundo archivo de configuración use un nombre diferente al de su archivo de cliente OpenVPN original. Por ejemplo, la ejecución sudo cp. /maketecheasier-new.ovpn /etc/openvpn/client-2.confgarantizará que su nuevo archivo no sobrescriba el original.

A continuación, también debe deshabilitar el archivo de unidad de cliente original: sudo systemctl disable --now openvpn@client.servicey habilitar el nuevo: sudo systemctl enable --now openvpn@client-2.service.

Crédito de la imagen: Anthony Choren a través de Unsplash (fondo) y Wikimedia Commons (logotipo). Todas las alteraciones y capturas de pantalla por Ramces Red.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *