OpenVPN se comportando como PPTP

Veja neste artigo como criar uma VPN fácil e segura usando o OpenVPN e o OpenVPN GUI.

[ Hits: 126.746 ]

Por: Pedro Pereira em 26/01/2009 | Blog: http://www.pedropereira.net


Configuração dos clientes



Agora o servidor está pronto para receber conexões e autenticar certificados. Vamos passar à configuração do OpenVPN no cliente.

Primeiro, faça o download e instalação do OpenVPN GUI (openvpn-2.0.9-gui-1.0.3-install.exe). Este arquivo já instala o OpenVPN e a interface gráfica do sistema. O diretório padrão de instalação é o C:\Arquivos de programas\OpenVPN. Vou sempre me referir a este diretório no tutorial. Se você modificar o padrão, faça as devidas substituições.

Primeiramente, vamos passar todos os arquivos de certificados para o cliente. Lembre-se de fazer isso sempre da forma mais segura possível pois se alguém for capaz de interceptar a transmissão e conseguir fazer uma cópia destes arquivos, ele poderá se conectar ao servidor e ter acesso a toda a sua rede interna.

Os arquivos devem ser colocados em C:\Arquivos de Programas\OpenVPN\config. Este diretório deve conter os arquivos ca.crt, dh1024.pem e o certificado do cliente (arquivos com as extensões .crt e .key). Além disso, também é necessário o arquivo de configuração do OpenVPN cliente. O nome não importa, mas é bom deixar a extensão dele como .ovpn. Para criar este arquivo, abra o Bloco de notas e insira o seguinte conteúdo:

Arquivo vol-vpn-client.ovpn:

# endereço do servidor. também pode ser um nome como
# srvopenvpn.empresa.com.br
remote 10.0.0.1

# define qual o protocolo a ser utilizado
proto udp

# porta na qual a conexão será realizada
# no servidor
prot 1194

# define que o OpenVPN neste computador
# deve atuar como um cliente
client

# fala para o OpenVPN aceitar as configurações
# que o servidor enviar
pull

# define o dispositivo que será utilizado
# aqui também: tap para bridge e tun para vpn's
# roteadas.
dev tap

# compressão de dados para otimizar a conexão
comp-lzo

# verifica se a outra ponta está ativa
keepalive 10 120

# define que seremos o cliente no
# handshake tls
tls-client

# onde estão os certificados. lembre-se sempre
# de que você deve colocar o caminho entre aspas
# duplas e com \\ separando os diretórios.
dh "C:\\Arquivos de Programas\\OpenVPN\\config\\dh1024.pem"
ca "C:\\Arquivos de Programas\\OpenVPN\\config\\ca.crt"
cert "C:\\Arquivos de Programas\\OpenVPN\\config\\cliente01.crt"
key "C:\\Arquivos de Programas\\OpenVPN\\config\\cliente01.key"

Pronto. O cliente também já está configurado e pronto para fazer a conexão com o servidor.

Página anterior     Próxima página

Páginas do artigo
   1. Cenário e opções
   2. Instalando o OpenVPN no CentOS 5.2 Linux
   3. Configuração do servidor
   4. Gerando os certificados
   5. Criando a bridge no servidor
   6. Configuração dos clientes
   7. Testando a conexão
   8. Considerações finais
Outros artigos deste autor

Instalando o Ocomon 1.40 no FreeBSD 6.0

VPN com FreeS/WAN

Auditando senhas com John The Ripper

Aplicando patches no kernel

Leitura recomendada

Melhorando a segurança de servidores GNU/Linux (Parte 1)

Os segredos da criptografia com o Gcipher

Uma breve abordagem sobre Criptografia

Wireshark - Artigo

HoneyPots em Linux

  
Comentários
[1] Comentário enviado por paulorvojr em 26/01/2009 - 21:46h

Belo artigo!!,

ja usei muito o openvpn, alias foi a primeira solução de vpn que usei, o openvpn, muito bom recomendo.

o unico chato era que algumas pessoas (usuario chatos) nao queriam usar o cliente do openvpn em suas maquinas windows, ai tive que apelar pro PPTPD, ai o usuário so "disca" igual a uma vpn a la windows microsfot hehe.


recomendo a todos ae!! nao utilizei este artigo, mas pelo que li esta todo correto

parabéns!

[2] Comentário enviado por leandromoreirati em 27/01/2009 - 09:34h

Pogo,
Só nao entendi qual é a função da bridge nesse caso, pois tenhos alguns servidores com open e nao uso bridge nele axei interessante.
Outra coisa para deixa-la acessível na rede basta no script que carrega a bridge colocar um ip da valido na rede local, faço isso em alguns clientes e a maquina se torna uma bride mas com a acessibilide de um host linux da rede.

Att.

Moreira.

[3] Comentário enviado por pogo em 27/01/2009 - 10:43h

Moreira,

A bridge no caso é para que os protocolos que utilizem broadcast não dêem problemas e funcionem corretamente. Sem a bridge, a VPN é roteada e roteadores não fazem forward de broadcasts. Neste caso, o acesso a compartilhamentos com \\servidor\arquivos, por exemplo, não funcionariam (de acordo com o FAQ oficial do OpenVPN).

[]'s

Pedro.

[4] Comentário enviado por elgio em 30/01/2009 - 10:21h

Parabéns pelo artigo. Gostei muito de sua linguagem, explicando cada passo, indo além do que sempre costumamos ver no VOL: mera receita de bolo.

Respondendo ao leo_jfa: uma VPN em modo bridge se comportará logicamente como se fosse um switch. Imagina que tem um server ligado na porta 1 do switch e o outro server na porta 24, mas que o switch na verdade são dois, separados por KMs uma parte do outro e como não tem um cabo quilométrico para ligar as duas partes, se usa a VPN em modo bridge. Tudo que entra na porta 1 do "switch" passa pela VPN para sair na porta 24, tal qual um switch.

EU NÃO RECOMENDO bridge a menos que você realmente precise dela. Em modo roteador é muito mais eficiente pois os broadcasts serão cortados. Nosso amigo aqui explicou bem porque precisava de bridge e porque usou ele. Certíssimo, com a ressalva que compartilhamento de Windows dá para ser feito inter-redes, se houver um servidor de Wins disponível.

No mais, use bridge com moderação! Na maioria dos casos de VPN, usar em modo roteador atende as necessidades.

[5] Comentário enviado por matheus.silva em 31/01/2009 - 15:04h

Fala Pedro blz????

Cara. show de bola o artigo.. com certeza será de grande utilidade pra mim que tenho muitos clientes com servidores windows e uma situação parecida com a sua.

Parabéns!!

Matheus

[6] Comentário enviado por juniorarruda em 15/02/2009 - 10:34h

Parabens pelo artigo

Agora me tira uma dúvida, essa implantaçao seria caso eu quisesse colocar várias estações independentes se conectando diretamente ao servidor da matriz. Mas se em alguma filial eu tiver um servidor firewall, seria melhor eu fazer o firewall se conectar ao servidor VPN da matriz roteando o tráfego da sub-rede da filial para matriz ou fazer a conexão independente nas estação?

Obrigado

[7] Comentário enviado por pogo em 16/02/2009 - 08:46h

Bom dia Júnior,

Se você vai fazer uma VPN entre filiais, é melhor fazer uma VPN roteada entre 2 servidores. Assim, toda a sua rede interna sempre terá acesso à rede da outra filial sem necessidade de cada estação se conectar.

A VPN que descrevi no artigo só é interessante caso os usuários necessitem acessar a VPN quando estão fora de qualquer filial da empresa (como por exemplo em suas casas) e necessitam de algum recurso que só está disponível na rede interna.

Matheus,

Valeu pela força cara! Espero que o texto realmente te ajude =)

[]'s!

[8] Comentário enviado por doldan em 07/03/2009 - 07:49h

Muito bom artigo, para o fim a que se destina.
Tenho uma duvida que ainda não resovi, como posso configurar o openvpn apenas para conectar a uma vpn na matriz, não usamos certificados, no windows usamos o cisco vpnclient, colocamos os logins de acesso e pronto, quero passar essa conexão para o servidor linux debian, mas não consegui os parâmetros para configurar o openvpn.

[9] Comentário enviado por pogo em 07/03/2009 - 13:14h

doldan,

você pode usar as mesmas instruções que estão no texto, mas você não necessariamente vai precisar do openvpn gui. você pode inicializar o openvpn como um serviço no windows (instalando apenas o openvpn, não o openvpn gui).

qualquer dúvida é só deixar um comentário aqui =)

[]'s

pogo

[10] Comentário enviado por tomassoni em 26/03/2009 - 21:34h

Cara, estou com uma duvida para logar mais de um cliente é possível? tenho 9 filiais gostaria de conectar as 9 em um único ponto tem como com OpenVPN eu já dei um breve pesquisada e não encontrei muita coisa a respeito.

Agradeço desde já.

[11] Comentário enviado por pogo em 27/03/2009 - 11:21h

tomassoni,

Tem sim, sem problema nenhum. O OpenVPN não possui limite de clientes (se você não definir isso na confiugração, como foi mostrado no artigo).

