GNU/Linux >> Tutoriales Linux >  >> Ubuntu

WireGuard:un túnel VPN rápido, moderno y seguro para Linux

WireGuard es una VPN moderna, segura, multiplataforma y de uso general implementación que utiliza criptografía de última generación. Su objetivo es ser más rápido, más simple, más ágil y más funcional que IPsec y tiene la intención de ser más eficaz que OpenVPN .

Está diseñado para su uso en diversas circunstancias y se puede implementar en interfaces integradas, enrutadores de red troncal completamente cargados y supercomputadoras por igual; y se ejecuta en los sistemas operativos Linux, Windows, macOS, BSD, iOS y Android.

Lectura recomendada :13 mejores servicios VPN con suscripción de por vida

Presenta una interfaz extremadamente básica pero poderosa que pretende ser simple, tan fácil de configurar e implementar como SSH. Sus características clave incluyen una interfaz de red simple, enrutamiento de claves criptográficas, itinerancia integrada y compatibilidad con contenedores.

Tenga en cuenta que, en el momento de escribir este artículo, se encuentra en pleno desarrollo:algunas de sus partes están trabajando para una versión 1.0 estable, mientras que otras ya están allí (funcionando bien).

En este artículo, aprenderá a instalar y configurar WireGuard en Linux para crear un túnel VPN entre dos hosts Linux.

Entorno de prueba

Para esta guía, nuestra configuración (nombre de host e IP pública) es la siguiente:

Node 1 : tecmint-appserver1: 		10.20.20.4
Node 2 : tecmint-dbserver1: 		10.20.20.3

Cómo instalar WireGuard en distribuciones de Linux

Inicie sesión en ambos nodos e instale WireGuard usando el siguiente comando apropiado para sus distribuciones de Linux de la siguiente manera.

Instalar WireGuard en RHEL 8

$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
$ sudo subscription-manager repos --enable codeready-builder-for-rhel-8-$(arch)-rpms
$ sudo yum copr enable jdoss/wireguard
$ sudo yum install wireguard-dkms wireguard-tools

Instalar WireGuard en CentOS 8

$ sudo yum install epel-release
$ sudo yum config-manager --set-enabled PowerTools
$ sudo yum copr enable jdoss/wireguard
$ sudo yum install wireguard-dkms wireguard-tools

Instalar WireGuard en RHEL/CentOS 7

$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
$ sudo curl -o /etc/yum.repos.d/jdoss-wireguard-epel-7.repo https://copr.fedorainfracloud.org/coprs/jdoss/wireguard/repo/epel-7/jdoss-wireguard-epel-7.repo
$ sudo yum install wireguard-dkms wireguard-tools

Instalar WireGuard en Fedora

$ sudo dnf install wireguard-tools

Instalar WireGuard en Debian

# echo "deb http://deb.debian.org/debian/ unstable main" > /etc/apt/sources.list.d/unstable.list
# printf 'Package: *\nPin: release a=unstable\nPin-Priority: 90\n' > /etc/apt/preferences.d/limit-unstable
# apt update
# apt install wireguard

Instalar WireGuard en Ubuntu

$ sudo add-apt-repository ppa:wireguard/wireguard
$ sudo apt-get update
$ sudo apt-get install wireguard

Instalar WireGuard en OpenSUSE

$ sudo zypper addrepo -f obs://network:vpn:wireguard wireguard
$ sudo zypper install wireguard-kmp-default wireguard-tools

Configuración de un túnel VPN WireGuard entre dos hosts Linux

Cuando la instalación de wireguard está completo en ambos nodos, puede reiniciar sus nodos o agregar el módulo wireguard desde el kernel de Linux usando el siguiente comando en ambos nodos.

$ sudo modprobe wireguard
OR
# modprobe wireguard

A continuación, genere claves públicas y privadas codificadas en base64 mediante wg utilidad en ambos nodos como se muestra.

---------- On Node 1 ---------- 
$ umask 077
$ wg genkey >private_appserver1

---------- On Node 2 ----------
$ umask 077
$ wg genkey >private_dbserver1
$ wg pubkey < private_dbserver1

