Índice - Tutoriais

OpenVPN: Criando uma VPN básica

Criado 4/abr/2008 às 16h45 por Carlos E. Morimoto

14

Introdução

Uma VPN (Virtual Private Network, ou rede virtual privada) é, como o nome sugere, uma rede virtual, criada para interligar duas redes distantes, através da Internet. Usar uma VPN permite que você compartilhe arquivos e use aplicativos de produtividade e de gerenciamento, como se todos os micros estivessem conectados à mesma rede local. Você pode até mesmo imprimir em impressoras da rede remota, da mesma forma que faria com uma impressora local.

Antigamente, a única forma de interligar redes em dois locais diferentes era usar linhas de frame-relay. Para quem não é dessa época, uma linha de frame-relay oferece um link dedicado de 64 kbits entre dois pontos (a matriz e a filial de uma empresa, por exemplo), com um custo mensal fixo. Você pode combinar várias linhas frame-relay em uma única conexão, de acordo com a necessidade, o problema nesse caso é o preço. Atualmente, existem outras opções de conexões dedicadas e de conexões de alta disponibilidade, oferecidas pelas operadoras, mas elas ficam fora do orçamento da maioria das pequenas e médias empresas.

Usando uma VPN, você pode obter todos os benefícios de ter uma conexão dedicada entre dois pontos usando conexões via ADSL ou cabo, que são muito mais baratas. Dependendo do volume de uso da rede, você pode tanto utilizar a conexão que já tem quanto utilizar uma segunda conexão apenas para a VPN, evitando assim que o tráfego prejudique a navegação dos usuários. Além de interligar duas ou mais redes, a VPN pode (dependendo da configuração) ser acessada também por funcionários trabalhando remotamente.

Todos dados que trafegam através da VPN são encriptados, o que elimina o risco inerente à transmissão via Internet. Naturalmente, nenhuma VPN pode ser considerada "100% segura", já que sempre existe um pequeno risco de alguém conseguir obter acesso aos servidores, de forma a roubar as chaves de encriptação (por exemplo), mas, em uma VPN bem configurada, o risco é realmente muito pequeno. É muito mais provável que um funcionário descontente sabote a rede interna, ou envie informações sigilosas para fora, do que algum invasor consiga efetivamente obter acesso à rede via Internet.

Nesse tópico, estudaremos como criar VPNs usando o OpenVPN. Além de ser mais simples de configurar que a maioria das outras soluções de VPN e ser bastante seguro e flexível, ele possui versões Linux e Windows, o que permite criar túneis interligando máquinas rodando os dois sistemas sem grandes dificuldades.

Outras vantagens são que ele pode ser usado por clientes conectando através de uma conexão compartilhada via NAT (apenas o servidor precisa de portas abertas) e a boa tolerância contra conexões ruins, ou ao uso de conexões com IP dinâmico. A VPN pode ser configurada para ser restabelecida de forma automática em caso de interrupção na conexão, o que torna o link bastante confiável.

Com relação à segurança, o OpenVPN pode ser configurado para utilizar chaves estáticas, que oferecem um nível mediano de segurança, em troca de uma configuração mais simples, ou para utilizar certificados X509, onde a configuração é um pouco mais complexa, mas, em compensação, a segurança é muito maior (bem superior à da maioria das soluções comerciais). Isso permite que você escolha a melhor relação entre praticidade e segurança de acordo com a situação.

:. Leia mais sobre servidores Linux

14 comentáriosPor Carlos E. Morimoto. Revisado 5/out/2010 às 11h24

Comentários

proto port
Criado 27/mar/2012 às 18h54 por José Antunes CN
Posso usar portas diferentes em cada uma das pontas (server/client)? E protocolos (tcp/udp) diferentes em cada uma das pontas?
'remote'
Criado 5/out/2010 às 11h47 por Juan (anônimo)
O que exatamente devo colocar em 'remote'?
Tem algum lugar especifico determinar o nome do servidor, ou deve usar os serviços do no-ip?
Administrador de Redes Linux por Bruno Gomes (anônimo)
Rede interna não pinga na externa
Criado 22/set/2010 às 19h02 por Daniel (anônimo)
Nossa VPN está de pé, funcionando até certo ponto.
Gostariamos de utilizar o tunel para um acesso remoto, porém não conseguimos a não ser que façamos direto do servidor de dominio WINSERVER2000.
Nossa estrutura é a seguinte:

