Este post trata especificamente da configuração um servidor VPN Linux para aceitar conexões de máquinas clientes Windows.
Acesse também os outros posts sobre VPN:
Conectando a uma rede VPN pelo Windows 7
Criar um servidor de VPN no Windows 7 ou Windows Server 2008
Primeiramente vamos instalar o pacote pptpd:
# apt-get install pptpd
Obs.: Este pacote está disponível no CD2 do Debian Squeeze, caso nao possua este CD e não possua este repositório, baixe pelo site e instale manualmente. Para instalar manualmente é necessária a instalação do pacote "bcrelay" antes da instalação do "pptpd".
Download > bcrelay
pptpd
Para instalar rode o comando:
# dpkg -i bcrelay_1.3.4-3_i386.deb
e
# dpkg -i pptpd_1.3.4-3_i386.deb
Após a instalação do pptpd vamos a configuração
Configuração
Agora vamos editar o arquivo pptpd.conf:
# vim /etc/pptpd.conf
Não alteraremos nada, simplesmente adicione essas linhas no final de seu arquivo:
speed 115200
debug
option /etc/ppp/options
localip 10.0.0.1-200
remoteip 10.0.0.210-230
Neste exemplo estou usando uma rede Classe A (10.0.0.x) e em localip 10.0.0.1-200 estou dizendo que esse ips uso para minha rede interna remoteip 10.0.0.210-230 e que esse uso para quem se conectar na minha VPN.
Pronto, agora vamos ao próximo arquivo:
# vim /etc/ppp/options
Apague tudo o que estiver nele e adicione essas linhas:
debug
auth
proxyarp
Pronto, passaremos para o próximo:
# vim /etc/ppp/chap-secrets
O arquivo, por exemplo, ficará da seguinte maneira:
# Secrets for authentication using PAP
# client server secret IP addresses
fred * senha 10.0.0.220
usuario * senha 10.0.0.221
Onde esse usuário tem que estar cadastrado no Linux e sua senha será a mesma. (Lembrando que quando estiver no Windows e for acessar essa VPN o usuário cadastrado no Linux também terá que estar logando no Windows)
Faça o mesmo para o arquivo pap-secrets:
# vim /etc/ppp/pap-secrets
# Secrets for authentication using CHAP
# client server secret IP addresses
fred * senha 10.0.0.220
usuario * senha 10.0.0.221
Obs.: Se você não especificar os endereços IPs nestes dois arquivos, ele receberá pela faixa definida no arquivo "pptpd.conf", mas se você definir os IPs aqui, ele irá descartar a faixa de IPs no arquivo "pptpd.conf" e utilizará os IPs presentes nestes dois ultimos arquivos.
Agora reinicie o pptpd para ativar nossa configuração
# /etc/init.d/pptpd restart
Neste momento a conexão VPN está pronta... Para usuários Windows conectarem no servidor Linux.
Agora é só configurar o Windows para se conectar no Linux. (Acesse Conectando a uma rede VPN pelo Windows 7)
Depois de configurada a VPN, mas sem nenhuma máquina conectada nela, a saída do comando "ifconfig" no servidor Linux, não retornará nada novo, mas assim que conectado algum cliente, essa nova interface será mostrada na saída desse comando:
# ifconfig
ppp0 Link encap: Protocolo Ponto-a-Ponto
inet end.: 10.0.0.1 P-a-P: 10.0.0.220 Masc: 255.255.255.255
UP POINTTOPOINT RUNNING NOARP MULTICAST MTU:1396 Métrica: 1
RX packets: 30 errors: 0 dropped: 0 overruns: 0 frame: 0
TX packets: 8 errors: 0 dropped: 0 overruns: 0 carrier: 0
colisões: 0 txqueuelen: 3
RX bytes: 38610 (37.7 KiB) TX bytes: 98 (98.0 B)
Isto indica "teoricamente" que a VPN está funcionando, para termos certeza, vamos pingar da máquina Windows o servidor Linux.
C:\Users\Fred>ping 10.0.0.1
Disparando 10.0.0.1 com 32 bytes de dados:
Resposta de 10.0.0.1: bytes=32 tempo=8ms TTL=64
Resposta de 10.0.0.1: bytes=32 tempo=6ms TTL=64
Resposta de 10.0.0.1: bytes=32 tempo=5ms TTL=64
Resposta de 10.0.0.1: bytes=32 tempo=8ms TTL=64
Estatísticas do Ping para 10.0.0.1:
Pacotes: Enviados = 4, Recebidos = 4, Perdidos = 0 (0% de perda),
Aproximar um número redondo de vezes em milissegundos:
Mínimo = 5ms, Máximo = 8ms, Média = 6ms
Agora podemos ter certeza de que nossa VPN está funcionando, bastando agora apenas adicionar as rotas.
Baseado e adaptado no post do tucs (Viva o Linux)
Muito obrigado tenho o Sistema a funcionar apenas tive que alterar o seguinte:
ResponderExcluir# nano /etc/sysctl.conf
e tirar o comment a:
net.ipv4.ip_forward=1
Boas a VPN ficou a funcionar com o seu tuturial. Mas depois de reiniciar ja nao funciona. o que se tera passado. Obrigado Estou da tentar ligar-me do macosx ao linux debian. ontem estava a funcionar hoje ja nao.
ResponderExcluircumprimentos
joao