Base de Conhecimento

Como Configurar VPN no Servidor Linux com OpenVPN – Passo a Passo  Imprimir este Artigo

VPN significa Rede Virtual Privada. Um desses softwares VPN de código aberto é o OpenVPN, que protege todas as conexões criando uma conexão segura de ponto a ponto. Usar uma boa VPN para Linux é uma das melhores maneiras de ficar seguro na internet. Neste tutorial, vamos mostrar como configurar VPN no Linux usando o OpenVPN. Transforme sua VPS numa fortaleza de segurança! 

Por Que Configurar VPN no Servidor Linux

A VPN vem com alguns benefícios. Destacamos alguns deles abaixo:

  • Segurança– A VPN oferece uma proteção melhor e mais forte, pois todos os dados são criptografados. Isso fornece segurança adicional em comparação aos firewalls.
  • Acesso Remoto – para assegurar mais segurança, muitas organizações órgãos governamentais e de defesa permitem acesso remoto através de VPN.
  • Criptografia ISP – ISP significa Internet Service Provider. Se você usa uma conexão Wi-Fi pública, o ISP pode ler toda seus dados não criptografada. Usando uma VPN, você pode manter seus dados seguros e criptografados e sem permitir que o ISP o leia.
  • Anonimato – a VPN permite que os usuários mantenham o anonimato enquanto navegam na internet. Os IPs não são rastreados.
  • Troca de IP – VPN permite que os usuários alterem seus IPs e navegadores com segurança. Em alguns casos, isso é necessário em regiões com restrições.
  • Desbloquear sites – alguns sites são bloqueados para algumas regiões geográficas. Um VPN mantém o anonimato e é usado para contornar a censura a sites bloqueados na Internet.
  • Aceleração – alguns ISPs aceleram e ultrapassam a largura de banda com base em conteúdos. Isso pode ser evitado quando se usa uma VPN.

Em um nível mais alto, uma VPN torna suas transações mais seguras usando criptografia.

Agora que já falamos os benefícios de usar VPN, vamos agora mostrar como configurar e instalar o software OpenVPN no Linux. Vamos apresentar como configurar Linux VPN usando OpenVPN e como conectar com o Windows, Android e outros serviços. 

Pré-requisitos

  1. Você deve ter acesso root ou privilégios sudo.
  2. Você não pode ter o OpenVPN pré-instalado.
  3. O firewall deve permitir tráfego TCP via porta 943 e tráfego UDP via porta 1194. Nós recomendamos usar UFW. 

Configurar Servidor VPN Linux com Acesso ao Servidor OpenVPN

Primeiro, vamos atualizar o sistema. Para CentOS, use:

yum -y update

Para Ubuntu e Debian, atualize os indexes usando:

sudo apt update

Para instalar OpenVPN, é preciso um pacote net-tools. Instale agora caso você ainda não tenha isto instalado. O pacote net-tools contém ifcfg que é necessário para instalação do servidor OpenVPN.

Para o CentOS, você pode instalar usando:

sudo yum install net-tools

Para Ubuntu e Debian, você pode usar o comando abaixo:

sudo apt install net-tools

Você pode fazer download de um cliente VPN para sua distribuição do site OpenVPN. Você pode pegar um link aqui e usar junto com o comando curl. Abaixo, mostramos um comando curl simples para Ubuntu:

curl -O http://swupdate.openvpn.org/as/openvpn-as-2.5.2-Debian9.amd_64.deb

Para o centOS, o comando curl será assim:

curl -O http://swupdate.openvpn.org/as/openvpn-as-2.7.3-CentOS7.x86_64.rpm

Aqui, você pode adicionar a URL a sua distribuição. Para validar que foi feito download da  instalação correta, você pode usar o comando abaixo:

sha256sum openvpn-as-*

Isto irá imprimir a soma de verificação como mostrado abaixo:

6354ac41be811829e60b028d3a7a527e839232d7f782c1d29bb4d8bd32bf24d5  openvpn-as-2.7.3-CentOS7.x86_64.rpm

Você pode verificar o download desse número binário com o número providenciado no site. Se a verificação confere, instale o binário baixado anteriormente.

