Virtual Private Network – VPN com Certificado Digital

Slides:



Advertisements
Apresentações semelhantes
Gosta de gráficos e estatísticas? Webalizer é perfeito para você!
Advertisements

Universidade Federal do Rio de Janeiro
Ferramentas Livres para Gerência de Redes e Sistemas Finais
Roteamento IP.
Configuração de um servidor FTP
Prof. João Paulo de Brito Gonçalves
Configuração de um servidor SSH
Configuração de um servidor DHCP
1 Saulo O. D. Luiz Laboratório 7 Sistemas embarcados Período
Virtual Private Networks
Configuração TCP-IP.
Esdras Degaspari Leite
Simple Network Management Protocol (SNMP)
GERENCIAMENTO DE REDES
Emitindo seu Certificado Digital
Emitindo seu Certificado Digital
VPN (Virtual Private Network)‏
VPN (Virtual Private Network)‏
TCP/IP básico e outros protocolos
Introdução às Redes Privadas Virtuais - VPN
Camada de Transporte: Portas, Sockets, Aplicações em Rede
Servidor HTTP (Apache)
INTRODUÇÃO O software CommView para WIFI é especialmente projetado para capturar e analisar pacotes de rede wireless. O Wireless a/b/g pega informações.
Aspectos Técnicos Subsecretaria de Informática
Utilitários de Redes Prof. Andréa Chicri Torga Adaptações
Ubuntu Day [ SAMBA ] (Servidor de Compartilhamento de Arquivos e Impressoras) Sistema utilizado: Ubuntu Rodrigo Almeida Costa.
IP SAT O objetivo deste material é capacitar a força de vendas para o entendimento adequado dos conceitos e benefícios do Serviço Business IP Sat.
Painel de controle > Ferramentas administrativas > Serviços
Segurança na Web SSL - Secure Socket Level TLS - Transport Layer Security SET – Secure Electronic Transaction.
Aula 9 - Camada de aplicação
Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012.
Gerencia de Redes Redes de Computadores II
Redes Aula 7 Professor: Marcelo Maia.
FATEC - SENAC PELOTAS Curso Superior de Tecnologia de Redes de Computadores Unidade Curricular: Serviços Multimídia em Redes de Computadores Professor:
VPN (Virtual Private Network)
VPN VPN é uma conexão onde o acesso e a troca de dados somente é permitido a usuários e/ou redes que façam parte de uma comunidade de interesse, que ocorre.
VPN Virtual Private Network.
Universidade Estadual de Santa Cruz - UESC
Disciplina: Redes de Computadores Professora: Rossana Andrade
Rafael Alcantara de Paula SSL e Certificado Digital Belo Horizonte, 31 de Janeiro de 2012.
07/04/2017 Linux Ubuntu 2.
Segurança e Auditoria de Sistemas
09/04/2017 Linux Comandos básicos.
Segurança de rede Exercício 3 Certificados digitais.
FTIN Formação Técnica em Informática Módulo Sistema Proprietário Windows AULA 04 Prof. André Lucio.
Exercícios IPsec e LDAP
PGP – Pretty Good Privacy Privacidade Bastante Boa
Tópicos Avançados em Redes de Computadores Prof. Fabiano Sabha.
Tópicos Avançados em Redes de Computadores
Prof.°: João Henrique Disciplina: SOR II
2008, Edgard Jamhour IPv6 Exercício de Tunelamento 6To4 Edgard Jamhour.
VPN Virtual Private Network.
FTIN Formação Técnica em Informática Módulo Sistema Proprietário Windows AULA 03 Prof. André Lucio.
SISTEMA OPERACIONAL DE CÓDIGO ABERTO (LINUX) Prof. Glauber Alexandre.
T.A.R Prof. Lincoln F. Dantas Aula 2 – Endereçamento IP e Roteamento.
Redes Configurações e teste.
Virtual Private Network – VPN com Certificado Digital Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística.
Execícios de Revisão Redes de Computadores Edgard Jamhour
Versão Professor Emerson Felipe Elementos de informática
OpenVPN Para não precisar esticar um cabo de fibra óptica da matriz até a filial para conectar duas redes internas.
Servidor de Acesso remoto e VPN no Windows Server 2003
IPv6 Redes de Comunicação de Dados Prof. Cristiano José Cecanho.
1 Wireshark um Analisador de Pacotes Marcelo Wurdig - Marçal Pizzi.
UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO CURSO DE CIÊNCIA DA COMPUTAÇÃO Redes de Computadores Ferramenta NTop (Network Traffic Probe) Explorador.
Segurança de Rede Prof. Sales Filho Infra-estrutura de chaves públicas.
Projeto Integrador I Implementação de Servidor de Arquivos Eliane Linhares Mota 1.
Escola de Ciência e Tecnologia Curso: Bacharelado SI Disciplina: Segurança em Redes 1 VPN (Virtual Private Network)
VPN Virtual Private Network. VPNs são redes sobrepostas às redes públicas, mas com a maioria das propriedades de redes privadas......são túneis de criptografia.
Redes de Computadores Endereçamento IP Básico Prof. Sales Filho.
UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO CURSO DE CIÊNCIA DA COMPUTAÇÃO Instalação e análise de gráficos da ferramenta NTop Redes de Computadores.
Transcrição da apresentação:

