Pular para o conteúdo

Implementação de VPN com OpenVPN

As VPNs, ou Virtual Private Networks, são túneis virtuais que podem ser estabelecidos sob a internet, onde dois servidores são interligados de forma segura formando, dessa forma, uma rede única.
Daniel Romero infoslack
Hits: 50.232 Categoria: Linux Subcategoria: Internet
  • Indicar
  • Impressora
  • Denunciar

Parte 2: Configuração

Inicialmente vamos criar um usuário e um grupo chamados openvpn:

# groupadd openvpn
# useradd -g openvpn -s /dev/null openvpn >/dev/null 2>&1
# passwd -l


Em seguida vamos criar o diretório onde iremos armazenar os arquivos de configuração da VPN na matriz:

# mkdir /etc/openvpn-matriz

O próximo passo é gerar a chave criptográfica estática:

# openvpn --genkey -secret /etc/openvpn-matriz/chave

Agora vamos criar o script matriz.conf com o seguinte conteúdo:

# vi /etc/openvpn/matriz.conf

# Usar como interface o driver TUN
dev tun

# 10.0.0.1 IP da matriz
# 10.0.0.2 IP remoto, da filial
ifconfig 10.0.0.1 10.0.0.2

# Entra no diretório onde se encontram
# os arquivos de configuração
cd /etc/openvpn-matriz

# Indica que esse túnel possui uma
# chave criptográfica
secret chave

# OpenVPN usa a porta 5000/UDP por
# padrão. Cada túnel do OpenVPN deve
# usar uma porta diferente.
port 5000

# Usuário e grupo que irão executar o
# daemon do OpenVPN
user openvpn
group openvpn

# Especifica uma MTU comum entre as
# partes - MATRIZ e FILIAL
tun-mtu 1500
tun-mtu-extra 32

# Usa a biblioteca lzo para
# compactação dos dados que irão
# trafegar no túnel
comp-lzo

# Envia um ping via UDP para a parte
# remota a cada 15 segundos para
# manter a conexão de pé em firewall
# statefull.
ping 15

# Nível de log
verb 3

Agora vamos iniciar a conexão no servidor da matriz executando o comando abaixo:

# openvpn --config /etc/openvpn/matriz.conf -daemon

Para verificar se a interface tun0 foi inicializada com sucesso:

# ifconfig tun0

Para configurar o servidor da filial, repita o processo de download, instalação e configuração exatamente da mesma forma como foi feito na matriz. Em seguida copie a chave criptográfica da matriz para a filial com o seguinte comando:

# scp /etc/openvpn-matriz/chave ip_filial:/etc/openvpn-filial

Por fim, crie o script filial.conf com o conteúdo idêntico ao do arquivo matriz.conf, alterando somente as seguintes linhas:

ifconfig 10.0.0.2 10.0.0.1

# ESCOLHA UMA DAS POSSIBILIDADES ABAIXO NUNCA AS DUAS!!!!
remote 201.43.56.5 (se for IP fixo)
remote domain.com.br (IP dinâmico)

# Entra no diretório onde se encontram
# os arquivos de configuração
cd /etc/openvpn-filial

Iniciar a conexão no servidor da filial executando o comando abaixo:

# openvpn --config /etc/openvpn-filial/filial.conf -daemon

Para verificar se a interface tun0 foi carregada com sucesso:

# ifconfig tun0

Na filial, faça o teste com um ping:

$ ping 10.0.0.1

   1. Pacotes necessários e instalação
   2. Configuração
   3. Configurando o Samba e finalizando

Instalando o Postfix no Slackware

Internet 3G no GNU/Linux

Ubuntu Completo e Total

Compartilhando Internet 3G entre notebook e smartphone Android no Linux

Compartilhar uma conexão via rádio na rede interna

Manter autenticado o Velox da Telemar

#1 Comentário enviado por edisonsousa em 24/12/2006 - 18:54h
Legal o seu tutorial, já dá para ter uma boa noção, a partir de agora cada um por si.
#2 Comentário enviado por cleitão em 12/02/2007 - 16:19h
Boa tarde Caro amigo Jedi,

me explica uma coisa eu tenho que ter duas placas de rede em cada micro certo?? Uma vai ficar a eth0 e a outro eth1 e tun. Quais ips devo configurar em cada um...

Desde já agradeço a atenção...
#3 Comentário enviado por infoslack em 13/02/2007 - 14:36h
Bem amigo.. nos meus testes eu nao usei duas placas de rede, pois não foram necessárias. A interface tun0 é virtual não necessita de uma segunda placa de rede.
#4 Comentário enviado por slackware_linux em 31/05/2007 - 12:17h
Como faço pra gerar uma chave assimetrica no openvpn? Tem um jeito mais facil de gerar sem usar o easy-rsa?

Arnone
#5 Comentário enviado por slackware_linux em 31/05/2007 - 12:18h
Como faço pra gerar uma chave assimetrica no openvpn? Tem um jeito mais facil de gerar sem usar o easy-rsa?

Arnone
#6 Comentário enviado por infoslack em 31/05/2007 - 15:28h
Bom amigo, eu só conheço esse método que descrevi acima, boa pergunta a sua irei pesquisar a respeito.
#7 Comentário enviado por antonioleite em 26/08/2007 - 17:43h
Amigo ja procurei por diversos artigos e livros e nada é o seguinte: Quando eu executo o ifconfig tun0 da o seguinte erro: TUN0: ERRO obtendo informações da interface: %s dispositivo não encontrado.
Só que eu ja reinstalei o Debian umas 1000 vezes e carrego o TUN "modprobe tun" o mesmo esta presente quando dou lsmod e sempre paro ai. Pergunto o que estou fazendo de errado se segui todos os passos acima, eu preciso estar com o outro computador conectado na filial para o TUN subir? Uma ajudinha por favor... Obrigado
#8 Comentário enviado por btavares em 30/08/2007 - 15:09h
Com seu turorial consigo fazer uma VPN entre matriz e filial, onde as duas tem velox, são em cidades diferentes, é possível fazer isso com seu tutorial?
#9 Comentário enviado por edivaldocaj em 14/12/2007 - 16:58h
muito bom artigo...parabens
#10 Comentário enviado por edipo.magrelo em 31/01/2008 - 17:15h
muito bom artigo..faltou alguns hifens ai em duas linhas..mais ta tudo certinho...artigo bom e funcional
#11 Comentário enviado por removido em 18/05/2009 - 08:59h
Olá amigo eu instalei do jeito que ta no artigo, mas ta dando esse erro ao gerar a chave:

Unrecognized option or missing parameter(s) in [CMD-LINE]:1: genkey-secret (2.0.9)
Use --help for more information.


Você pode me dizer como resolver?

Alexandre

#12 Comentário enviado por NUNESND em 25/06/2009 - 00:00h
Grande infoslack

seguinte, estou com o mesmo problema de dispositivo virtual tun que o amigo antonioleite está,

você teria como dar algum parâmetro a ser seguido?

grato

Contribuir com comentário

Entre na sua conta para comentar.