WireGuard é um software e protocolo de comunicação gratuito e de código aberto. Ele é usado para implementar técnicas de Rede Virtual Privada (VPN) na criação de conexões seguras de ponto a ponto em configurações roteadas ou de ponte.
Instalando o WireGuard
Segue, conforme a distro mencionada o qual estiver utilizando no seu computador ou servidor.
Debian/Ubuntu
$ sudo apt install wireguard
Fedora
$ sudo dnf install wireguard-tools
Arch
$ sudo pacman -S wireguard-tools
openSUSE
$ sudo zypper install wireguard-tools
RHEL 8
$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm
$ sudo yum install kmod-wireguard wireguard-tools
Habilitar o forward
$ sudo vim /etc/sysctl.conf
descomentar a linha (retirar o # na frente)
net.ipv4.ip_forward=1
$ sudo systctl -p
# mkdir /etc/wireguard
# umask 077
# wg genkey | tee privatekey | wg pubkey > publickey
Repetir para no cliente Linux, que irá conectar no servidor VPN WireGuard
Configurando o WireGuard
# vim /etc/wireguard/wg0.conf
[Interface]
PrivateKey = <contents-of-server-privatekey>
Address = 10.0.0.1/24
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
ListenPort = 51820
[Peer]
PublicKey = <contents-of-client-publickey>
AllowedIPs = 10.0.0.2/32
Verifique as chaves pública e privada nos diretórios a seguir:
$ sudo cat /etc/wireguard/publickey
$ sudo cat /etc/wireguard/privatekey
# ip link add dev wg0 type wireguard
# ip address add dev wg0 192.168.2.1/24
ou dois peers
# ip address add dev wg0 192.168.2.1 peer 192.168.2.2
# wg setconf wg0 /etc/wireguard/config.conf
# ip link set up dev wg0
Inicializar o WireGuard no boot do sistema
# wg-quick up wg0
Saída de retorno
[#] ip link add wg0 type wireguard
[#] wg setconf wg0 /dev/fd/63
[#] ip -4 address add 10.0.0.1/24 dev wg0
[#] ip link set mtu 1420 up dev wg0
[#] iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# wg show
# systemctl enable wg-quick@wg0
# modprobe wireguard
Adicionar a liberação da porta 51820 UDP no firewall
Configuração do cliente Linux
$ sudo mkdir -p /etc/wireguard
$ sudo vim /etc/wireguard/wg0.conf
[Interface]
Address = 10.0.0.2/32
PrivateKey = <contents-of-client-privatekey>
DNS = 1.1.1.1
[Peer]
PublicKey = <contents-of-server-publickey>
Endpoint = <server-public-ip>:51820
AllowedIPs = 0.0.0.0/0, ::/0
Configurar para inicializar no boot do cliente Linux
$ sudo wg-quick up wg0
$ sudo systemctl start wg-quick@wg0
Referências
Feito!
Nenhum comentário:
Postar um comentário