Virtual Private Network – VPN com Certificado Digital Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Virtual Private Network – VPN com Certificado Digital Prof. João Bosco Mangueira Sobral

Virtual Private Network É simplesmente uma conexão segura em uma rede pública (Schneier2001). VPN é um túnel de comunicação privado e seguro entre dois ou mais dispositivos através de uma rede pública (por exemplo: Internet) VPN é a implementação de uma rede de computadores utilizando a infra-estrutura existente na Internet para interconexão dos diversos computadores. Para: acesso remoto, conexão de lans, conexão de computadores numa intranet (rnp)

Virtual Private Network

Na Prática ... X.509 OpenVPN Biblioteca OpenSSL Open source OpenSSL Segurança SSL/TLS Interface de rede virtual TUN/TAP X.509 – PKI - centralizado Permite ca externa (arquivos e testes). Utiliza biblioteca OpenSSL para cifragem, autenticação, certificados, HMAC. Compressão LZO. Modo chave estática, modo ssl/tls (certificados digitais). Para fazer tunelamento (encapsular pacotes ip dentro de outros): TUN/TAP e ssl. Plataformas: Linux, Windows 2000/XP and higher, OpenBSD, FreeBSD, NetBSD, Mac OS X, and Solaris Suporte DHCP dinâmico. Smart cards... Não é compatível com IPSec, PPTP, L2TP. TCP e UDP Canal de dados e de controle. Peers conectam, trocam certificados digitais, autenticação, negociação TLS, troca de chaves de sessões temporárias, passagem de dados.

Interface de rede virtual TUN/TAP TUN Universal Driver. É um dispositivo de rede ponto-a-ponto virtual. O driver TUN foi projetado como suporte de baixo nível de kernel, para tunelamento IP.

Interface de rede virtual TUN/TAP TAP Universal Driver. É um dispositivo de rede Ethernet. O driver TAP foi projetado como suporte de baixo nível de kernel, para tunelamento Ethernet virtual.

Interface de rede virtual TUN/TAP Propósito: O principal propósito do driver TUN/TAP é o tunelamento.

Interface de rede virtual TUN/TAP Como o driver TUN/TAP trabalha ? Um dispositivo de rede virtual pode ser visto como um simples ponto-a-ponto dispositivo ou um dispositivo Ethernet, ...

Interface de rede virtual TUN/TAP ... ... o qual ao invés de receber pacotes de um meio físico, recebe esses de um programa de usuário, ... ...

