Tienda Wifi

Tienda Wifi
CiudadWireless es la tienda Wifi recomendada por elhacker.NET

Entradas Mensuales

Síguenos en:

Canal Oficial Telegram de elhacker.NET Grupo Facebook elhacker.NET Twitter elhacker.NET Canal Youtube elhacker.NET Comunidad Steam: Grupo elhacker.NET Mastodon

Entradas populares

PostHeaderIcon Configurar una VPN con WireGuard y WireGuard-UI en Debian 12


 WireGuard es una aplicación de software de red privada virtual (VPN) moderna y altamente eficiente que se centra en la simplicidad y la seguridad. Fue desarrollada por Jason A. Donenfeld y se lanzó inicialmente en 2016.


 

 

WireGuard se destaca en el mundo de las VPN por su simplicidad, seguridad robusta, alto rendimiento y facilidad de uso, haciéndolo una opción popular tanto para usuarios individuales como para organizaciones.

Para este tutorial también utilizaremos WireGuard-UI que es una interfaz de usuario (UI) gráfica para WireGuard, diseñada para facilitar la gestión y configuración de esta VPN. Mientras que WireGuard en sí es conocido por su simplicidad y eficiencia, la configuración inicial y la gestión pueden ser un poco técnicas, especialmente para usuarios que no están familiarizados con la línea de comandos o los aspectos más complejos de la configuración de redes. Aquí es donde WireGuard-UI se vuelve útil.

Requisitos previos

Para realizar este tutorial, es necesario cumplir con estos requisitos:

  • Un servidor con Debian 12.
  • Acceso a por SSH con privilegios de root o un usuario con permisos sudo.
  • Conexión a Internet en el servidor.

Instalación de WireGuard

Lo primero de todo será instalar WireGuard para ello actualizaremos repositorios:

apt update
apt upgrade

 

Luego instalaremos WireGuard que se encuentra en los repositorios de Debian:

apt install wireguard

 

Hay que crear un servicio para gestionar WireGuard cada vez que se actualice la info en WireGuard-UI. Primero creamos el fichero

 /etc/systemd/system/wgui.service

Con el contenido:

[Unit]
Description=Restart WireGuard
After=network.target

[Service]
Type=oneshot
ExecStart=/usr/bin/systemctl restart wg-quick@wg0.service

[Install]
RequiredBy=wgui.path
Y luego creamos /etc/systemd/system/wgui.path:

[Unit]
Description=Watch /etc/wireguard/wg0.conf for changes

[Path]
PathModified=/etc/wireguard/wg0.conf

[Install]
WantedBy=multi-user.target

Aplicamos los cambios con:

systemctl enable wgui.{path,service}
systemctl start wgui.{path,service}

Para que funcione correctamente NAT:

/sbin/sysctl -w net.ipv4.ip_forward=1

Instalación de WireGuard-UI

Lo siguiente será instalar la interfaz web para gestionar el servicio de VPN. Para ello nos descargaremos el binario desde el repositorio de Git.

wget https://github.com/ngoduykhanh/wireguard-ui/releases/download/v0.6.2/wireguard-ui-v0.6.2-linux-amd64.tar.gz

 

Descomprimimos y copiamos el binario en el directorio correspondiente:

tar zxf wireguard-ui-v0.6.2-linux-amd64.tar.gz
mkdir /opt/wireguard-ui
mv wireguard-ui /opt/wireguard-ui/

Configurar servicio para SystemD

Lo ideal es poder gestionar WireGuard-UI con systemD, para ello crearemos un servicio para su gestión:

nano /etc/systemd/system/wgui-web.service

Con el siguiente contenido:

[Unit]
Description=WireGuard UI Daemon
Wants=network-online.target
After=network-online.target

[Service]
User=root
Group=root
Type=simple
WorkingDirectory=/opt/wireguard-ui
ExecStart=/opt/wireguard-ui/wireguard-ui -bind-address "127.0.0.1:5000"

[Install]
WantedBy=multi-user.target
Y actualizamos los servicios y lo ponemos en marcha:

systemctl daemon-reload
systemctl start wgui-web.service

 Configurar usuario de acceso


Por defecto el usuario de acceso de WireGuard-UI es admin con la misma contraseña. Para hacer que nuestro panel sea seguro, es recomendable hacer un cambio de contraseña.

El fichero que debéis de modificar se encuentra en /opt/wireguard-ui/db/users/admin.jsonf y debéis de cambiar tanto el username como el password:


{
        "username": "admin",
        "password": "contaseñasegura",
        "admin": true
}

Configurar Nginx Proxy


El servicio de la interfaz web para WireGuard está escuchando en localhost por el puerto 5000. Accederemos a este servicio a través de Nginx, para ello deberemos de configurar el fichero del Nginx Proxy para que escuche por el puerto 5000.

 

Configurando WireGuard-UI

Si has seguido todos los pasos anteriores, ya deberías de poder acceder por HTTPS a tu dominio e iniciar sesión con tu usuario.

 


Vamos al apartado de WireGuard Server y allí configuraremos nuestro servidor. La configuración que debemos de hacer es la siguiente:

  • Server Interface Addresses: Aquí deberemos de configurar la red del servidor, podemos dejar la que hay por defecto o añadir otra.
  • Listen Port: Este es el puerto del WireGuard, podemos dejarlo por defecto.
  • Post Up Script: El script que se ejecuta al levantar la interfaz, copiaremos el que hay a continuación.
  • Post Down Script: El script que se ejecuta al bajar la interfaz, copiaremos el que hay a continuación.

 # Post Up Script:
iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

# Post Down Script:
iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

 

Cuando tengamos esta configuración acabada, le damos a Save para guardar la configuración y luego a Apply Config para aplicar los cambios.


Creación de cliente de WireGuard

En este momento lo que haremos será configurar un usuario para poder acceder por WireGuard. Accedemos a WireGuard Clients y configuramos los siguientes parámetros de la siguiente forma haciendo clic en New Client:

  • Name: Nombre de usuario
  • Email: El e-mail del usuario
  • IP Allocation: Por defecto debería de estar configurado.
  • Extra Allowed IPs: Aquí debemos de poner los rangos por los que saldremos, así que añadimos el rango de la IP interna de nuestro servidor. En mi caso la IP es del rango 10.20.10.0/24.


 

Y ya tendremos el cliente configurado:

 


Luego deberemos de hacer clic sobre el botón Apply Conf para aplicar los cambios de los clientes.

 

Ahora ya podemos usar el fichero de configuración de WireGuard. Podemos instalarlo en nuestro ordenador o bien usar la APP de WireGuard de Android para configurar el fichero con un QR.

Cuando nos conectemos a la VPN deberemos de ver el usuario conectado en el apartado Status:

 


Y si desde el dispositivo vamos a iplocation.page para revisar con que IP salimos veremos la IP del servidor configurado.

 

Fuentes:

https://voidnull.es/configura-una-vpn-con-wireguard-en-debian-12/


0 comentarios :

Publicar un comentario

Los comentarios pueden ser revisados en cualquier momento por los moderadores.

Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.

Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.