JanelasMacSoftwareConfiguraçõesSegurançaProdutividadeLinuxAndroidDesempenhoConfiguraçãoApple Tudo

Como configurar um servidor OpenVPN no Debian

Editado 3 Semanas atrás por ExtremeHow Equipe Editorial

DebianOpenVPNConfiguração do ServidorRedesSegurançaLinuxVPNAdministração de SistemasCódigo AbertoInterface de Linha de Comando

Como configurar um servidor OpenVPN no Debian

Tradução atualizada 3 Semanas atrás

Configurar um servidor OpenVPN no Debian pode parecer complicado, mas ao seguir cuidadosamente alguns passos, você pode configurar uma VPN segura. Este guia presume que você tem um conhecimento básico de como usar a linha de comando e que o Debian está instalado. Analisaremos cada etapa em detalhe, fornecendo todos os comandos e configurações necessários para colocar seu servidor OpenVPN em funcionamento. Isso incluirá configuração, ajuste e teste do seu servidor VPN.

1. Pré-requisitos

Antes de começar, certifique-se de que:

sudo apt update && sudo apt upgrade -y

Após certificar-se de que seu sistema está atualizado, o próximo passo é configurar o firewall.

2. Configurar o Firewall Simples (UFW)

Uncomplicated Firewall (UFW) é uma maneira simples de gerenciar configurações de firewall. Se UFW não estiver instalado, use o seguinte comando para instalá-lo:

sudo apt install ufw

Em seguida, permita conexões SSH através do firewall (se ainda não estiver permitido) usando isto:

sudo ufw allow OpenSSH

Permita conexões OpenVPN:

sudo ufw allow 1194/udp

Ative o firewall:

sudo ufw enable

Verifique o status do UFW para garantir que as regras estejam configuradas corretamente:

sudo ufw status

3. Instalando o OpenVPN

Instale o pacote OpenVPN no Debian com o seguinte comando:

sudo apt install openvpn

Após a instalação, é hora de configurar o servidor. Você precisará do pacote easy-rsa para ajudá-lo a criar uma autoridade certificadora e certificados de cliente/servidor.

4. Configurando o Easy-RSA

Baixe o pacote easy-rsa, que contém scripts para gerenciar a infraestrutura de chave pública (PKI):

sudo apt install easy-rsa

Em seguida, copie o script easy-rsa para um novo diretório que será usado para armazenar todas as chaves e certificados:

make-cadir ~/openvpn-ca

Vá para o novo diretório:

cd ~/openvpn-ca

Edite o arquivo 'vars' neste diretório para configurar as variáveis necessárias para a criação de certificados:

nano vars

Aqui estão algumas variáveis-chave para editar:

export KEY_COUNTRY="US" export KEY_PROVINCE="CA" export KEY_CITY="SanFrancisco" export KEY_ORG="Example" export KEY_EMAIL="email@example.com" export KEY_OU="MyOrganizationalUnit"

Salve e saia do editor pressionando CTRL + X, depois Y e pressione Enter.

5. Construindo a Autoridade Certificadora (CA)

Inicie o diretório de Infraestrutura de Chave Pública (PKI):

./easyrsa init-pki

Crie uma Autoridade Certificadora (CA) fazendo o seguinte:

./easyrsa build-ca

Você será solicitado a inserir outros detalhes, como senha e nome comum para a CA. Defina-os conforme sua preferência.

6. Gerando certificados e chaves do servidor

A seguir, crie o certificado e a chave do servidor. Execute:

./easyrsa gen-req server nopass

Este comando gera uma chave privada do servidor chamada 'server.key'.

Agora assine o certificado com a CA:

./easyrsa sign-req server server

Você será solicitado a confirmar a solicitação de assinatura. Digite "yes" e pressione Enter.

7. Gerando certificados e chaves de cliente

Da mesma forma, prepare os certificados para os clientes:

./easyrsa gen-req client1 nopass

Assine o certificado do cliente:

./easyrsa sign-req client client1

