Notícias
Natal e 2026 com sorte: gire a Roleta da Fortuna Serverspace
Serverspace Black Friday
JH
Joe Harris
setembro 28, 2020
Atualizado novembro 30, 2025

Como Configurar e Conectar o Servidor VPN WireGuard no Ubuntu 20.04

Linux Ubuntu VPN

WireGuard é uma VPN moderna e de alto desempenho, projetada para criar conexões seguras e criptografadas entre servidores e clientes. Neste tutorial, você vai aprender a instalar o servidor WireGuard no Ubuntu 20.04, gerar pares de chaves para autenticação segura, configurar o firewall e preparar os clientes para se conectarem à VPN. Com este passo a passo detalhado, você poderá montar uma rede privada protegida, garantindo a segurança dos dados e facilitando o gerenciamento de conexões remotas de forma prática e confiável.

Instalação do WireGuard

Instale o pacote WireGuard nos computadores servidor e cliente usando este comando:

sudo apt install wireguard

Configuração do sistema

Primeiro, você precisa permitir o tráfego UDP de entrada em alguma porta para a conexão VPN.

sudo ufw allow 61951/udp

Permitir o redirecionamento de pacotes de rede no nível do kernel.

sudo nano /etc/sysctl.conf

Descomente a seguinte linha.

net.ipv4.ip_forward=1

Aplique as alterações.

sudo sysctl -p

Criação de pares de chaves públicas e privadas

Use esse comando para gerar chaves e tornar a chave privada acessível somente ao usuário root por motivos de segurança.

wg genkey | sudo tee /etc/wireguard/server_private.key | wg pubkey | sudo tee /etc/wireguard/server_public.key
sudo chmod 600 /etc/wireguard/server_private.key

Execute a mesma ação no computador do cliente para as chaves client_private.key e client_public.key.
Para ver os valores das chaves, use o comando "cat", por exemplo:

sudo cat /etc/wireguard/server_private.key
cat /etc/wireguard/server_public.key

Configuração do servidor WireGuard

Crie o arquivo de configuração do WireGuard.

sudo nano /etc/wireguard/wg0.conf

Preencha-o com as seguintes linhas:

# Server configuration
[Interface]
PrivateKey = oCH7Z0g+ieQ99KkkR1E5EO22Evs5q75F+ES4O4Oc93E= # The server_private.key value.
Address = 10.5.5.1/24 # Internal IP address of the VPN server.
ListenPort = 61951 # Previously, we opened this port to listen for incoming connections in the firewall.
# Change "enp0s5" to the name of your network interface in the following two settings. This commands configures iptables for WireGuard.
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o enp0s5 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o enp0s5 -j MASQUERADE
# Configurations for the clients. You need to add a [Peer] section for each VPN client.
[Peer]
PublicKey = gsgfB29uYjpuFTCjC1+vHr9M7++MHJcG6Eg4rtuTu34= # client_public.key value.
AllowedIPs = 10.5.5.2/32 # Internal IP address of the VPN client.

Salve e feche esse arquivo. Para iniciar o servidor VPN do WireGuard, digite o comando:

sudo systemctl start wg-quick@wg0

Configure a execução automática da interface após a reinicialização do sistema.

sudo systemctl enable wg-quick@wg0

Configuração do cliente WireGuard

Você também precisa instalar o "resolvconf" no cliente.

sudo apt install resolvconf

Agora, crie o arquivo de configuração do WireGuard na máquina do cliente.

sudo nano /etc/wireguard/wg0.conf

Preencha-o com as seguintes linhas:

# Client configuration
[Interface]
PrivateKey = eLI6PoQf3xhLHu+wlIIME5ullpxxp8U+sYMKHGcv2VI= # The client_private.key value.
Address = 10.5.5.2/24 # IP address of the client's wg0 interface.
DNS = 8.8.8.8
# Server connection configuration
[Peer]
PublicKey = tsGQ8spwOQhpJb4BbhZtunLZEJCcPxUBIaQUpniQ+z4= # The server_public.key value.
AllowedIPs = 0.0.0.0/0 # Traffic for these addresses will be routed through the VPN tunnel. In this example, all addresses are selected.
Endpoint = 82.213.236.27:61951 # Public IP address of our VPN server and port number (ListenPort in the server configuration).
PersistentKeepalive = 25

Salve e feche-o.
Use este comando para estabelecer a conexão VPN:

sudo wg-quick up wg0

Para visualizar as informações da conexão, use este comando:

wg

Saída:

interface: wg0
public key: gsgfB29uYjpuFTCjC1+vHr9M7++MHJcG6Eg4rtuTu34=
private key: (hidden)
listening port: 58208
peer: tsGQ8spwOQhpJb4BbhZtunLZEJCcPxUBIaQUpniQ+z4=
endpoint: 82.213.236.27:61951
allowed ips: 0.0.0.0/0
...

FAQ

  • Preciso abrir uma porta específica no firewall para o WireGuard?
    Sim, você deve permitir o tráfego UDP na porta definida na configuração do servidor (por exemplo, 61951).
  • Como gerar as chaves pública e privada para o servidor e clientes?
    Use o comando wg genkey | sudo tee /etc/wireguard/server_private.key | wg pubkey | sudo tee /etc/wireguard/server_public.key no servidor e o equivalente no cliente.
  • Posso adicionar múltiplos clientes ao WireGuard?
    Sim, basta criar uma seção [Peer] no arquivo de configuração do servidor para cada cliente.
  • Como garantir que o WireGuard inicie automaticamente após reiniciar o servidor?
    Execute sudo systemctl enable wg-quick@wg0 no servidor.
  • É possível usar DNS personalizado no cliente?
    Sim, configure o parâmetro DNS no arquivo de configuração do cliente.

Conclusão

Com este tutorial, você pode instalar e configurar o servidor e clientes WireGuard no Ubuntu 20.04, garantindo conexões VPN seguras e confiáveis. Seguindo as boas práticas, como abrir apenas a porta necessária, gerar corretamente os pares de chaves e usar AllowedIPs adequadamente, você mantém a rede protegida e eficiente. A configuração automática de inicialização do WireGuard garante que a VPN esteja sempre ativa, permitindo o gerenciamento remoto seguro de servidores e a conexão de múltiplos clientes de forma confiável.

Avaliação:
5 fora de 5
Аverage rating : 5
Avaliado por: 2
CEP 01311-930 São Paulo Avenida Paulista, nº 1765, 7º andar, Cj. 72, CV 10172, Bela Vista
+ 55 11 5118-1047
ITGLOBAL.COM BR LTDA

Você também pode gostar...

Usamos cookies para melhorar sua experiência no Serverspace. Ao continuar a navegar em nosso site, você concorda com o Uso de Cookies e com a Política de Privacidade.