Rede externa(maquinas windows) <------ VPN(link separado dedicado) ------> WINDOWSSERVER ----> Rede Interna (maquinas windows) ----> Proxy(link separado dedicado)

Os computadores da rede externa acessam o compartilhamento da rede interna numa boa, mais na rede interna só consigo acessar a rede externa através do servidor. RRAS está configurada a faixa de IPs do OPENVPN 192.168.1.0.
Não consegui nenhum resultado satisfatório quando a esse problema.
Administrador de Redes Linux por Bruno Gomes (anônimo)
Varios Clientes aceder à VPN
Criado 14/set/2010 às 15h03 por Apaxe
Carlos Morimoto parabéns por mais um excelente tutorial seu.

Eu criei uma VPN com autenticação através de uma chave estática e tudo está a funcionar bem desde que ela só seja acedida por um só cliente.

Como eu necessito que vários clientes acedam à VPN criei neles um ficheiro de configuração igual para todos.

O Problema é que quando eles acedem simultaneamente à VPN só o ultimo a ligar é que consegue comunicar com o servidor e os outros deixam de conseguir ligação com o servidor.

Tentei criar um ficheiro de configuração para cada cliente no directório /etc/openvpn do servidor só que pelo que percebi o servidor não aceita mais do que um ficheiro de configuração.

Pergunto-lhe o que tenho de alterar no servidor ou nos clientes para que seja possível aos clientes comunicarem simultaneamente com servidor através da VPN?

Obrigado
Resposta por Daniel (anônimo)
Administrador de Redes Linux por Bruno Gomes (anônimo)
Erro ao subir segunda interface tun cliente
Criado 29/jun/2011 às 08h18 por thiago torres (anônimo)
Tenho o seguinte cenário:

tenho um um linuxServidor-01 fechando uma vpn com um linux-cliente que funciona corretamente... Mas surgiu uma necessidade de eu ter outra vpn entre o linuxCliente com outra empresa! Então o meu linux remoto seria cliente de 02 vpns, sendo uma que ja está operando normalmente...
Mas quando crio um novo arquivo de vpncliente.conf no linuxCliente e estabeleço a conexão com o LinuxServidor-02 a conexão com o linuxServidor-01 mantem o túnel mas não trafega mais dados....

O que pode ser isso ?
Show de Bola
Criado 1/abr/2011 às 13h22 por Doidão (anônimo)
Perfeito...não tive erro... e deu pra entender perfeitamente.
Problemas
Criado 15/dez/2010 às 12h05 por marcio (anônimo)
Não sei se aqui é o lugar mais indicado para fazer este tipo de pergunta mas estou encontrando um problema com o openvpn.
Estou executando no windows, como cliente. Neste cenário tem um servidor openvpn o qual me comunico através de telnet. Contudo se deslogo do servidor e tento voltar não consigo mais, parece q o servidor telnet não esta mais la.
Obrigado
Não consigo estabilizar a conexão
Criado 4/nov/2010 às 15h42 por Jean Felix (anônimo)
Ola! Primeiramente meus parabens pelo seu topico, está muito bom!

O meu problema é que eu segui o passo-a-passo corretamente.. mas quando um Start da VPN. . ele não consegue estabilizar a conexão, eu ja desativei o firewall do windows e do modem, mas nao obtive sucesso, abri a porta que voce coloca como exemplo mas nao consigo startar! poderia me dar um help?

Desde já eu agradeço!

Jean Felix.
Problemas para levantar openvpn
Criado 22/set/2010 às 16h29 por Hilton Alves (anônimo)
Comprei seu livro Servidores linux e por sinal é um excelente livro.
A questão que quando fui montar uma VPN, usando o openvpn tive alguns problemas:

Wed sep 22 16:06:01 2010 Canoot open file key file 'static.key':No such file or directory (errno=2)

Nao sei onde errei, pois, seguir a risca o tutorial...onde vc explica sobre a implantação da vpn.

E conseguir criar uma vpn simples sem a criptografia da key.
Se possivel receber essa ajuda agradecerei muito
Erro no link para o site do OpenVPN for Windows
Criado 9/set/2010 às 16h04 por Carlos (anônimo)
Olá, é só para informar que o link para o site do OpenVPN for Windows, apesar de estar escrito certo no texto, o link está apontando para http://opnvpn.se/ ao invés de http://openvpn.se (falou a letra em open).

Abraços e parabéns pelo ótimo trabalho !