Repita estas etapas para criar mais certificados de cliente conforme necessário.

8. Gerar parâmetros Diffie-Hellman e assinatura HMAC

Gere o arquivo Diffie-Hellman:

./easyrsa gen-dh

E gere uma assinatura HMAC estática para fortalecer as capacidades de verificação de integridade TLS do servidor:

openvpn --genkey secret ta.key

9. Configurando o servidor OpenVPN

Crie um novo arquivo de configuração para o servidor OpenVPN:

sudo nano /etc/openvpn/server.conf

Cole a seguinte configuração no arquivo:

port 1194 proto udp dev tun ca ca.crt cert server.crt key server.key dh dh.pem server 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "redirect-gateway def1 bypass-dhcp" push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4" keepalive 10 120 tls-auth ta.key 0 cipher AES-256-CBC user nobody group nogroup persist-key persist-tun status openvpn-status.log verb 3

Certifique-se de que todos os caminhos dos arquivos apontem para os arquivos corretos. Agora salve o arquivo e saia do editor.

10. Ajustar configurações de rede

Você precisa fazer alterações na rede para permitir o encaminhamento de tráfego. Abra `/etc/sysctl.conf`:

sudo nano /etc/sysctl.conf

Descomente a linha:

net.ipv4.ip_forward=1

Aplique as alterações:

sudo sysctl -p

Adicione a regra UFW:

sudo nano /etc/ufw/before.rules

Adicione ao topo do arquivo:

# START OPENVPN RULES *nat :POSTROUTING ACCEPT [0:0] -A POSTROUTING -s 10.8.0.0/8 -o eth0 -j MASQUERADE COMMIT # END OPENVPN RULES

Permita o mascaramento de IP:

sudo nano /etc/default/ufw

Altere `DEFAULT_FORWARD_POLICY` para:

DEFAULT_FORWARD_POLICY="ACCEPT"

Finalmente, aplique as regras do UFW:

sudo ufw allow 1194/udp

Reinicie o UFW:

sudo ufw disable
sudo ufw enable

11. Iniciar e ativar o OpenVPN

Inicie e ative o serviço OpenVPN:

sudo systemctl start openvpn@server
sudo systemctl enable openvpn@server

Verifique o status para garantir que ele esteja funcionando sem erros:

sudo systemctl status openvpn@server

12. Configurando o cliente

A última etapa é configurar o cliente. Instale o cliente OpenVPN executando o comando de instalação específico para o sistema operacional do seu cliente. Em seguida, crie um arquivo de configuração do cliente, geralmente um arquivo `.ovpn` que contém todas as informações do servidor, o certificado do cliente e a chave privada para autenticação.

Crie um novo arquivo de configuração do cliente em sua máquina (client1.ovpn):

client dev tun proto udp remote your-server-ip 1194 resolv-retry infinite nobind persist-key persist-tun remote-cert-tls server cipher AES-256-CBC auth SHA256 auth-nocache tls-auth ta.key 1 verb 3 # paste ca.crt content here # paste client1.crt content here # paste client1.key content here # paste ta.key content here

Transfira os certificados e configure a configuração do cliente na sua máquina cliente.

13. Testando a VPN

Finalmente, é hora de testar. Execute o cliente OpenVPN em sua máquina, usando o arquivo de configuração que você criou. Se tudo estiver configurado corretamente, você deve se conectar sem problemas e seu tráfego de rede será agora roteado pela sua VPN!

Uma vez conectado, verifique seu endereço IP externo para garantir que ele reflete o IP do servidor e não o IP original do seu cliente.

Conclusão

Seguindo estas etapas detalhadas, você instalou com sucesso um servidor OpenVPN em uma máquina Debian. Esta configuração garante comunicação segura para seus dados em uma rede potencialmente insegura. Sempre lembre-se de manter seu servidor e cliente atualizados e monitore constantemente à procura de atualizações de segurança.

Se você encontrar algo errado com o conteúdo do artigo, você pode


Comentários