Saltar a contenido

OpenVPN

En este artículo

Información

OpenVPN es un software de código abierto para crear redes privadas virtuales (VPNs) seguras. La solución utiliza protocolos SSL/TLS para garantizar la seguridad, proporcionando cifrado de datos y autenticación fiables. OpenVPN opera sobre TCP o UDP, puede atravesar firewalls y servidores proxy, asegurando una alta flexibilidad en diversos entornos de red.

Funcionalidades de implementación

ID Nombre del software SO compatible VM BM VGPU GPU CPU mín. (núcleos) RAM mín. (GB) HDD/SSD mín. (GB) Dominio personalizado Activo
298 OpenVPN Ubuntu 22.04 + + + + 1 1 - No ORDER

Primeros pasos después de implementar OpenVPN

Tras el pago del pedido, se enviará una notificación sobre la disponibilidad del servidor al correo electrónico especificado durante el registro. Esta notificación incluirá la dirección IP del VPS, así como las credenciales de inicio de sesión para el acceso. Los clientes de nuestra empresa gestionan el equipo a través del panel de control y la API - Invapi.

Los datos de autenticación se pueden encontrar en la pestaña Configuration >> Tags del panel de gestión del servidor o en el correo electrónico enviado:

  • Login y Password para la administración del servidor: recibidos por correo electrónico después del despliegue del servidor. Coincide con la contraseña de root en el servidor.

Conexión al servidor y acceso a la gestión

Información

OpenVPN consta de un componente de servidor instalado en el servidor y un componente de cliente para los usuarios finales. La aplicación de servidor proporciona la configuración y gestión de la conexión VPN, mientras que la aplicación de cliente está disponible para varias plataformas, incluyendo Windows, macOS, Android, iOS y Linux.

  1. Conéctese al servidor mediante SSH:

    ssh root@<server_IP>
    
  2. Los archivos de configuración principales de OpenVPN se encuentran en el directorio /etc/openvpn/:

    ls -la /etc/openvpn/
    
  3. En el servidor, también hay un script para configurar las configuraciones de los clientes:

    ls -la /root/openvpn-conf.sh
    

  4. Puede verificar el estado del servidor OpenVPN con el siguiente comando:

    systemctl status openvpn@server
    

Configuración de perfiles de usuario

  1. En su servidor, ya existe un archivo de configuración de usuario listo (client_hk.ovpn) en el directorio /root/:

    ls /root/
    client_hk.ovpn  openvpn-conf.sh
    

Puede utilizar el archivo client_hk.ovpn existente o crear uno nuevo utilizando el script.

  1. Copie el archivo de configuración deseado a su dispositivo local con SCP:

    scp root@<server_IP>:/root/client_hk.ovpn /path/on/local/computer/
    

