Como configurar um servidor OpenVPN para proteger sua rede

Shutterstock / Elaine333
Hospedar seu próprio servidor VPN pode proteger sua rede, permitindo que você defina firewalls rígidos (para bloquear serviços importantes como SSH), enquanto ainda é capaz de manter o acesso administrativo quando estiver conectado à VPN.
Por que eu precisaria de um servidor VPN?
Uma VPN tradicional como o TunnelBear irá proteger a conexão do seu computador pessoal com a Internet, roteando seus dados por meio de um servidor intermediário. Mas o que isso realmente está fazendo nos bastidores é conectar você a uma rede privada virtual, permitindo que você acesse qualquer coisa que o servidor intermediário possa acessar, incluindo dispositivos na mesma rede.
Isso é muito útil para acessar servidores protegidos por firewalls. Para obter a melhor segurança, você não deve deixar muitas portas abertas em seus servidores. Mas isso leva a um problema quando você bloqueia várias portas — você também não pode acessá-las. E se você tiver um painel de administração de banco de dados hospedado em um de seus servidores? Obviamente, você não deseja que ele seja aberto ao mundo, mas gostaria de poder acessá-lo quando necessário. Você poderia bloquear o acesso ao seu IP, mas e se você tiver vários administradores, e se quiser acessá-lo de uma cafeteria, onde seu IP seria diferente?
Este é o problema que um servidor VPN resolve. Em vez de se conectar diretamente, você deve fazer logon no servidor VPN e conectar-se à sua nuvem privada. A partir daí, você pode fazer o SSH para o servidor de banco de dados ou outro servidor em execução no mesmo VPC com acesso ao primeiro. Agora você pode se comportar como se o tráfego viesse do servidor ao qual está se conectando, o que tornaria o painel de administração visível para você apenas quando conectado por VPN.
Isso também tem a vantagem de proteger sua conexão em lugares como cafeterias, onde sua navegação na Internet não é extremamente segura. Este não é o objetivo principal, mas é bom ter.
Configurar um servidor OpenVPN
Embora você possa instalar a versão de linha de comando do OpenVPN, é bastante complicado e envolve a criação de sua própria autoridade de certificação e gerenciamento de chaves.
O que você deseja é o servidor de acesso OpenVPN, que pode ser instalado como um pacote e vem com uma interface da web para gerenciar as configurações de VPN. É gratuito para duas conexões simultâneas, o que deve ser suficiente para o caso de uso simples de gerenciamento de servidores atrás de um firewall. Se você precisar de mais conexões, a parte VPN real do OpenVPN é gratuita e de código aberto, você apenas terá que configurar tudo manualmente.
Uma coisa a notar é que o servidor de acesso OpenVPN usará a porta 443 para redirecionar o tráfego para a interface da web, hospedada na porta 943. Se você tiver algo em execução nessa porta, você terá que usar porta 943 e redirecione manualmente 443 de volta para seus outros aplicativos ou apenas execute o OpenVPN em um servidor menor hospedado no mesmo VPC, pois é bastante leve com apenas um usuário.
Comece baixando o pacote OpenVPN para sua distribuição. As distros com suporte são Ubuntu, Debian, CentOS e RHEL. Pegue o link do seu pacote e baixe-o da linha de comando com wget:
wget http://swupdate. openvpn. org/as/openvpn-as-2.1.12-Ubuntu16. amd_64. deb
Instale o pacote com dpkg no Ubuntu / Debian:
dpkg -i openvpn-as-2.1.12-Ubuntu16. amd_64. deb
No CentOS / RHEL, você &’ terá que usar rpm -Uvh no arquivo . rpm.
Durante a instalação, o OpenVPN se auto-definirá com as configurações padrão, definirá sua CA privada para proteger sua conexão e informará de onde o serviço da web do cliente está sendo servido. Normalmente, é apenas o endereço IP do seu servidor sobre HTTPS, mas também pode ser servido sem um redirecionamento da porta 943. A IU do administrador é servida em / admin.
A única coisa que o OpenVPN não configura é uma senha. Você &’ deverá definir uma senha para o usuário “ openvpn ”:
passwd openvpn
Você terá que inserir isso duas vezes e poderá alterá-lo a qualquer momento.
Conectando ao OpenVPN
Agora você pode navegar até a IU do administrador, hospedada em:
https: // endereço-ip-seus-servidores / admin
Você pode receber um grande aviso vermelho do Chrome sobre o certificado ser inválido. Isso ocorre porque o seu servidor VPN não é reconhecido como uma autoridade de certificação adequada, o que, obviamente, é verdade. No entanto, como você mesmo o configurou, obviamente você confia no certificado, portanto, pode ignorar esse aviso.
Você será solicitado a fornecer um nome de usuário e uma senha; basta inserir “ openvpn ” e a senha que você definiu:

O método de autenticação padrão é PAM, que usa autenticação baseada em conta local. Crie um novo usuário em “ Configurações do usuário ” guia:

Este é o usuário que você usará para se conectar ao serviço VPN. Para acessá-lo, você pode navegar até o serviço de cliente, hospedado em:
https: // endereço-ip-dos-seus-servidores /
& # 8230; embora possa estar sendo executado na porta 943. Você &’ será solicitado a fornecer seu nome de usuário e senha e terá duas opções de conexão: conectar-se diretamente à VPN ou conectar-se a um cliente. Escolha “ Conectar cliente, ” já que você não está usando isso como uma VPN de navegação na web.
Isso fornecerá um arquivo de configuração (client. ovpn), que você pode usar em qualquer cliente que suporte o protocolo OpenVPN. Você pode usar o próprio cliente do OpenVPN ou um cliente de terceiros, como Pritunl, ou conectar-se manualmente com seu nome de usuário e senha no Windows e macOS.
Assim que você estiver conectado, todo o tráfego da Internet será roteado por meio da VPN, incluindo solicitações para outros servidores. Qualquer conexão SSH que você fizer aparecerá como se o servidor VPN estivesse fazendo uma conexão SSH. Você ainda precisará se certificar de que esses servidores estão configurados para permitir que o servidor VPN os acesse e ainda desejará proteger seus outros servidores com chaves SSH.
Em um serviço como o AWS, algumas portas podem ser fechadas por padrão. Você precisará abrir as portas 443 e 943 no servidor VPN e bloquear as portas em outros servidores para serem acessadas apenas do endereço IP do servidor VPN. A maioria dos serviços, porém, terá 80 e 443 abertos sem a necessidade de configurar um firewall, visto que são usados principalmente para tráfego da web.
Nenhum comentário