Para hacer de mi VPS en Oracle Cloud un servidor VPN, he optado por utilizar contenedores Docker. El elegido para esta función es Wireguard, que lleva años demostrando su solvencia gracias a su gran rendimiento y facilidad de configuración.
Sin embargo, aquí somos muy de trabajar con interfaces gráficas siempre que tenemos ocasión (es un defecto por trabajar como analista de Microsoft 365), así que vamos a optar por la combinación Wireguard Easy.
Instalando Wireguard Easy en Docker
Lo primero que vamos a hacer es crear el volumen que guardará los datos de configuración de Wireguard.
sudo docker volume create wireguard-easy_data
Y, ahora, con un solo comando tendremos funcionando nuestro contenedor Wireguard Easy:
sudo docker run -d \
--name=wg-easy \
-e WG_HOST=<IP del servidor> \
-e PASSWORD=<Contraseña> \
-v wireguard-easy_data:/etc/wireguard \
-p 51820:51820/udp \
-p 51821:51821/tcp \
--cap-add=NET_ADMIN \
--cap-add=SYS_MODULE \
--sysctl="net.ipv4.conf.all.src_valid_mark=1" \
--sysctl="net.ipv4.ip_forward=1" \
--restart unless-stopped \
weejewel/wg-easy
Si todo ha ido bien, deberíamos ver la instancia en ejecución en Portainer (si lo tenemos instalado).
Accedemos a la URL http://<IP del servidor>:51821 e iniciamos sesión con la contraseña que hemos especificado durante la creación del contenedor.
Con esto, ya tendríamos configurado nuestro servidor VPN con Wireguard.