Interface de rede virtual TUN/TAP ... ... e ao invés de enviar pacotes via um meio físico, envia esses para um programa de usuário.

Interface de rede virtual TUN/TAP Qual é a diferença entre TUN driver e TAP driver ? TUN trabalha com pacotes IP. TAP trabalha como frames (quadros) Ethernet.

Usando VPN Open VPN sobre Windows Open VPN sobre Linux VPN sem segurança. VPN com segurança: - VPN com chave simétrica - VPN com chave assimétrica

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

Passos Criação da autoridade certificadora (AC) Requisição e emissão dos certificados digitais Geração dos parâmetros Diffie-Hellman Instalação e configuração da VPN Execução e teste da VPN

Criação da AC Edição do arquivo openssl.cnf (Ver modelo de arquivo openssl.cnf à parte) Modelo do arquivo openssl.cnf Assumindo que já se tem o OpenSSL instalado.  Você pode alterar ou até mesmo usar o seu próprio openssl.cnf, mas estou fornecendo este pra deixar tudo bem mais explicado.  Geralmente este arquivo encontra-se em: /etc/ssl/openssl.cnf  Fazer algumas alterações como: diretório de trabalho, caminho para chave privada e certificado digital da CA...

Certificado da AC e sua chave privada Geração da chave privada e do certificado da AC openssl req –new –x509 –keyout ca.key –out ca.crt –days 3650

Requisição e emissão dos certificados digitais Requisição do certificado do servidor VPN: (aqui chamado office) #openssl req –new –keyout office.key –out office.csr Emissão do certificado do servidor VPN openssl ca –out office.crt –in office.csr Senha de proteção para chave, geração da requisição, geração do certificado pela CA (assina, solicita senha da chave da CA). Idem para casa

Certificados de clientes Certificado do cliente (um para cada cliente):  # openssl req -nodes -new -keyout home.key –out home.csr # openssl ca -out home.crt -in home.csr 

Parâmetros Diffie Hellman Criação dos parâmetros #openssl dhparam –out dh1024.pem 1024 Geração parâmetros públicos para Diffie-Hellman

Instalação e Configuração VPN Biblioteca OpenSSL e módulo TUN/TAP devem estar instalados Instalação OpenVPN (já feita) Arquivos de configuração office.conf (servidor VPN) (ver modelo de arquivo servidor VPN) home.conf (cliente VPN) (ver modelo de arquivo cliente VPN) Requisitos: OpenSSL e TUN/TAP. Instalação por tarball: ./configure, make, make install. Criar dois (um para cada peer) arquivos de configuração: onde você coloca endereços do túnel, portas, indica os certificados, as chaves (opções de OpenVPN).

Office.conf É o arquivo de configuração do servidor. Este arquivo deve ficar localizado em /etc/openvpn.  Lembrando que no servidor devemos ter os certificados da unidade certificadora, do servidor e as chaves públicas dos clientes. 

Office.conf port 443 #modifiquei a porta padrão do openvpn proto tcp dev tun ca pmg.crt #certificado da unidade certificadora cert xx.crt #chave pública do cliente key xx.key #chave privada do cliente dh dh1024.pem

Cont. client-config-dir ccd #criar o diretório "ccd" dentro de /etc/openvpn route 10.0.1.0 255.255.255.0 server 10.0.1.0 255.255.255.0 ifconfig-pool-persist ipp.txt keepalive 10 120 comp-lzo persist-key persist-tun status openvpn-status.log verb 3

Modelo do arquivo cliente.conf Em qual das máquinas vai este arquivo? Claro que é na máquina cliente, no diretório /etc/openvpn.  Lembrando que no cliente devemos ter a chave pública da unidade certificadora, do servidor e as chaves pública e privada do próprio cliente. 

home.conf dev tun0 proto tcp remote 111.111.111.11 443 #endereço IP do servidor nobind persist-key persist-tun ca xx.crt #certificado do órgão certificador cert xx.crt #certificado público do cliente key xx.key #chave privada do cliente comp-lzo verb 3

