1 VPN entre Unimed Federação do Paraná e Singulares do Paraná Gustavo Kochan Nunes dos Santos Curso de Especialização em Redes e Segurança de Sistemas Pontifícia Universidade Católica do Paraná Curitiba, Fevereiro de 2013. 2 Sumário 1 Introdução ......................................................................................................................... 3 2 Ambiente e Problema ....................................................................................................... 4 3 Solução ............................................................................................................................... 5 4 Configuração ..................................................................................................................... 6 5 Testes ................................................................................................................................ 15 6 Conclusão ......................................................................................................................... 15 7 Referências Bibliográficas ............................................................................................. 16 3 1 Introdução A Unimed Federação do Paraná faz parte de um sistema cooperativista que visa oferecer serviços para as demais Unimeds do Estado, com o crescimento do sistema Unimed, a Federação está preocupada em oferecer serviços com qualidade e segurança. Um dos sistemas disponibilizados pela Federação é o Autorizado On-line, é utilizado em 17 Unimeds, se tratando de um sistema crítico, foi necessária a adequação da conectividade entre a Unimed Federação com as Unimeds do Estado, inicialmente a conexão era realizada somente através de links privativos da Copel, chamado BIOREDE, com este trabalho foi traçada uma estratégia de redundância entre a Federação e as Unimeds, através de uma rede VPN pela internet. Utilizando o [4]OpenVPN que é um software livre e open-source para criar redes privadas virtuais do tipo ponto-a-ponto através de túneis criptografados entre os Firewalls de cada Unimed com a Federação, com uma grande dificuldade de gerenciar as VPN e roteamentos, foi escolhido o [1]PFSense que também é um software livre, baseado no sistema operacional FreeBSD e adaptado para assumir um papel de firewall e roteador, possuindo nativamente uma ferramenta de gerenciamento completa do [3]OpenVPN, foi adota como solução. Com esta solução é possível perder a conectividade em um dos dois links que o Sistema Autorizador continua em pleno funcionamento, sendo que quanto utilizado pela VPN o tempo de resposta do Sistema é um pouco maior, sem grandes impactos. 4 2 Ambiente e Problema O ambiente é formado com 17 Unimeds em um modelo básico de rede, Rede Interna, BIOREDE (Copel) e Internet, como mostra a Figura 1. Figura 1 – Diagrama Básico de Rede Com este ambiente o acesso do Autorizador ao Banco de Dados tem somente uma rota, caso ocorra problemas o sistema fica indisponível. 5 3 Solução A solução proposta é criar acesso alternativo pela internet utilizado VPN, instalando um servidor de OpenVPN para concentrar as conexões das Unimeds, este servidor gerenciará as rotas e mudará automaticamente, caso ocorra algum problema, para o caminho que esteja funcionado, a figura 2 demostra os elementos dispostos no diagrama. Figura 2 – Redundância de Links 6 4 Configuração Para dar inicio ao processo é necessário a criação dos certificados utilizados nas configurações do OpenVpn, a Figura 3 demostra o certificado de autoridade. Figura 3 - Autoridade de certificação Na sequencia foram criados os certificados de cada Singular de acordo com os paramentos abaixo: A Figura 4 e 5 demostram as configurações e certificados criados para cada Singular; Figura 4 – Criação de certificados 7 Figura 5 - Certificados das Singulares Exportando os certificados e suas chaves, distribuindo para cada Singular utilizar na configuração do OpenVPN. Com os certificados criados, configuramos o Servidor do OpenVPN para cada Singular, como exemplo na figura 6. 8 9 Figura 6 - Exemplo de Configuração do OpenVPN A figura 7 demostra as configurações de servidor com as portas UDP para cada Singular. Figura 7 – OpenVPN Server No lado do cliente (Singular) os servidores são Linux: Debian ou RedHat com filtragem de pacotes Iptables, após a instalação do OpenVPN foram ajustados os certificados e chaves, na figura 8 é demostrado o arquivo de configuração do OpenVPN cliente. 10 Figura 8 – Configuração OpenVPN cliente Com o cliente configurado, a interface do OpenVPN se apresenta como na Figura 9. Figura 9 – Interface OpenVPN Cliente Após as configurações do OpenVPN é necessário configurar a filtragem de pacotes, para que o servidor PFsense monitore as interfaces. Na figura 10 mostra na primeira regra o cliente da VPN aceitando requisições ICMP do Servidor PFsense na interface do OpenVPN, a segunda regra permite o acesso do servidor PFsense ao servidor de aplicação em determinadas portas TCP. A Figura 11 representa a regra que permite requisições ICMP do servidor PFsense na interface da COPEL. Figura 10 – Regras iptables OpenVPN Figura 11 – Regras iptables COPEL Com a VPN fechada e a filtragem de pacotes aplicada, configuramos o serviço de rotas no PFsense, sendo que sempre a rota preferencial é da interface da Copel, caso ocorra problemas com este link, automaticamente e alterado para a interface do OpenVPN. A configuração na figura 12 e 13 mostra TIER 1 e TIER 2 que é a ordem dos Links. 11 Figura 12 – Configuração de preferência de rotas Figura 13 – Priorização de Rota 12 Com esta configuração realizada temos um monitoramento via ICMP do servidor PFsense com os clientes (singulares) mostrando o status dos links na figura14. Figura 14 – Monitoramento dos Links Com esta estrutura criada é possível direcionar a conexão tanto para o link da Copel ou para o Link da VPN, colocando em uso este recurso foi direcionado as conexões de rede de um serviço especifico para o servidor PFsense, foi encontrado um problema, quando direcionado para o link da VPN, a conexão de rede do servidor de destino retornava pelo link da Copel, pois a rede de origem faz parte do roteamento padrão, para resolver este problema, foi efetuado o mascaramento do IP de origem pelo IP da VPN como mostra na figura 15, juntamente com a segunda regra demonstrada na Figura 10. 13 Figura 15 – NAT Após estas etapas concluídas é possível realizar testes de roteamento, foi criadas rotas especificas nos servidores que utilizam os serviços necessários demonstrado nas figuras 15 e simulado a queda do link da Copel demonstrado nas figuras 16 e 17. 14 Figura 16 - Rotas no servidor que utiliza a redundância 15 5 Testes Na figura 17 é observado que o acesso do Servidor Autorizador ao Servidor de banco é realizado através do link da Copel. Para realizar o teste de mudança de rota foi bloqueado o ICMP no firewall da Singular do sistema de monitoramento do Pfsense para o Servidor OpenVPN da singular, mostrado na figura 18 a falha do link da Copel e na figura 19 o novo caminho para acesso ao Servidor de banco. Figura 17 – Gerenciamento de rotas Figura 18 – Traçando rotas com os links em funcionamento Figura 19 – Traçando rotas com o link da Copel parado. 6 Conclusão Como resultado deste projeto, concluímos que o cenário oferecido atende as necessidades da infraestrutura, podendo operar com uma falha ou manutenção no link da Copel. 16 7 Referências Bibliográficas [1] http://www.pfsense.org (01/2013) [2] http://doc.pfsense.org/index.php/Tutorials (01/2013) [3] http://openvpn.net/ (01/2013) [4] http://pt.wikipedia.org/wiki/OpenVPN (01/2013)