Para instalar no CentOS, use:

sudo rpm --install openvpn-as-*.rpm

De forma similar, no Ubuntu e no Debian você pode usar o comando abaixo na linha de comando:

sudo dpkg -i openvpn-as-*.deb

Isto levará algum tempo para instalar. Assim que a instalação estiver completa, os detalhes de Admin e Client UI serão exibidos. Por padrão, um usuário openvpn será criado durante a instalação. Você pode definir  a senha para este usuário usando:

passwd openvpn

Isso vai definir uma nova senha. Guarde esta senha pois a mesma será usada para fazer login. Use a URL admin para fazer login e finalize o processo de instalação.

No nosso caso, a URL admin é https://127.0.0.1:943/admin.

Normalmente a URL é simplesmente seu endereço VPS, a porta :943 com /admin no final, como no exemplo.

Você verá uma tela como esta:

tela de login login open vpn

O nome de usuário – como mencionamos antes – é openvpn e a senha é a que você acabou de definir para este usuário. Assim que fizer o login, você poderá ver a página de termos Termos e Condições. Leia e pressione o botão Agree (Concordar) para prosseguir. A próxima página vai te fornecer os detalhes de configuração e indicar o status do servidor.

As configurações padrões já são boas o suficiente e  podem permitir MacOS, Linux, Windows, Android, e iOS para conectar com o servidor Linux VPN. Caso você queira alterar alguma configuração, clique em Apply e Update Running Server para ativar as alterações.

Aqui, completamos a instalação padrão. Em seguida, vamos configurar OpenVPN.

Configurar Servidor Linux VPS Server com OpenVPN para Tunelamento

Habilite o encaminhamento de IP em seu kernel usando o comando abaixo:

echo 'net.ipv4.ip_forward=1' | sudo tee -a /etc/sysctl.d/99-sysctl.conf

Isso permite o encaminhamento de tráfego através do IPv4. Para aplicar essas mudanças, use o comando abaixo:

sudo sysctl -p

O OpenVPN não suporta túneis simultâneos em IPv6 e IPv4, portanto, você pode desabilitar o IPv6 usando:

sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1

sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1

Para desabilitar o IPv6 manualmente, adicione os parâmetros abaixo a serem definidos na inicialização.

Esses parâmetros devem ser adicionados ao arquivo 99-sysctl.conf localizado em /etc/sysctl.d/.

Basta usar o comando cd para acessar a pasta e usar seu editor de texto preferido para editar o arquivo. Lembre-se de salvar as alterações feitas!

net.ipv6.conf.all.disable_ipv6 = 1

net.ipv6.conf.default.disable_ipv6 = 1

net.ipv6.conf.lo.disable_ipv6 = 1

net.ipv6.conf.eth0.disable_ipv6 = 1

Em seguida, você pode ativar as novas configurações usando:

sysctl -p

Em seguida, nos hosts de arquivos localizados em /etc/ comente a linha de resolução IPv6 mostrada abaixo:

#::1     localhost ip6-localhost ip6-loopback

Com isso, desativamos o IPv6. Em seguida, faça login novamente na URL do servidor Admin e vá para as configurações da VPN.

aba de configurações de vpn no openvpn