Generar claves en ambos nodos

A continuación, debe crear una interfaz de red (por ejemplo, wg0 ) para wiregaurd en los pares como se muestra a continuación. Luego asigne direcciones IP a la nueva interfaz de red creada (para esta guía, usaremos la red 192.168.10.0/24 ).

---------- On Node 1 ---------- 
$ sudo ip link add dev wg0 type wireguard
$ sudo ip addr add 192.168.10.1/24 dev wg0

---------- On Node 2 ----------
$ sudo ip link add dev wg0 type wireguard
$ sudo ip addr add 192.168.10.2/24 dev wg0

Para ver las interfaces de red adjuntas en los pares y sus direcciones IP, use el siguiente comando IP.

$ ip ad

Ver interfaces de red con direcciones IP

A continuación, asigne la clave privada para cada par al wg0 interfaz de red y abra la interfaz como se muestra.

---------- On Node 1 ---------- 
$ sudo wg set wg0 private-key ./private_appserver1
$ sudo ip link set wg0 up

---------- On Node 2 ----------
$ sudo wg set wg0 private-key ./private_dbserver1
$ sudo ip link set wg0 up

Ahora que ambos enlaces están activos, cada uno con claves privadas asociadas, ejecute wg utilidad sin ningún argumento para recuperar la configuración de las interfaces WireGuard en los pares. A continuación, cree su túnel VPN WireGuard de la siguiente manera.

El par (clave pública ), ips-permitidas (red/máscara de subred) y punto final (ip pública:puerto) son del par opuesto.

----------  On Node1 (Use the IPs and Public Key of Node 2) ---------- 
$ sudo wg
$ sudo wg set wg0 peer MDaeWgZVULXP4gvOj4UmN7bW/uniQeBionqJyzEzSC0= allowed-ips 192.168.10.0/24  endpoint  10.20.20.3:54371

----------  On Node2 (Use the IPs and Public Key of Node 1) ----------
$ sudo wg
$ sudo wg set wg0 peer 6yNLmpkbfsL2ijx7z996ZHl2bNFz9Psp9V6BhoHjvmk= allowed-ips 192.168.10.0/24 endpoint  10.20.20.4:42930

Cree un túnel VPN Wireguard entre máquinas Linux

Prueba del túnel VPN WireGuard entre sistemas Linux

Una vez que se haya creado el túnel VPN de wireguard, haga ping al par opuesto utilizando la dirección de la interfaz de red de wireguard. Luego ejecute el wg utilidad una vez más para confirmar un apretón de manos entre los pares como se muestra.

---------- On Node 1 ----------
$ ping 192.168.10.2
$ sudo wg

---------- On Node 2 ----------
$ ping 192.168.10.1
$ sudo wg

Pruebe el túnel VPN de Wireguard entre máquinas Linux

¡Eso es todo por ahora! WireGuard es una solución VPN moderna, segura, simple pero potente y fácil de configurar para el futuro. Está experimentando un fuerte desarrollo, por lo tanto, el trabajo en progreso. Puede obtener más información, especialmente sobre su funcionamiento interno y otras opciones de configuración, en la página de inicio de WireGuard.

Compartir es cuidar…
Compartir en FacebookCompartir en TwitterCompartir en LinkedinCompartir en Reddit
Ubuntu
  1. 10 tutoriales de comandos de Linux para principiantes y expertos

  2. Hoja de trucos para usuarios y permisos de Linux

  3. Los 7 mejores juegos gratuitos y de código abierto para Linux

  4. Las 7 mejores distribuciones de Linux gratuitas y de código abierto para la privacidad y el anonimato

  5. Buttercup:un administrador de contraseñas moderno para Linux

Tox Messenger:una alternativa gratuita, segura y de código abierto para Skype

DockerSlim para minimizar, optimizar y proteger el contenedor Docker en Linux

Cómo instalar OpenVPN en Ubuntu Linux:un tutorial para novatos

Cómo configurar WireGuard VPN en Linux

Los 10 mejores clientes y servicios VPN de Linux para que esté protegido

Los 8 mejores teléfonos Linux seguros para privacidad y seguridad