Você está na página 1de 18

Criar cliente no Linux para acessar servidor Windows com algum tipo de autenticao de usurio (p2p)

INSTALANDO E CONFIGURANDO O OPENVPN SERVIDOR NO WINDOWS


Utilizamos em nosso laboratrio o Windows XP SP3 para instalao do Openvpn Servidor. Antes de iniciar vamos configurar o windows para mostrar as extenses de arquivo para facilitar nosso trabalho. No Windows Explorer > Ferramentas > Opes de Pasta > Modo de exibio desmarque a opo Ocultar as extenses dos tipos de arquivo conhecidos.

O primeiro passo necessrio para iniciar a configurao ser fazer o download do arquivo openvpn-2.2.2-install.exe no site: http://openvpn.net/index.php/download/communitydownloads.html

Aps o download iremos instalar:

Selecionar a opo Next

Selecionar a opo I Agree

Selecionar a opo Next

Selecionar a opo Install

Selecionar a opo Continuar assim mesmo

Selecionar a opo Continuar assim mesmo

Selecionar a opo Next

Selecionar a opo Finish

Vamos renomear a interface de rede criada pelo OPENVPN:

Clique com o boto direito acima da interface TAP e selecione Renomear

Altere o nome para interfacevpn

Vamos agora criar os certificados para a comunicao entre o servidor e o cliente e efetuar as configuraes do Servidor.

Na guia executar do menu Iniciar digite cmd

Digite cd "c:\Arquivos de programas\OpenVPN\easy-rsa" para entrar na pasta

Vamos iniciar as configuraes de gerao das chaves com os comandos na sequncia: init-config.bat edit vars.bat

Agora necessrio editar as 10 ltimas linhas do arquivo vars.bat conforme imagem acima.

Salve atravs do menu Arquivo > Salvar e depois Selecione Sair

Vamos continuar com os comandos: vars.bat clean-all.bat build-ca.bat Ao executar o comando build-ca.bat necessrio teclar ENTER em cada uma das perguntas. Gerar as chaves e o certificado do servidor:

build-key-server.bat server Ao executar o comando build-key-server.bat necessrio teclar ENTER em cada uma das perguntas exceto em Sign the certificate? [y/n]: e 1 out of 1 certificate requests certified, commit? Responder y e teclar ENTER.

Gerando os parmetros de Diffie Hellman utilizados para troca de informaes: build-dh.bat Aguarde porque este comando demora um pouco.

Gerando uma chave compartilhada para servir de tls: openvpn --genkey --secret keys/compartilhada.key Gerando as chaves e o certificado do cliente: build-key.bat clienteum Nas perguntas commonName e name responda: CLIENTEUM Nas perguntas Sign the certificate? [y/n]: e 1 out of 1 certificate requests certified, commit? Responder y

Vamos agora criar as configuraes do servidor entrando na pasta OpenVPN configuration file directory

Criar o arquivo servidor.ovpn

No momento em que clicamos enter aparece uma pergunta e iremos responder Sim

Agora vamos editar o arquivo servidor.ovpn clicando duas vezes encima do arquivo

Na primeira linha colocaremos a linha: local 172.16.222.129 Observe que o ip o mesmo que consta na interface de rede

O Arquivo servidor.ovpn ficar com o seguinte contedo: local 172.16.222.129 mode server port 1194 dev tap dev-node interfacevpn server 10.10.1.0 255.255.255.0 comp-lzo script-security 3 system auth-user-pass-verify autentica.bat via-env tls-server tls-auth keys/compartilhada.key 0 ca keys/ca.crt cert keys/server.crt key keys/server.key dh keys/dh1024.pem

Criaremos um arquivo autentica.txt com o seguinte contedo: @echo off set n_user=%username% %password%; find /n "%n_user%" lista.txt>resultado.txt for /f "skip=1" %%a in (resultado.txt) do set n=%%a if "%n%"=="----------" exit 1 exit 0

necessrio agora alterar o nome de autentica.txt para autentica.bat e escolher a opo Sim na pergunta

Verifique se o arquivo ficou realmente com o nome autentica.bat. Este arquivo um script responsvel por conferir o login e senha no momento da autenticao.

Criaremos o arquivo lista.txt que ir conter os logins e senhas para conexo a VPN lembrando que o layout login senha;

Precisaremos recortar a pasta keys que fica dentro de easy-ra

E colaremos dentro da pasta config

Como j terminamos a configurao iremos iniciar o servidor clicando com o boto direito no arquivo servidor.ovpn e selecionaremos Start OpenVPN on this config file

Observamos que ao aparecer a linha Inicialization Sequence Completed, o servidor estar em perfeito funcionamento aguardando a conexo do cliente. Caso deseje que o openvpn inicie automaticamente como um servio no windows basta executar no menu iniciar > executar > services.msc. Escolha na lista o servio OpenVPN Service e no tipo de inicializao escolha automtico. Veja figura abaixo.

INSTALANDO E CONFIGURANDO O OPENVPN CLIENTE NO LINUX


Em nosso laboratrio utilizamos uma mquina virtual com somente o modo texto instalado na distribuio Debian Linux 6.0.5.

Verificaremos que o ip do cliente Linux 172.16.222.136 e est na mesma rede que o servidor Windows para que possamos fazer os devidos testes.

Iremos instalar o openvpn atravs do comando: apt-get install -y openvpn

Vamos agora criar o arquivo de configurao: cd /etc/openvpn/ nano openvpn.conf

Neste arquivo openvpn.conf colocaremos o contedo: client dev tap proto udp port 1194 remote 172.16.222.129 tls-client ca keys/ca.crt cert keys/clienteum.crt key keys/clienteum.key tls-auth keys/compartilhada.key 1 auth-user-pass senhas.txt auth-nocache ns-cert-type server nobind keepalive 10 120 persist-key persist-tun comp-lzo log /var/log/openvpn/openvpn.log log-append /var/log/openvpn/openvpn.log

Criaremos o arquivo que ir armazenar o login e senha do usurio: cd /etc/openvpn/ && nano senhas.txt

Colocaremos no arquivo senhas.txt o login e a senha (Um em cada linha): cliente1 senhaum

Copiaremos da pasta c:\Arquivo de programas\openvpn\config\keys\ de nosso servidor OpenVPN os arquivos ca.crt, clienteum.crt, clienteum.csr, clienteum.key e compartilhada.key referente as chaves e o certificado do cliente: cd /etc/openvpn/ && mkdir keys cd keys/ && cp /mnt/pendrive/keys/* .

Editaremos o arquivo /etc/default/openvpn

nano /etc/default/openvpn

Descomentar a linha AUTOSTART=all

Removeremos configuraes antigas, criaremos a pasta de log e iniciaremos o openvpn: rm -rf update-resolv.conf mkdir /var/log/openvpn/ /etc/init.d/openvpn start

Para comprovar que o cliente se conectou com sucesso ao servidor basta executar os comandos: ifconfig # Neste voc ver a interface tap0 caso conecte ping 10.10.1.1 # Este responder ping ao servidor quando estabelecida conexo

Comprovando conexo atravs do servidor

Ao estabelecer conexo na tela do Openvpn do servidor ir aparecer a linha Peer Connection Initiated with e mostrar o ip do cliente conectado que no caso o 172.16.222.136. Se fizermos um teste de ping no ip 10.1.1.2 (ip atribuido automaticamente ao cliente) o mesmo ir responder.