andregs85
(usa Ubuntu)
Enviado em 10/03/2008 - 22:27h
Tá na mão o tutorial de configuração do openvpn
Introdução
VPN?
Uma VPN é um túnel virtual que roda sobre uma rede pública (geralmente a internet), onde dois ou mais pontos são interligados formando uma única rede. É bastante usada quando se tem uma ou mais filiais que necessitam acessar recursos disponíveis na matriz. Esse acesso se dá de forma criptografada, o que torna a conexão segura.
Softwares para a VPN:
FreeSwan: Utiliza o IPSec[1] para fazer o tunelamento. O FreeSwan é pouco usado pela sua complexidade na implementação e, por sua deficiência ao tratar com roteadores que utilizam o NAT.
Para o proposto, irei utilizar o OpenVPN, que se comparado ao FreeSwan, oferece muito mais flexibilidade na implementação, além de não ter problemas em estruturas que com o gateway fazendo NAT.
Instalação
Instalação
Dados:
OS: Slackware 10.1 (Não é necessário compilar o Kernel)
OPENVPN: OpenVPN-1.8.0.tar.gz
Lzo:lzo-1.0.8.tar.gz
LAN MATRIZ: 192.168.1.0/24
WAN MATRIZ: matriz.no-ip.com
OBS: Para quem não tem um ip público fixo, é essencial configurar o no-ip ou outro software com a mesma finalidade, no servidor da matriz;
LAN FILIAL: 192.168.2.0/24
Instalação:
1. Baixar o pacote do OpenVPN;
2. Baixar a biblioteca de compressão de dados, Lzo;
3. Descompactar a Lzo preferencialmente em /usr/src;
# tar -xvzf lzo-1.0.8.tar.gz
# ./configure
# make
# make install
4. Descompactar o pacote do OpenVPN também em /usr/src;
# tar -xvzf OpenVPN-1.8.0.tar.gz
# ./configure
# make
# make install
Digite o comando "openvpn" para se certificar de que o programa foi instalado.
Pronto, a instalação está concluída. Vamos agora configurar e levantar as pontas do nosso túnel.
Configuração / Matriz
Configuração / Matriz
1. Criar o diretório onde serão salvos os arquivos de configuração:
# mkdir /etc/openvpn
2. Agora vamos gerar a chave de criptografia que será solicitada ao cliente quando a conexão for iniciada:
# openvpn --genkey -secret /etc/openvpn/key
3. Vamos criar o arquivo de configuração para a Matriz:
# touch /etc/openvpn/matriz.conf
4. Edite o arquivo e acrescente o conteúdo abaixo:
# mcedit /etc/openvpn/matriz.conf
# Usar driver TUN para conexão
dev tun
# ip da VPN na matriz 10.1.1.1, ip da filial 10.1.1.2
ifconfig 10.1.1.1 10.1.1.2
# Acessa os arquivos de configuração
cd /etc/openvpn
# Criptografia ativada!
secret key
# Porta para conexão 1194 UDP
port 1194
# Usuário que poderá rodar o serviço
user nobody
# Usar biblioteca Lzo
comp-lzo
# Manter a conexão com a filial; 10 = segundos
ping 10
# Nível de log
verb 3
Configuração / Filial
Configuração / Filial
1. Criar o diretório onde serão salvos os arquivos de configuração:
# mkdir /etc/openvpn
2. Vamos criar o arquivo de configuração para a Filial:
# touch /etc/openvpn/filial.conf
3. Copie a chave "key" da matriz (/etc/openvpn/key) para um disquete e salve-a na máquina da filial em (/etc/openvpn/key);
4. Edite o arquivo e acrescente o conteúdo abaixo:
# mcedit /etc/openvpn/filial.conf
# Usar driver TUN para conexão
dev tun
# IP da VPN na matriz 10.1.1.1, ip da filial 10.1.1.2
ifconfig 10.1.1.2 10.1.1.1
# IP da Matriz (está aqui a importância do no-ip, neste caso)!
remote matriz.no-ip.com
# Acessa os arquivos de configuração
cd /etc/openvpn
# Criptografia ativada!
secret key
# Porta para conexão 1194 UDP
port 1194
# Usuário que poderá rodar o Serviço..
user nobody
# Usar biblioteca Lzo
comp-lzo
# Manter a conexão com a filial; 10 = segundos
ping 10
# Nível de log
verb 3
Levantando as pontas
Levantando as pontas
1. Vamos levantar a Matriz:
# /usr/local/sbin/openvpn --config /etc/openvpn/matriz.conf -daemon
# route add -net 192.168.2.0/24 gw 10.1.1.2
2. Agora vamos levantar a Filial:
# usr/local/sbin/openvpn --config /etc/openvpn/filial.conf -daemon
# route add -net 192.168.1.0/24 gw 10.1.1.1
Levantando na inicialização:
1. Na Matriz:
1.1. Edite o arquivo "rc.local";
# mcedit /etc/rc.d/rc.local
1.2. Acrescente as linhas abaixo:
echo "Starting OpenVPN MATRIZ Tunel Linux"
/usr/local/sbin/openvpn --config /etc/openvpn/matriz.conf --daemon
route add -net 192.168.2.0/24 gw 10.1.1.2
2. Na Filial:
2.1. Edite o arquivo "rc.local";
# mcedit /etc/rc.d/rc.local
2.2. Acrescente as linhas abaixo:
echo "Starting OpenVPN FILIAL Tunel Linux"
/usr/local/sbin/openvpn --config /etc/openvpn/filial.conf --daemon
route add -net 192.168.1.0/24 gw 10.1.1.1
Configuração do Firewall (se houver):
Matriz:
1. Edite o arquivo de firewall:
# mcedit /etc/rc.d/rc.firewall
2. Acrescente as regras:
VPN=tun0
iptables -I INPUT -j ACCEPT -p udp -s 10.1.1.2 --dport 1194
## VPN
iptables -A FORWARD -d 10.1.1.2 -p udp --dport 1194 -j ACCEPT
iptables -A FORWARD -s 10.1.1.2 -p udp --dport 1194 -j ACCEPT
Filial:
1. Edite o arquivo de firewall:
# mcedit /etc/rc.d/rc.firewall
2. Acrescente as regras:
VPN=tun0
iptables -I INPUT -j ACCEPT -p udp -s 10.1.1.1 --dport 1194
## VPN
iptables -A FORWARD -d 10.1.1.1 -p udp --dport 1194 -j ACCEPT
iptables -A FORWARD -s 10.1.1.1 -p udp --dport 1194 -j ACCEPT