Na seção Routing, a opção Should VPN clients have access to private subnets (non-public networks on the server side)? (em português: Os clientes VPN devem ter acesso a sub-redes privadas (redes não públicas no lado do servidor)? deve ser definido como No (Não):

configuraçõesde routing no openvpn

A opção Should client Internet traffic be routed through the VPN? (em português: O tráfego da Internet do cliente deve ser roteado através da VPN?) deve ser definida como Yes (Sim).

configurações das opções de tráfego da openvpn

Para evitar qualquer vazamento de DNS, altere as configurações do resolvedor de DNS. Selecione a opção “Have clients to use the same DNS servers as the Access Server host”.

configurações de dns na vpn

Salve essas configurações e não se esqueça de clicar em Atualizar servidor em execução: Update Running Server. Você pode reiniciar o servidor OpenVPN usando a guia Status no Admin Console. A partir daqui, você pode parar o servidor e iniciá-lo novamente.

painel de controle principal do open vpn

Isso conclui nossa configuração para o servidor OpenVPN. Em seguida, podemos verificar as instalações do cliente.

Como Conectar seu Servidor VPS Linux a Outros Dispositivos Com OpenVPN

Agora que seu servidor está funcionando, podemos conectar alguns dispositivos a ele! Vamos mostrar as opções mais populares do sistema operacional.

Como Instalar e Conectar o Cliente OpenVPN para Windows

Abra a URL do cliente OpenVPN, você poderá mostrar links para downloads de clientes para diferentes sistemas operacionais.

Escolha a versão do Windows e execute a instalação.

Quando a instalação estiver concluída, será solicitado a você o nome de usuário e a senha do OpenVPN. O IP do servidor será preenchido automaticamente.

Você pode usar o ícone OpenVPN na barra de tarefas do Windows para desconectar, reconectar e exibir o status da conexão.

Como Instalar e Conectar o Cliente OpenVPN para MacOS

Conecte-se à UI do Cliente OpenVPN e clique no link para baixar o software OpenVPN para MacOS. Quando o pacote for baixado, uma janela será aberta com o ícone do pacote do instalador.

Siga o procedimento padrão de instalação do aplicativo MacOS.

Clique duas vezes no ícone deste instalador e clique em Open (Abrir) para executar a instalação.

Quando a instalação estiver concluída, você poderá ver o ícone do OpenVPN na barra de tarefas do macOS. Você pode clicar com o botão direito nesse ícone para ver as opções. A partir daqui você pode se conectar ao OpenVPN.

Depois de clicar na opção Connect/ Conectar, você verá um popup pedindo o nome de usuário e a senha do OpenVPN. Aqui você deve inserir as credenciais e clicar em Connect (Conectar) para estabelecer a conexão do servidor VPN Linux.

Como Instalar e Conectar Cliente OpenVPN Para Linux

A instalação do cliente para o Linux é um pouco diferente. Baixe e instale o software cliente OpenVPN no CentOS usando o comando abaixo:

sudo yum install OpenVPN

Da mesma forma, você pode instalar o software cliente OpenVPN no Debian ou no Ubuntu usando o comando abaixo:

sudo apt-get install openvpn

Abra a UI do cliente OpenVPN e faça o download do perfil apropriado para seu sistema operacional. Como alternativa, você pode usar o comando wget ou curl e fornecer a URL para baixar o software.

Copie o perfil baixado para o local /etc/openvpn e renomeie-o para client.conf. Você pode iniciar o serviço OpenVPN Tunnel, onde será solicitado o nome de usuário e a senha. Você pode iniciar a operação usando:

sudo service openvpn start

Você pode usar ipconfig ou ip addr para visualizar as conexões de rede. Quando a interface VPN estiver disponível, você verá uma interface tun0 adicionada à lista existente mostrada na saída.

Como Instalar e Conectar Cliente OpenVPN para Android

Primeiro, acesse a Google Play Store e pesquise por OpenVPN Connect. Instale o aplicativo OpenVPN Connect.

Uma vez aberto, ele exibirá três opções – Private Tunnel, Access Server e OVPN Profile.

Selecione Access Server e preencha todos os detalhes manualmente:

  • Title (Título) – define seu nome para a conexão.
  • Access Server Hostname – o IP do seu servidor VPN Linux.
  • Port – a porta 934 do seu servidor VPN Linux.
  • Username (Nome de usuário) – o nome de usuário definido no seu servidor – openvpn por padrão.
  • Password (Senha) – a senha que você definiu no console enquanto configurava o servidor VPN Linux no ambiente do terminal.

Ou, como alternativa, você pode importar o arquivo .ovpn para o perfil. Você pode ter o perfil de conexão da UI do cliente.

Como Instalar e Conectar Cliente OpenVPN Client para iOS

Semelhante aos dispositivos Android, você pode instalar o software OpenVPN na App Store.

Conclua a instalação e abra o aplicativo recém-instalado. Ele pedirá que você preencha as informações do perfil ou faça o upload do arquivo de perfil igual na versão do Android.

Depois de adicionar, você pode começar a usar o OpenVPN no seu iPhone ou iPad.

Configurações de Compactação do Servidor VPN Linux

Caso você esteja conectado à VPN e não consiga navegar na Internet, você pode verificar os logs do OpenVPN em /var/log/openvpnas.log no seu VPS. Caso você encontre entradas semelhantes à mostrada abaixo, é provável que você tenha problemas de compactação:

2019-03-23 18:24:05+0800 [-] OVPN 11 OUT: 'Mon Mar 23 08:59:05 2016 guest/123.45.67.89:55385 Bad compression stub decompression header byte: 251'

Para resolver isso, você pode desativar a compactação. Isso pode ser feito na interface do usuário do administrador. Abra a UI – Interface do Administrador – e clique em VPN avançada.

Vá em Default Compression Settings. Aqui, desabilite a opção Support compression on client VPN connections.

Aplique as alterações e clique na opção Update Running Server. O problema deve estar resolvido.

Adicionar Usuários ao Servidor Linux VPN Executando OpenVPN

O cliente OpenVPN gratuito suporta dois usuários. Para criar mais usuários, você precisa selecionar qualquer um dos planos pagos. Você pode adicionar outros usuários a partir da interface do usuário do administrador. Navegue até a guia User management e clique no link User Permissions.

Insira o novo nome do usuário como mostrado abaixo:

configurações de usuário no openvpn

Para este novo usuário, defina configurações adicionais clicando no link More Settings. Aqui você pode fornecer a senha e outros detalhes.

aba de mais configurações no openvpn

Salve essas configurações e clique na opção Update Running Server.

Configurar Perfis de Auto-login para Servidor VPN Linux com o OpenVPN

Com o OpenVPN, você também pode configurar perfis de login automático. Isso fará com que todo o tráfego não local seja roteado automaticamente por meio de uma VPN. Caso você queira habilitar ou desabilitar manualmente a VPN, você pode usar os perfis User ou Server Locked.

Para definir o login automático, abra a UI do administrador e selecione o link User Permissions. Aqui você pode marcar a caixa de seleção para Permitir login automático > Allow Auto-login.

Como Testar um Servidor VPN Linux Executando o OpenVPN

Para testar se o OpenVPN funciona como esperado, conecte o cliente VPN e verifique seu endereço IP. Você pode usar o site de teste de vazamento de DNS do navegador. Ele deve mostrar o endereço IPv4 do servidor OpenVPN.

Em seguida, você pode escolher o Extended Test. O teste deve gerar os IPs para o resolvedor de DNS escolhido para o seu dispositivo cliente.

Você também pode confirmar se o tráfego não está usando o IPv6. Para verificar isso, você pode usar o site de teste do IPv6. Isso deve exibir novamente o IP do servidor e mostrará uma mensagem informando que nenhum endereço IPv6 foi detectado.

Resumo

Neste tutorial, você aprendeu como configurar VPN para um servidor Linux executando o OpenVPN. E como conectá-lo usando vários clientes. Isso inclui os sistemas operacionais Windows, Linux, Android, iPhone ou iPad e MacOS.

Agora que você conhece todos os detalhes básicos, você pode navegar na Internet com segurança com o seu novo servidor Linux VPN. Para saber mais, você pode ler o manual oficial do OpenVPN, que pode ser encontrado na interface do administrador.

Terminamos aqui sua primeira configuração de OpenVPN cliente-servidor.

Esta resposta lhe foi útil?

Veja também

Como instalar e usar o PostgreSQL no CentOS 7
Introdução Os sistemas relacionais de gerenciamento de banco de dados são um componente...
Configuração avançada com Exim (SMTP) no WHM/cPanel
Em seu servidor VPS, é possível realizar configurações customizadas no Exim (servidor...
Monitorando tráfego no servidor com BWM-NG Tutorial
Uma excelente ferramente para monitoramento em tempo real de tráfego em um servidor é o BWM-NG...
Qual a porta SSH do servidor ?
A porta de SSH para servidores VPS é 22
Como criar DNS personalizados NS1 e NS2.NOMEDOSITE.COM.BR no seu servidor VPS
Para isso, seu servidor precisará ter pelo menos 2 IPs. Resumo do passo a passo: 1) Anote os...