Configurando o OpenVPN para múltiplos clientes

Neste artigo explico como configurar o OpenVPN com múltiplos clientes. Cada um utilizando seu próprio certificado gerado através do OpenSSL.

[ Hits: 138.763 ]

Por: Ricardo Franzen em 07/08/2009 | Blog: http://rfranzen.com.br


Introdução, download e instalação do OpenVPN



Este artigo foi originalmente publicado em meu blog pessoal www.rfranzen.com.br.

Muitas vezes precisamos interligar de forma segura diversos pontos que não estão próximos fisicamente, ou, devido a algum imprevisto, acabamos tendo que acessar remotamente e de forma segura os servidores de algum cliente.

Aqui temos aquele mamão com açúcar que a grande maioria sabe de cor e salteado.

Download do OpenVPN:

# wget http://openvpn.net/release/openvpn-2.0.9.tar.gz

Descompactar o conteúdo do arquivo:

# tar -zxvf openvpn-2.0.9.tar.gz

Isto é só para a organização:

# mv openvpn-2.0.9/ /usr/src/

Compilar e pronto:

# cd /usr/src/openvpn-2.0.9
# ./configure --prefix=/usr/local/openvpn
# make && make install


Ou ainda mais simples que tudo isso (acima)...

# apt-get install openvpn

Sou usuário do Debian e do Ubuntu, então por questões de comodidade ;) vou prosseguir como se tivesse instalado via apt.

    Próxima página

Páginas do artigo
   1. Introdução, download e instalação do OpenVPN
   2. Modelo do arquivo openssl.cnf
   3. Gerando os certificados
Outros artigos deste autor

Monitorando seu servidor Jabber

Leitura recomendada

Configurando modems ADSL (Speedy - Velox - BrTurbo) no FeniX Extreme Linux

Como configurar um servidor de FTP de forma simples e com host virtual

Configuração do SSL no Apache

Configuração Linux (Debian) com mínimo de recursos e interface gráfica super leve

Instalação completa do CACIC no Slackware 12.2

  
Comentários
[1] Comentário enviado por edusite em 17/08/2009 - 20:34h

de 0 a 10 dou 5 , amigo faltou algumas coisas para explicar, pra quem é novo em vpn vai precisar juntar seu
artigo com um mais completo ,ex: o que é ca pmg.crt em que momento isso foi gerado?,
vc esta carregando servidor.conf dentro do cliente?
para que serve a criaçao do diretorio ccd
route 10.0.1.0 255.255.255.0
server 10.0.1.0 255.255.255.0

clinte windows?

[2] Comentário enviado por rfranzen em 18/08/2009 - 09:15h

Bom dia edusite. Tenho que concordar e discordar de você.
Realmente, as informações sobre o diretório ccd, que é onde devemos colocar as configurações de ip e rota do cliente caso queiramos atribuir endereços fixos a eles. ex:
ifconfig-push <ip cliente> <mascara> <gateway da vpn/ip do servidor>

O artigo explica perfeitamente como gerar os certificados e onde cada arquivo de configuração é utilizado e o SO em que tudo foi feito, basta ler o artigo.

Abraços.

[3] Comentário enviado por tiagoferla em 01/10/2009 - 17:00h

era examente oq eu precisava!!
os certificado SSL!!
mas amigo, segui todos os seus passos corretamente, mas na hora da criação do segundo certificado para o cliente!!
ele deu um erro!!! copiei o seu arquivo /etc/ssl/openssl.cnf com vc citou no tutorial! e mesmo assim continua dando o mesmo erro!!
se puder me ajudar!! empaquei nessa parte e não consigo sair! ;/

abraços.

[4] Comentário enviado por fernandoborges em 02/10/2009 - 19:42h

É... Beeeem resumido seu artigo. Pra levantar uma VPN robusta, com os recursos necessários pra interligar efetivamente gateways remotos, é preciso bem mais. Mas esse seria o primeiro passo. Como o amigo edusite comentou, é necessário ler artigos mais aprofundados pra completar o seu. Mas... Parabéns mesmo assim!
Em breve estarei colocando meu primeiro artigo aqui no VOL sobre esse tema.
Abraço.

[5] Comentário enviado por rfranzen em 05/10/2009 - 11:56h

Bom dia fernandoborges obrigado pelo comentário.

Não entendi o que você quer dizer com "VPN robusta". A partir do momento que a VPN funciona e seus hosts conseguem se comunicar pela mesma, os detalhes de robustez e segurança são feitos através de firewall e rotas mais detalhadas (o que não está no escopo do artigo).

