# Instalación y configuración de WireGuard

<span style="color: rgb(126, 140, 141);">Para instalar WireGuard hacemos lo siguiente como cualquier paquete.</span>

[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/BZyimage.png)](https://wikasa.es/uploads/images/gallery/2024-02/BZyimage.png)

<span style="color: rgb(126, 140, 141);">Ahora vamos a generar directamente una clave privada y vamos a guardarla.</span>

<span style="color: rgb(126, 140, 141);">[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/Dkximage.png)](https://wikasa.es/uploads/images/gallery/2024-02/Dkximage.png)</span>

<span style="color: rgb(126, 140, 141);">Este comando nos dará una clave aleatoria por ejemplo <span data-darkreader-inline-bgcolor="" style="background-color: rgb(241, 196, 15); --darkreader-inline-bgcolor: #907508;">"3JNHDCNSM3DHISN(&amp;JD83ND3U"</span></span>

<span style="color: rgb(126, 140, 141);">Ahora vamos a cambiar los permisos de la clave para que solo pueda acceder el usuario creador.</span>

<span style="color: rgb(126, 140, 141);">[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/Lxwimage.png)](https://wikasa.es/uploads/images/gallery/2024-02/Lxwimage.png)</span>

<span style="color: rgb(126, 140, 141);">Ahora necesitamos una clave pública pero que este relacionada con la privada. </span>

<span style="color: rgb(126, 140, 141);">Vamos a suponer <span style="background-color: rgb(53, 152, 219);">"874FD6V8S838YE8%&amp;(/8648367"</span>.</span>

<span style="color: rgb(126, 140, 141);">[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/S00image.png)](https://wikasa.es/uploads/images/gallery/2024-02/S00image.png)</span>

<span style="color: rgb(126, 140, 141);">Ahora vamos a crear y modificar el archivo wg0.conf del directorio de configuración de wireguard.</span>

<span style="color: rgb(126, 140, 141);">[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/XSGimage.png)](https://wikasa.es/uploads/images/gallery/2024-02/XSGimage.png)</span>

<span style="color: rgb(126, 140, 141);">Y añadimos la siguiente configuración.</span>

<span style="color: rgb(126, 140, 141);">[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/FJNimage.png)](https://wikasa.es/uploads/images/gallery/2024-02/FJNimage.png)</span>

<span style="color: rgb(126, 140, 141);">Donde pone privatekey, como el propio parámetro dice hay que poner la clave privada que fue la primera que creamos, para el tutorial vamos a coger el dicho anteriormente <span style="background-color: rgb(241, 196, 15);">"3JNHDCNSM3DHISN(&amp;JD83ND3U"</span></span>

<span style="color: rgb(126, 140, 141);">En dirección ponemos la ip que queramos que tenga el servidor vpn, no se refiere al rango.</span>

<span style="color: rgb(126, 140, 141);">El puerto que queramos poner, en este ejemplo he puesto 10296.</span>

<span style="color: rgb(126, 140, 141);">Y el parámetro saveconfig para que guarde la configuración cuando una interfaz de wireguard se apague.</span>

<span style="color: rgb(126, 140, 141);">Ahora vamos a ver que nombre de interfaz de red tenemos en el servidor.</span>

<span style="color: rgb(126, 140, 141);">[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/uGKimage.png)](https://wikasa.es/uploads/images/gallery/2024-02/uGKimage.png)</span>

<span style="color: rgb(126, 140, 141);">Vemos que es ens18 en este caso, nos vamos al archivo wg0 y añadimos dos reglas de iptables que hacen lo siguiente:</span>

<span style="color: rgb(126, 140, 141);">PostUp:</span>

<span style="color: rgb(126, 140, 141);">iptables -A FORWARD -i %i -j ACCEPT: Añade una regla a la cadena FORWARD para permitir el reenvío de paquetes provenientes de la interfaz especificada (%i).</span>

  
<span style="color: rgb(126, 140, 141);">iptables -t nat -A POSTROUTING -o \[NOMBRE\_INTERFAZ\_INTERNET\] -j MASQUERADE: Añade una regla a la tabla de nat para realizar el enmascaramiento de direcciones (NAT) en la interfaz de salida especificada (\[NOMBRE\_INTERFAZ\_INTERNET\]), lo que permite que los paquetes parezcan provenir de la interfaz principal.</span>

  
<span style="color: rgb(126, 140, 141);">PostDown:</span>

<span style="color: rgb(126, 140, 141);">iptables -D FORWARD -i %i -j ACCEPT: Elimina la regla que permite el reenvío de paquetes provenientes de la interfaz especificada (%i).</span>

  
<span style="color: rgb(126, 140, 141);">iptables -t nat -D POSTROUTING -o \[NOMBRE\_INTERFAZ\_INTERNET\] -j MASQUERADE: Elimina la regla de enmascaramiento de direcciones para la interfaz de salida especificada (\[NOMBRE\_INTERFAZ\_INTERNET\]).</span>

[![image.png](https://wikasa.es/uploads/images/gallery/2024-05/scaled-1680-/image.png)](https://wikasa.es/uploads/images/gallery/2024-05/image.png)

<span style="color: rgb(126, 140, 141);">Ahora vamos a modificar los permisos del archivo wg0.</span>

<span style="color: rgb(126, 140, 141);">[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/JdQimage.png)](https://wikasa.es/uploads/images/gallery/2024-02/JdQimage.png)</span>

<span style="color: rgb(126, 140, 141);">Ahora vamos a probar a activar la interfaz.</span>

<span style="color: rgb(126, 140, 141);">[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/GJMimage.png)](https://wikasa.es/uploads/images/gallery/2024-02/GJMimage.png)</span>

<span style="color: rgb(126, 140, 141);">Y podemos comprobar el funcionamiento.</span>

<span style="color: rgb(126, 140, 141);">[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/Y16image.png)](https://wikasa.es/uploads/images/gallery/2024-02/Y16image.png)</span>

<span style="color: rgb(126, 140, 141);">Ahora que hemos comprobado que funciona vamos a indicarle que se inicie automáticamente al iniciar el sistema.</span>

<span style="color: rgb(126, 140, 141);">[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/od3image.png)](https://wikasa.es/uploads/images/gallery/2024-02/od3image.png)</span>

<span style="color: rgb(126, 140, 141);">Ahora vamos a modificar el sistema para permitir el reenvío del tráfico.</span>

<span style="color: rgb(126, 140, 141);">[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/yCXimage.png)](https://wikasa.es/uploads/images/gallery/2024-02/yCXimage.png)</span>

<span style="color: rgb(126, 140, 141);">Entramos y descomentamos la primera línea de la imagen, la segunda es por si lo estáis haciendo con ipv6.</span>

<span style="color: rgb(126, 140, 141);">[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/Tgbimage.png)](https://wikasa.es/uploads/images/gallery/2024-02/Tgbimage.png)</span>

<span style="color: rgb(126, 140, 141);">Ahora comprobamos que este bien.</span>

<span style="color: rgb(126, 140, 141);">[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/Q8Iimage.png)](https://wikasa.es/uploads/images/gallery/2024-02/Q8Iimage.png)</span>

<span style="color: rgb(126, 140, 141);">Tenemos que activar el firewall y añadirle el puerto de la vpn.</span>

<span style="color: rgb(126, 140, 141);">[![image.png](https://wikasa.es/uploads/images/gallery/2024-02/scaled-1680-/lJ4image.png)](https://wikasa.es/uploads/images/gallery/2024-02/lJ4image.png)</span>

#### <span style="color: rgb(224, 62, 45);">Y el ultimo paso es modificar el MTU para bajarlo a 1420.</span>

<span style="color: rgb(126, 140, 141);">sudo ip link set dev &lt;nombre\_interfaz&gt; mtu 1420</span>

<span style="color: rgb(126, 140, 141);">Y con ello ya podríamos dar por terminado la instalación y configuración de wireguard, el siguiente tutorial es como añadir un cliente.</span>