Iniciando o OpenVPN Com essas configurações podemos iniciar o openvpn e sair conectando os clientes. Os endereços IP podem ser atribuí­dos dinamicamente. #openvpn –config /etc/openvpn/servidor.conf --daemon

Execução e Teste da VPN Inicialização da VPN #modprobe tun #openvpn --config office.cnf #openvpn --config home.cnf Modprobe para carregar módulo tun. Testes com ping e programa que envia uma string e recebe de volta. Com VPN, td cifrado, mas executando normalmente, texto plano.

Testando a VPN Teste da VPN Ifconfig Ping Sniffer

Teste ifconfig # ifconfig tun0 tun0 Link encap:Point-to-Point Protocol inet addr:10.0.0.2 P-t-P:10.0.0.1 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1255 Metric:1 RX packets:1383257 errors:0 dropped:0 overruns:0 frame:0 TX packets:1144968 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:10 RX bytes:82865921 (79.0 Mb) TX bytes:383951667 (366.1 Mb) Ok! Se aparecer algo assim, sua VPN, está de pé!!!

Teste com Ping Teste pingando de uma ponta à outra: # ping 10.0.0.1 PING 10.0.0.1 (10.0.0.1) 56(84) bytes of data. 64 bytes from 10.0.0.1: icmp_seq=1 ttl=63 time=11.9 ms 64 bytes from 10.0.0.1: icmp_seq=2 ttl=63 time=6.09 ms 64 bytes from 10.0.0.1: icmp_seq=3 ttl=63 time=5.93 ms 64 bytes from 10.0.0.1: icmp_seq=4 ttl=63 time=8.15 ms 64 bytes from 10.0.0.1: icmp_seq=5 ttl=63 time=6.19 ms Se aparecer algo assim, sua VPN já esta funcionando.

Teste da VPN Tem-se uma VPN com OpenVPN e seu cliente quer uma prova de que seu tráfego está realmente sendo criptografado. Como eu faço para realmente mostrar que o tráfego está sendo criptografado?

Teste de VPN Um das formas é verificar a troca das chaves. Podemos ver pelo /var/log/syslog, pois caso não estivesse acontecendo o túnel não seria fechado.

Usando um sniffer Através do Ethereal mostre a ele que houve a troca das chaves. Usando o Ethereal www.linuxnarede.com.br/artigos/fullnews.php?id=171

Usando tcpdump Pode-se usar o tcpdump para leitura do tráfego e também o iptraf: http://www.onlamp.com/lpt/a/5280 http://www.onlamp.com/lpt/a/1294 Você vai encontrar instruções de como ler o tráfego criptografado com o tcpdump.

Conclusão Podemos concluir que o OpenVPN é um excelente software para interligar dois ou mais pontos com segurança através da internet.

Conclusão Com ele não é necessário deixar portas de SSH abertas em seu firewall. Quem necessitar de acesso remoto pode receber um certificado e, com o OpenVPN, pode acessar os serviços da rede da empresa como se estivesse localmente. 

Referências OpenVPN: http://openvpn.net/ OpenSSL: http://www.openssl.org/ Sniffer APS: http://www.swrtec.de/swrtec/clinux/aps.php http://www.rnp.br/newsgen/9811/vpn.html http://www.vivaolinux.com.br/artigo/VPN-em-Linux-com-OpenVPN/

Easy-rsa Outra alternativa é utilizar o easy-rsa(recomendado para quando for necessário gerar vários certificados). https://help.ubuntu.com/10.04/serverguide/openvpn.html  

Easy-rsa Este é um pequeno pacote de gerenciamento de chaves RSA (RSA key management package), baseado sobre a ferramenta de linha de comando OpenSSL, que pode ser encontrado no sub-diretório easy-rsa da distribuição OpenVPN.