Também é importante lembrar que este artigo foi escrito em 6 de Outubro de 2006 (link original: www.rfranzen.com.br/2006/10/06/configurando-o-openvpn-para-multiplos-clientes/). Muita coisa mudou em 3 anos de projeto OpenVPN. Inclusive a quantidade de material sobre o assunto, que hoje é incrivelmente superior à existente em 2006.

Podemos dizer até que hoje, é relativamente simples configurar uma VPN simples sem nenhum esforço, apenas um pouco de conhecimento técnico.

Ficaremos no aguardo do seu artigo...
Abraços.

[6] Comentário enviado por removido em 19/10/2009 - 16:03h

Legal Seu Artigo Amigo.
Continue Assim.

[7] Comentário enviado por btavares em 05/11/2009 - 15:38h

Como faço no caso de vpn host-to-server? Ou seja quero que meus vendedores se conectem na nossa rede através de um notebook
e um minimodem 3G, através do VPN GUI, no ipcop eu faço isso com 1 min, mas nunca consegui fazer em um servidor modo texto puro
tenho alguns servidores Debian e Ubuntu Server em clientes, mas nos clientes que precisam de VPN dessa maneira que falei,
uso o IPCOP, foi a solução de VPN mais prã tica que achei.

NO mais, tá excelente seu artigo, parabéns, e fica a sugestão de fazer um artigo que use o VPN GUI instalado em um WinXP "discando"
para o servidor VPN e entrando na rede.

Grande Abraço.

[8] Comentário enviado por nariz em 25/11/2009 - 10:11h

em um ambiente onde o meu cliente é um gateway com uma rede interna atras dele....
ServidorPrincipalVPN-------->ClienteVPN---------->RedeInternaClienteVPN
Como ficaria por exemplo uma rota para que o ServidorPrincipal consiga pingar uma maquina que está na RedeInternaClienteVPN ???
Usando chaves estáticas e com várias interfaces de tunelamento no servidor eu coloco as rotas apontando para interface TUN referente ao cliente e funciona legal.
Usando certificado ainda nao consegui fazer essa comunição...

[9] Comentário enviado por rfranzen em 25/11/2009 - 11:03h

Bom dia nariz,

Você precisa criar nele uma rota para a rede interna do cliente, utilizando como gateway o IP que o cliente vpn possui dentro da rede da vpn...

Não sei se fui claro... :-S

[10] Comentário enviado por cabriocario em 11/12/2009 - 11:01h

Aos participantes: Instalei no meu gateway (debian lenny) o openvpn -apt-get openvpn, coloquei os certifcados que me sao fornecidos dentro de /etc/openvpn, mas nao consigo fazer funcionar. Startei o openvpn tudo ok.
ANalisei o log do openvpn: WARNING: file 'etc/openvpn/arquivo.key' is group or others acessible logo abaixo: canot open file key.
file 'arquivo.key' NO SUCH file is directory.
Me certifiquei do endereco correto no .conf e se o arquivo.key estava no local indicado.
Se alguém tiver uma sguestao. Favor postar.

[11] Comentário enviado por rfranzen em 11/12/2009 - 12:05h

Olá Flavio,
Pelo erro que você está reportando, é só corrigir as permissões do seu certificado... O OpenVPN não está conseguindo ler o arquivo.

[12] Comentário enviado por leo_conectiva009 em 04/04/2010 - 23:38h

Parabéns bela iniciativa e oa vontade....

mas:

Download do OpenVPN: - (FIZ O DOWNLOAD NORMAMENTE)

# wget http://openvpn.net/release/openvpn-2.0.9.tar.gz

Descompactar o conteúdo do arquivo:

# tar -zxvf openvpn-2.0.9.tar.gz - (OK TAMBÉM)

Isto é só para a organização:

# mv openvpn-2.0.9/ /usr/src/ (OK)

Compilar e pronto:

# cd /usr/src/openvpn-2.0.9 - (OK)
# ./configure --prefix=/usr/local/openvpn -(OK)
# make && make install -(NÃO CONSEGUI) "ERRO - make: *** No targets specified and no makefile found. Stop."

Ou ainda mais simples que tudo isso (acima)...

# apt-get install openvpn - tudo OK...

Usuários iniciantes que nem eu, recomendo o nosso amigo APT-GET :p

[13] Comentário enviado por rfranzen em 05/04/2010 - 00:11h

Olá leo_conectiva009, obrigado por comentar...

Realmente, usar o apt-get, geralmente é uma ótima opção, não só para usuários iniciantes, mas também para avançados. Tudo vai depender da aplicação =)

[14] Comentário enviado por removido em 15/07/2010 - 18:31h

Bom artigo cara.
Simples e direto.

Abraço


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts