Falando em túneis e VPNs uma ferramenta muito útil e com uma imensa gama de recurso é o OpenVPN.
O OpenVPN é uma solução de VPN que usa autenticação por chaves o que aumenta muito a segurança da conexão.
Por ser muito flexível e parametrizável, ela pode ser implementada de várias formas. Você pode implementar sua VPN peer to peer (usando tun) ou então pode fazer com que seu micro cliente receba um IP da rede onde você está conectado (usando tap - no Linux isso demanda algumas outras modificações, inclusive no proxy ARP. Se alguém tiver interesse por favor contate-me.). Seja qual for a forma usada, você poderá implementar roteamento para os demais micros de sua rede usando a OpenVPN. Além disso você também pode implementar sua VPN usando TCP ou UDP. A escolha é sua.
A configuração da OpenVPN é bastante simples, sendo relativamente similar no lado cliente e no lado servidor. No lado do servidor você irá utilizar o arquivo server.conf. No lado do client, se você usar Linux, você pode criar um arquivo .conf para cada cliente onde deseje conectar e deixar todos na pasta /etc/openvpn (Debian ou Ubuntu). Na realidade o OpenVpn lê todos os arquivos .conf da pasta e executa os procedimentos de cada um (levanta um servidor, conecta na rede A, conecta na rede B, etc...)
Como a autenticação se faz por chaves, você precisará criar uma autoridade certificadora que irá assinar os certificados de todos os clientes que irão conectar no servidor. Se tiver dúvidas de como fazer isso, leia meu post anterior sobre openssl e geração de certificados. Além disso será necessário gerar uma chave específica também para cada cliente.
E se por ventura, sua máquina cliente rodar Windows, fique tranquilo: para essa plataforma existe o cliente OpenVPN Gui que se aloja na tray area, e que pelo menu de contexto permite que você conecte e desconecte de sua VPN com praticidade. O arquivo de configuração do mesmo é similar ao do Linux, mas a extensão muda de .conf para .opvn. Os parâmetros são exatamente os mesmos só mudando a forma de indicar os caminhos dos certificados e arquivos de log, é claro.
Se for o caso, você também pode instalar seu cliente OpenVPN Windows como um serviço, fazendo com que sua VPN seja automaticamente conectada ao ligar o micro (eu particulamente prefiro subir a mesma quando se faz necessário, seja no Linux ou no Windows).
Como você pode perceber o OpenVPN é uma ferramenta muito útil e com uma vasta lista de features, o que me permitiria escrever páginas e páginas sobre ele. Como em blogs posts muito longos ficam extremamente maçantes e a intenção do mesmo é ter textos curtos com análises de ferramentas em geral, caso você queria mais informações ou somente queria trocar uma idéia me envie um e-mail.
Olá Marcelo, estive procurando informações sobre como configurar o openvpn em minha máquina para trabalhar remotamente. Seu post foi bastante esclarecedor para mim (leigo em openvpn). Parabéns pela iniciativa.
ResponderExcluir