Guía para Configurar WireGuard en un Servidor SoftEther VPN
SoftEther es una solución VPN sofisticada y multiprotocolo que admite una amplia variedad de protocolos VPN, incluidos WireGuard, OpenVPN, L2TP/IPsec, SSTP y otros. En esta guía, nos centramos en configurar el protocolo WireGuard en un Servidor SoftEther VPN utilizando la herramienta vpncmd
, que es el único método actualmente soportado para configurar WireGuard en SoftEther.
Requisitos previos
Antes de comenzar, asegúrese de que:
Paso 1: Configurar el Puerto UDP para WireGuard
Asegúrese de tener privilegios de administrador en el servidor VPN antes de configurar la conexión WireGuard. Inicie la utilidad vpncmd
, seleccione la opción #1 y acceda como Administrador:
./vpncmd
Para verificar si su servidor SoftEther está escuchando en un puerto UDP, ejecute el siguiente comando:
PortsUDPGet
Si no hay ningún puerto UDP activo, añada uno usando el siguiente comando. Puede establecer cualquier número de puerto, siempre que no entre en conflicto con otros puertos en su servidor Linux:
PortsUDPSet 51820
Nota: Puede especificar varios puertos simultáneamente separándolos con comas. Asegúrese de que estos puertos no estén bloqueados por el firewall o iptables de su servidor.
Paso 2: Configurar la Puerta de Enlace y la Subred para WireGuard
Dado que WireGuard no admite DHCP (que depende de mensajes broadcast, incompatibles con un túnel VPN punto a punto), cada peer debe tener una dirección IP estática para asegurar el cifrado y el enrutamiento adecuados. Cambie a su hub virtual y configure la puerta de enlace y la máscara de subred que utilizarán sus clientes WireGuard con IP estática:
Hub myhub
SetStaticNetwork /GATEWAY=192.168.1.1 /SUBNET=255.255.255.0
Reemplace 192.168.1.1 y 255.255.255.0 por la dirección IP de puerta de enlace y la máscara de subred apropiadas; use los mismos valores que el servidor DHCP del hub proporciona a los clientes conectados. Verifique la configuración estática del hub ejecutando este comando:
OptionsGet myhub
Paso 3: Habilitar el Protocolo WireGuard
Aunque el soporte para WireGuard suele estar habilitado por defecto, confirme su activación con el siguiente comando:
ProtoOptionsSet wireguard /NAME=enabled /VALUE=true
Paso 4: Generar y Asignar Claves de Usuario
WireGuard emplea pares de claves X25519 para la comunicación segura. Puede generar estas claves con la utilidad vpncmd
o con una herramienta externa. En el siguiente ejemplo, las claves se generan mediante vpncmd
.
Salga de vpncmd
y ejecútelo de nuevo, seleccionando la opción #3 para ingresar en modo Tools. Luego, ejecute el siguiente comando para generar un par de claves:
GenX25519
La utilidad generará un par de claves: una Private Key y una Public Key. Cópielas y guárdelas de forma segura. Si tiene varios hubs o usuarios que requieran conexión WireGuard, genere un par de claves separado para cada uno.
Después de generar las claves, inicie sesión de nuevo en vpncmd
como administrador y asigne la Public X25519 key de cada usuario al hub correspondiente:
WgkAdd "WFPFO/s8UXD6HNH+2P2UjfbkUP8BFITa7TXKculvDUk=" /HUB=myhub /USER=myuser
Reemplace WFPFO/s…ulvDUk=, myhub y myuser con su clave pública, el nombre de su hub y el nombre de usuario. Asegúrese de que este usuario exista en el hub especificado.
Ahora, verifique que las claves de WireGuard se agregaron correctamente con el siguiente comando:
WgkEnum
Paso 5: Crear un Archivo de Configuración para el Cliente WireGuard
A continuación se muestra un ejemplo de archivo de configuración. Cópielo en un editor de texto y reemplace los marcadores con sus valores reales, que describiremos a continuación:
[Interface] PrivateKey = WFPFO/s8UXD6HNH+2P2UjfbkUP8BFITa7TXKculvDUk= Address = 192.168.1.15/32 DNS = 9.9.9.9,149.112.112.112 [Peer] PublicKey = pbnWflgIl4CUqYkgZKrtQg/jMAyytyS/AufEt4OAq3Y= PresharedKey = s/8eDb4r6BUtAMZEY8a+VC4Qs4HYzUJVqD8YzSNFzuk= AllowedIPs = 0.0.0.0/0 Endpoint = 150.151.152.153:51820 PersistentKeepalive = 21
[Interface]
[Peer]
Al configurar el puerto UDP, la puerta de enlace, la subred, habilitar WireGuard, generar y asignar claves, y crear un archivo de configuración de cliente, podrá establecer una conexión segura a su hub virtual SoftEther a través de WireGuard. Una vez conectado, verifique si su tráfico se enruta a través del túnel WireGuard hacia su servidor SoftEther.