Creación de un nuevo usuario

  1. Conéctese al servidor mediante SSH:

    ssh root@<server_IP>
    
  2. Ejecute el script de configuración de OpenVPN:

    /root/openvpn-conf.sh
    
  3. En el menú que aparece, verá las siguientes opciones:

    Welcome to OpenVPN-install!
    The git repository is available at: https://github.com/angristan/openvpn-install
    It looks like OpenVPN is already installed.
    What do you want to do?
       1 Add a new user
       2 Revoke existing user
       3 Remove OpenVPN
       4 Exit
    Select an option [1-4]:
    
  4. Seleccione la opción 1 para agregar un nuevo usuario:

    Select an option [1-4]: 1
    
  5. Ingrese el nombre del cliente, cumpliendo con los requisitos de formato:

    Tell me a name for the client.
    The name must consist of alphanumeric characters. It may also include an underscore or a dash.
    Client name: UserName
    

    Información

    El nombre de usuario debe contener solo letras, números, guiones bajos o guiones.

  6. Elija un método para proteger el archivo de configuración:

    Do you want to protect the configuration file with a password?
    (e.g., encrypt the private key with a password)
       1. Add a passwordless client
       2. Use a password for the client
    Select an option [1-2]:
    
    • Opción 1: Crea un archivo sin contraseña (una opción más sencilla para los usuarios);
    • Opción 2: Requiere ingresar una contraseña para proteger la clave (seguridad mejorada).
  7. Si eligió la protección con contraseña (opción 2), se le pedirá que ingrese la contraseña dos veces:

    ``` You will be asked for the client password below * Using SSL: openssl OpenSSL 3.0.2 15 Mar 2022 * Using Easy-RSA configuration: /etc/openvpn/easy-rsa/vars

    Enter PEM pass phrase: Verifying - Enter PEM pass phrase: ```

  8. Después de completar exitosamente todos los pasos, verá un mensaje sobre la creación de un nuevo usuario:

    Client UserName added.
    The configuration file has been written to /root/UserName.ovpn.
    Download the .ovpn file and import it in your OpenVPN client.
    
  9. El archivo de configuración .ovpn se creará en el directorio /root/ con el nombre de usuario:

    ls -la /root/*.ovpn
    

Revocación del acceso de usuario

  1. Ejecute el script de configuración de OpenVPN:

    /root/openvpn-conf.sh
    
  2. Seleccione la opción 2 para revocar un usuario existente:

    Select an option [1-4]: 2
    
  3. Seleccione un usuario de la lista para la revocación:

    Select the client to revoke:
    1) User1
    2) User2
    ...
    Client: 1
    
  4. Confirme la revocación:

    Confirm revoke for User1? [y/n]: y
    
  5. Después de la revocación exitosa, verá un mensaje:

    Certificate for client User1 revoked!
    

Transferencia del archivo de configuración al usuario

  1. Copie el archivo .ovpn desde el servidor a su computadora local:

     scp root@<server_IP>:/root/UserName.ovpn /path/on/local/computer/
    
  2. Transfiera el archivo de configuración al usuario a través de un canal de comunicación seguro.

Gestión de certificados de usuario

Visualización de certificados existentes

Para ver la lista de todos los certificados de usuario emitidos, ejecute:

cd /etc/openvpn/easy-rsa/pki/issued/
ls -la

Ejemplo de salida:

total 20
drwx------ 2 root root 4096 Apr  4 09:33 .
drwx------ 8 root root 4096 Apr  4 09:33 ..
-rw------- 1 root root 2512 Apr  4 09:33 Testuser.crt
-rw------- 1 root root 2518 Apr  3 14:21 client_hk.crt
-rw------- 1 root root 2705 Apr  3 14:21 server_jGWMj7JIGkP69so7.crt
Cada archivo con extensión .crt representa un certificado de usuario, y el nombre del archivo corresponde al nombre de usuario.

Revocación de un certificado de usuario

Si necesita revocar el acceso de un usuario (por ejemplo, cuando un empleado es despedido o una clave se ve comprometida), siga estos pasos:

  1. Navegue al directorio Easy-RSA:

    cd /etc/openvpn/easy-rsa/
    
  2. Ejecute el comando de revocación de certificado, especificando el nombre de usuario exacto:

    ./easyrsa revoke UserName
    

    Importante: El nombre de usuario debe coincidir exactamente con el nombre del archivo del certificado sin la extensión .crt y distingue entre mayúsculas y minúsculas.

    Por ejemplo, para revocar el certificado del usuario Testuser:

    ./easyrsa revoke Testuser
    
  3. Después de revocar exitosamente el certificado, genere una lista actualizada de certificados revocados (CRL):

    ./easyrsa gen-crl
    

    Verá un mensaje sobre la creación de un CRL actualizado:

    Notice
    ------
    An updated CRL has been created.
    CRL file: /etc/openvpn/easy-rsa/pki/crl.pem
    

Actualización de la lista de certificados revocados en el servidor

Para hacer cumplir los certificados revocados, actualice el CRL en el servidor:

  1. Copie el CRL actualizado al directorio de OpenVPN:

    cp /etc/openvpn/easy-rsa/pki/crl.pem /etc/openvpn/
    
  2. Reinicie el servicio OpenVPN para aplicar los cambios:

    systemctl restart openvpn@server
    

Después de completar estos pasos, un usuario con un certificado revocado ya no podrá conectarse al servidor VPN, incluso si tiene un archivo de configuración .ovpn válido.

Configuración del acceso de usuario

Instalación de OpenVPN

  1. Vaya al sitio oficial OpenVPN;
  2. Descargue la última versión de OpenVPN Community Edition para Windows;
  3. Ejecute el instalador y siga las instrucciones del asistente de configuración;
  4. Durante la instalación, asegúrese de que todos los componentes predeterminados estén seleccionados, incluidos los controladores TAP.

Información detallada sobre la instalación en Windows se puede encontrar en la guía oficial

Obtención del archivo de configuración

Para copiar el archivo de configuración de OpenVPN directamente desde el servidor, utilice el comando SCP:

scp root@SERVER_IP:/root/client_hk.ovpn C:\OpenVPN

Donde:

  • SERVER_IP - Dirección IP de su servidor VPN
  • /root/client_hk.ovpn - Ruta al archivo de configuración en el servidor
  • C:\OpenVPN - Directorio local en su computadora donde se copiará el archivo

Después de ejecutar el comando, se le pedirá que ingrese la contraseña de la cuenta root del servidor.

Después de la copia exitosa, verá información sobre la finalización del proceso y el tamaño del archivo transferido:

Importación y uso de la configuración

  1. Copie el archivo .ovpn obtenido a C:\Program Files\OpenVPN\config

  2. Inicie OpenVPN GUI: el programa se inicia automáticamente en la bandeja del sistema al arrancar Windows (icono en la esquina inferior derecha de la pantalla)

  3. Haga clic derecho en el icono de OpenVPN en la bandeja del sistema

  4. En el menú contextual, seleccione Import para agregar su configuración:

  5. Si su perfil ya está importado o copiado en el directorio de configuración, lo verá en el menú. Seleccione Connect y el nombre de su perfil

  6. Ingrese el nombre de usuario y la contraseña si es necesario, al usar autenticación o si el archivo de configuración está protegido por contraseña

  7. Después de la conexión exitosa, verá una notificación con confirmación:

El icono de OpenVPN en la bandeja del sistema también cambiará de color a verde.

Para verificar la conexión, visite whoer.net o whatismyip.com

Si necesita configurar OpenVPN en otros sistemas operativos, utilice las instrucciones oficiales del desarrollador:

Nota

Al conectarse a través de OpenVPN, todo el tráfico del dispositivo pasa a través de un túnel seguro. Para desconectarse, utilice la opción Disconnect en la aplicación cliente.

Nota

Información detallada sobre la configuración básica de OpenVPN está disponible en la documentación del desarrollador.

Tutorial en video para configurar OpenVPN

Pedido de un servidor con OpenVPN usando la API

Para instalar este software usando la API, siga estas instrucciones


Parte del contenido de esta página fue creado o traducido utilizando IA.

question_mark
Is there anything I can help you with?
question_mark
AI Assistant ×