Como instalar e configurar o cliente Wireguard no Linux
O WireGuard é uma solução moderna de rede privada virtual (VPN) que se destaca por sua simplicidade, eficiência e segurança. Foi desenvolvido como uma alternativa aos protocolos VPN tradicionais, visando superar limitações em termos de desempenho, facilidade de configuração e segurança.
O intuito dessa artigo é ajudar a instalação no Linux, mas você pode instalar em outro sistema operacional seguindo as instruções deste link.
Instalação do WireGuard Client
Você só vai precisar do seu amigo terminal:
sudo apt install -y wireguard openresolv
Pronto. O artigo poderia acabar aqui hahahaha
Aliases pra facilitar sua vida
Crie os seguintes aliases em seu ~/.bashrc
:
alias wgls="sudo ls /etc/wireguard"
alias wgup="sudo wg-quick up ${1}"
alias wgdown="sudo wg-quick down ${1}"
Os aliases acima são opcionais, mas sem eles, você terá que usar os comandos toda vez que quiser conectar ou desconectar da VPN.
Configurando seu cliente
O arquivo de configuração se parece com isso aqui:
[Interface]
Address = 10.1.2.3/24
DNS = 8.8.8.8, 8.8.4.4
PrivateKey = c2Ugdm9jw6ogZXN0w6EgbGVuZG8gaXNzbywgcGFyYWLDqW5zLCB2b2PDqiBzYWJlIHVzYXIgbyBiYXNlNjQgZGVjb2RlIDpECg==
[Peer]
PublicKey = w6ksIG7Do28gdGVtIG5hZGEgZGVtYWlzIHByYSBzZXIgbGlkbyBhcXVpLCBzb3JyeQo=
PresharedKey = c8OpcmlvLCB2b2PDqiB0ZW50b3UgZGVjb2RhciBlc3NlIGFxdWkgdGFtYsOpbT8gUXVlIG1hc3NhIGhhaGFoYWghISBNZSBjb250YSBub3MgY29tZW50w6FyaW9zCg==
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = 1.2.3.4:51820
PersistentKeepalive = 25
Supondo que você já tem um arquivo de configuração em mãos, que o administrador da VPN já lhe enviou, é hora de salvá-lo no local apropriado.
sudo vim /etc/wireguard/nomedavpn.conf
O nome do arquivo é importante.
O WireGuard utiliza o nome do arquivo de configuração .conf
para determinar o nome da interface de rede virtual que será criada. Essa abordagem oferece uma maneira simples e direta de gerenciar várias interfaces VPN.
Neste artigo, vamos considerar que o nome da VPN é infinite
, mas se quiser, pode nomear de outra forma.
Entretanto, a interface não pode possuir mais de 15 caracteres, portanto, não use nomes muito longos.
Testando a conexão
-
Conecte-se com o comando
wgup ${vpnName}
:wgup infinite
Se tudo der certo, você verá uma série de mensagem semelhantes às abaixo:
[#] ip link add infinite type wireguard [#] wg setconf infinite /dev/fd/63 [#] ip -4 address add 10.1.2.3/24 dev infinite [#] ip link set mtu 1420 up dev infinite [#] resolvconf -a tun.infinite -m 0 -x [#] wg set infinite fwmark 51820 [#] ip -6 route add ::/0 dev infinite table 51820 [#] ip -6 rule add not fwmark 51820 table 51820 [#] ip -6 rule add table main suppress_prefixlength 0 [#] ip6tables-restore -n [#] ip -4 route add 0.0.0.0/0 dev infinite table 51820 [#] ip -4 rule add not fwmark 51820 table 51820 [#] ip -4 rule add table main suppress_prefixlength 0 [#] sysctl -q net.ipv4.conf.all.src_valid_mark=1 [#] iptables-restore -n
-
Verifique seu IP, para confirmar que você está conectado à VPN:
curl ifconfig.me
-
Desconecte-se da VPN
wgdown infinite
Você verá uma saída semelhante à essa:
[#] ip -4 rule delete table 51820 [#] ip -4 rule delete table main suppress_prefixlength 0 [#] ip -6 rule delete table 51820 [#] ip -6 rule delete table main suppress_prefixlength 0 [#] ip link delete dev infinite [#] resolvconf -d tun.infinite -f [#] iptables-restore -n [#] ip6tables-restore -n
Seu IP deve ter voltado ao de seu ISP novamente.
VPNs adicionais
Sempre que quiser configurar uma nova VPN WireGuard, tudo que você precisa fazer é salvar o .conf
em /etc/wireguard
.
Para visualizar seus arquivos de configuração, use o comando wgls
, que nada mais é do que um alias que criamos previamente para listar o conteúdo do diretório /etc/wireguard
.