[]'s

Pedro

[12] Comentário enviado por eduardo em 30/09/2009 - 15:14h

Boa tarde,

Muito bom o seu artigo, mas gostaria de saber se você tem como me dar um complemento. Preciso ustilizar o openVPN GUI com autenticação também. Pode ser com certificados e senha ou apenas senha.

Que alteração preciso fazer para habilitar a autenticação?

Desde já agradeço,
Abraços

[13] Comentário enviado por cabriocarico em 03/09/2010 - 10:36h

Bom dia,
Caro pogo, eu andei lendo seu artigo e achei muito interessante. Resolví entrar em contato para pedir ajuda na soluçÃO DE UM PROBLEMA.
Eu trabalho com o DEBIAN LENNY, e através de meu servidor, eu conseguime conectar com um VPN, onde o servidor MATRIZ fica em outro lugar.
NO meu servdior FILIAL, eu conectei sem muitos problemas. COnsigo pingar no IP da VPN.
Mas não estou conseguindo rotear para minha rede interna. Assim, ao ver o comentário [7], resolví solicitar sua ajuda.
As minhas estações da rede interna usam WINX XP, com endereços 192.168.0.XXX.
Quando dou tracert IP da VPN, nem se quer chega no meu servidor.
O que devo fazer para conseguir com que minha rede interna consiga pingar no IP da VPN?
OBS: SERVIDOR sem FIREWALL, sem PROXY, com DHCP e compartilhamento (INTERNET).

[14] Comentário enviado por pogo em 03/09/2010 - 11:00h

cabriocarico,

Você tem que verificar 2 detalhes:

* As redes que você está tentando interligar possuem o mesmo IP? Por exemplo, as duas redes são 192.168.0.X?
* Você tem regras no IPTables para permitir o roteamento entre as duas redes? O IP Forward no seu servidor gateway está habilitado?

Qualquer coisa posta aí :)

[]'s
Pedro Pereira

[15] Comentário enviado por cabriocarico em 05/09/2010 - 15:27h

Eu recebí os certificados gerados para eu poder me conectar com uma VPN e assim compartilhar para minha rede interna.
O meu servidor consegue se conectar, autentica a conexão, eu consigo pingar do meu servidor no ip da VPN 10.X.X.X. Sem problemas.
Mas de qualquer PC da minha rede interna eu não consigo pingar no ip da VPN 10.X.X.X.
Segue abaixo minha configuracao:
eth0: 192.168.X.X (VELOX)
eth1 192.168.0.1 (rede interna).
pc da rede interna 192.168.0.5

no arquivo rc.local

Modprobe tun
Openvpn -–daemon -–config /etc/openvpn/config-generic.ovpn
Iptables –t nat –A POSTROUTING –o tun0 –J MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward

Executa o arquivo e não dá erro nenhum. Mas nao compartilha a vpn com minha rede interna.

[16] Comentário enviado por pogo em 05/09/2010 - 15:33h

cabriocarico,

O problema pode ser alguma outra regra no seu firewall que está impedindo a comunicação entre as redes. Reveja as regras e verifique por alguma que esteja negando pacotes de ou para a rede remota.

[]'s
Pedro Pereira

[17] Comentário enviado por cabriocarico em 06/09/2010 - 00:12h

Pogo, o pior que no servidor, ainda não tem nenhum firewall e nem proxy (comentário 13). Mas ainda vou implementar.

[18] Comentário enviado por lflavio_sp em 17/10/2011 - 23:32h

Naum conheço mto de linux mas ja refiz esses passos mas não consegui conectar da essa mensagem sempre e estou precisando implantar urgente na empresa o q pode estar acontencendo ...
eth0 .: 192.168.0.1 local
eth1 .: 10.1.1.2
Na bridge estou colocando eth0 com esse ip
no openvpn bridge 192.168.0.1 255.255.255.0 192.168.0.10 192.168.0.20
on Oct 17 23:26:17 2011 OpenVPN 2.0.9 Win32-MinGW [SSL] [LZO] built on Oct 1 2006
Mon Oct 17 23:26:17 2011 WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm for more info.
Mon Oct 17 23:26:17 2011 LZO compression initialized
Mon Oct 17 23:26:17 2011 UDPv4 link local (bound): [undef]:1194
Mon Oct 17 23:26:17 2011 UDPv4 link remote: 10.1.1.2:1194
log.:
tls error : Cannot Locate HMAC in incomming packet


Netstat mostra a porta 10.1.1.2:1194 mas qdo dou um nmap naum mostra, deveria mostrar ???



Se puder me ajudar agradeço .
Grato


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts