PiVPN ( Wireguard )
WireGuard es un protocolo de VPN moderno, rápido y seguro, mientras que PiVPN es una herramienta que facilita su instalación y configuración. En este caso, evitamos el asistente automático y usamos una configuración manual para tener más control.
Requisitos previos
- IP fija pública (o DynDNS bien configurado).
- Puerto UDP (por defecto 51820) abierto y redirigido al servidor.
- Sistema basado en Linux con acceso root.
1. Clonar el repositorio de PiVPN
git clone https://github.com/pivpn/pivpn.git
cd pivpn
2. Preparar la configuración desatendida
cd examples
nano unattended_wireguard_example.conf
Ejemplo de configuración adaptada:
IPv4dev=enp4s0
IPv6dev=enp4s0
install_user=usuario
VPN=wireguard
pivpnNET=10.10.0.0
subnetClass=24
pivpnforceipv6route=1
pivpnforceipv6=0
pivpnenableipv6=0
pivpnNETv6=fd11:5ee:bad:c0de::
subnetClassv6=64
ALLOWED_IPS="0.0.0.0/0, ::/0"
pivpnMTU=1472
pivpnPORT=51820
pivpnDNS1=8.8.8.8
pivpnPERSISTENTKEEPALIVE=25
UNATTUPG=1
3. Ejecutar el instalador con esta configuración
sudo chmod +x ./auto_install/install.sh
sudo bash ./auto_install/install.sh --unattended ./examples/unattended_wireguard_example.conf
4. Personalización opcional (clientes sin root)
Editar el archivo para generar perfiles directamente en /home/usuario/Wireguard:
sudo nano /opt/pivpn/wireguard/makeCONF.sh
Ajustar la variable de destino según sea necesario.
5. Comandos útiles de PiVPN
pivpn -a # Añadir nuevo cliente
pivpn -c # Ver clientes conectados
pivpn -l # Ver todos los clientes
pivpn -qr <cliente> # QR para importar desde móvil
pivpn -r <cliente> # Eliminar cliente
pivpn -off / -on <cliente> # Desactivar / activar
pivpn -d # Modo depuración
pivpn -up # Actualizar PiVPN
pivpn -bk # Backup de la configuración
Conclusión
Instalación manual, limpia y personalizable de WireGuard con PiVPN. Esta configuración permite adaptar rutas, IPs, DNS y estructura de archivos sin depender de automatismos cerrados. Ideal para uso doméstico o autoalojamiento avanzado.