Herramientas de usuario

Herramientas del sitio


informatica:software:internet:wireguard

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
informatica:software:internet:wireguard [2022/02/20 11:16] – [WireGuard Easy] tempwininformatica:software:internet:wireguard [2025/11/21 13:15] (actual) tempwin
Línea 1: Línea 1:
-====== Wireguard ======+====== WireGuard ======
  
 Solución para crear túneles VPN. Más segura, moderna y eficiente que otras soluciones de código abierto como OpenVPN. Solución para crear túneles VPN. Más segura, moderna y eficiente que otras soluciones de código abierto como OpenVPN.
Línea 9: Línea 9:
 ==== WireGuard Easy ==== ==== WireGuard Easy ====
  
-La forma más sencilla de instalarlo es mediante Docker con la imagen de +Una forma sencilla de instalarlo es mediante [[..:..:sistemas_operativos:virtualizacion:docker|Docker]] con la imagen [[https://github.com/wg-easy/wg-easy|WireGuard Easy]] ([[https://github.com/wg-easy/wg-easy|repositorio en GitHub]]). Ejemplo del ''docker-compose.yml'':
  
-Una forma sencilla de instalarlo es mediante Docker con la imagen [[https://hub.docker.com/r/weejewel/wg-easy|WireGuard Easy]] ([[https://github.com/WeeJeWel/wg-easy|repositorio en GitHub]])Ejemplo del ''docker-compose.yml'':+<code yaml> 
 +version: "3.8" 
 +services: 
 +  wg-easy: 
 +    environment: 
 +    #  Optional: 
 +    #  - PORT=51821 
 +    #  - HOST=0.0.0.0 
 +    #  - INSECURE=false # Si nos conectamos a la interfaz web por HTTP tendríamos que poner 'true' 
 +    imageghcr.io/wg-easy/wg-easy 
 +    container_name: wg-easy 
 +    volumes: 
 +      - .:/etc/wireguard 
 +      - /lib/modules:/lib/modules:ro 
 +    ports: 
 +      "51820:51820/udp" # Puerto de WireGuard 
 +      - "51821:51821/tcp" # Interfaz de administración web 
 +    restart: unless-stopped 
 +    cap_add: 
 +      - NET_ADMIN 
 +      - SYS_MODULE 
 +    sysctls: 
 +      - net.ipv4.ip_forward=1 
 +      - net.ipv4.conf.all.src_valid_mark=1 
 +</code> 
 + 
 +Esta imagen provee también de un panel de administración web desde el que poder añadir y gestionar lo clientes de la VPNAccesible desde http://ip.servidor.wireguard:51821 
 + 
 +<WRAP center round important 60%> 
 +Para poder conectarnos a este servidor desde fuera de nuestra red local (Internet) es necesario realizar una redirección de puertos para que este puerto local pueda ser accesible desde el exterior. 
 +</WRAP> 
 + 
 +=== Protección con contraseña === 
 + 
 +Básicamente: 
 + 
 +<code> 
 +docker run -it ghcr.io/wg-easy/wg-easy wgpw <TU_CONTRASEÑA> 
 +</code> 
 + 
 +Devolverá algo como: 
 + 
 +<code> 
 +PASSWORD_HASH='$2b$12$coPqCsPtcFO.Ab99xylBNOW4.Iu7OOA2/ZIboHN6/oyxca3MWo7fW// literalmente sería <TU_CONTRASEÑA> 
 +</code> 
 + 
 +Utilizaremos la variable ''PASSWORD_HASH'' en el Docker Compose sin las comillas simples y sustituyendo cada ''$'' por dos, es decir, ''$$'':
  
 <code yaml> <code yaml>
Línea 21: Línea 67:
       # Change this to your host's public address       # Change this to your host's public address
       - WG_HOST=raspberrypi.local       - WG_HOST=raspberrypi.local
- +      PASSWORD_HASH=$$2b$$12$$coPqCsPtcFO.Ab99xylBNOW4.Iu7OOA2/ZIboHN6/oyxca3MWo7fW
-      # Optional: +
-      # PASSWORD=foobar123 +
-      # - WG_PORT=51820 +
-      # - WG_DEFAULT_ADDRESS=10.8.0.x +
-      # - WG_DEFAULT_DNS=1.1.1.1 +
-      # - WG_MTU=1420 +
-      # - WG_ALLOWED_IPS=192.168.15.0/24, 10.0.1.0/24+
              
     image: weejewel/wg-easy     image: weejewel/wg-easy
Línea 46: Línea 85:
 </code> </code>
  
-Esta imagen provee también de un panel de administración web desde el que poder añadir y gestionar lo clientes de la VPN. Accesible desde http://ip.servidor.wireguard:51821 +  * [[https://github.com/wg-easy/wg-easy/blob/master/How_to_generate_an_bcrypt_hash.md|wg-password]]
 ==== Manual ==== ==== Manual ====
  
Línea 137: Línea 175:
   * Cliente Android en [[https://play.google.com/store/apps/details?id=com.wireguard.android&hl=es|Google Play]] o [[https://f-droid.org/en/packages/com.wireguard.android/|F-Droid]]   * Cliente Android en [[https://play.google.com/store/apps/details?id=com.wireguard.android&hl=es|Google Play]] o [[https://f-droid.org/en/packages/com.wireguard.android/|F-Droid]]
   * [[https://download.wireguard.com/windows-client/|Cliente Windows]]   * [[https://download.wireguard.com/windows-client/|Cliente Windows]]
 +
 +==== NetworkManager ====
 +
 +**NetworkManager** tiene soporte native para configurar interfaces de WireGuard. Una vez generado en el servidor el fichero de configuración para un cliente, podemos usar ''nmcli'' para crear el perfil de conexión de la siguiente manera:
 +
 +<code>
 +# nmcli connection import type wireguard file /fichero/wireguard/cliente.conf
 +</code>
informatica/software/internet/wireguard.1645352209.txt.gz · Última modificación: por tempwin