OpenVpn entre dois mikrotiks pptp

MIKROTIK OPENVPN

Porquê o OpenVPN?

O OpenVPN ganhou popularidade nos últimos 10 anos por vários motivos, sendo o primeiro deles de código aberto, o que significa que ele foi visto por muitas brechas de segurança que criam confiança. A segunda é que ela é suportada por todos os sistemas operacionais (não acho que listá-los porque são praticamente todos os usuários). Ele pode ser executado tanto no protocolo TCP quanto no UDP , assim como em qualquer porta (por exemplo, 443) que dificulte a filtragem em um firewall, o OpenVPN pode ser servidor ecliente e por último, mas não menos importante, ter um bom suporte a certificados. Não sei se existe outra VPN com tantos recursos nela. O pptp ainda está atualizado, usado em todos os lugares, mas é inseguro e fácil de filtrar. Os principais fornecedores de hardware de rede oferecem soluções seguras, mas caras o suficiente para torná-lo não econômico para um escritório dizer 10 pessoas. Assim, chegamos à conclusão de que o alto nível de segurança no segmento de orçamento de pequenas e médias empresas pode ser obtido a partir de roteadores com L2tp / ipsec ou OpenVPN .

Nota: O RouterOS ainda não suporta compactação UDP e LZO .

Existem vários exemplos de soluções OpenVPN na Internet, uma das quais é puramente teórica, a outra é incompleta ou na maioria dos casos o cliente é um sistema operacional de desktop. Na minha humilde prática, no entanto, muitas vezes é a tarefa de dois ou mais sites (vamos chamá-los de escritórios) precisar de um túnel seguro entre eles, com apenas informações privadas fluindo.

Vamos olhar a figura abaixo e pensar sobre isso. Temos três roteadores remotos em algum ponto da Internet da mesma empresa ou organização. Os três roteadores são os três escritórios de uma empresa ou organização que usam um provedor, não importa onde ou como o serviço é entregue. Os três escritórios têm LANs internas de cor verde, essas redes devem ter acesso à Internet por meio de seu provedor local a partir da porta WAN do roteador e acesso a outras LANs dos outros roteadores por meio de um túnel seguro OpenVPN que passa pela Internet em vermelho. Ou seja, o laptop abrirá https://google.com de seu navegador por meio do ISP local e do servidor da empresa http://192.168.100.254 por meio do túnel criptografado seguro do OpenVPN .

Por que isso é necessário? Imagine que o telefone da secretária eletrônica, o arquivo de folha de pagamento em formato pdf , um e-mail interno que lista os sites pornográficos mais recentes e desconhecidos tenham aparecido na Internet e você descobrirá o porquê!

No entanto, antes de tocar o teclado com os dedos trêmulos, precisamos esclarecer algumas coisas sobre o esquema acima. O OpenVPN só irá criptografar o tráfego em um túnel que passa pela Internet grande e ruim (colorido em vermelho), o que significa que o tráfego LAN do laptop para o roteador vermelho não será protegido (colorido em verde), ou seja, se um funcionário do escritório2 for bem-sucedido interceptar e copiar cookie do secretário de um servidor de correio interno da empresa 192.168.100.254 até que as sessões tenham expirado, ele pode ver as coisas que vão quebrar o cabelo dele. No entanto, enquanto a secretária e as habilidades de ataque do tipo intermediário tiverem a secretária, o funcionário do ISP não terá essa chance, pois esse tráfego passará pelo túnel seguro do OpenVPN . Isso é importante saber e ter em mente ao dar uma senha “apenas um minuto” a um funcionário de outra empresa de um escritório próximo no mesmo prédio, respectivamente um fã da secretária.

Se você acha que o que eu escrevi é demais, então você está feliz vivendo no jardim de infância e não sabe como é passar pelos nove círculos do Inferno com um cliente paranóico.

Criando Certificados no Servidor OpenVPN

Especialmente o servidor OpenVPN eu configurarei através de um terminal porque é mais transparente e é mais lógico conectar as etapas de configuração.

Eu crio um certificado de autoridade no RouterOS :

/ certificate

add name = CA common-name = CA organization = ITSERVICE days-valid = 3650 key-usage = key-cert-sign, crl-sign

sign CA ca-crl-host = 192.168.200.1 name = CA

Eu exporte-o localmente para um arquivo (pode ser verificado com / arquivo de impressão)

/ certificate

export certificate CA

Gere certificados de servidor e cliente:

/ certificate

add name = server common-name = server days-valid = 3650

add name = client common-name = client days-valid = 3650

sign server ca = CA name = server

sign client ca = CA name = client

Eu exporto o certificado do cliente localmente (não é necessário exportar o certificado do servidor):

/ certificate

export-certificate export-passphrase = 12345678 client

A imagem abaixo é apenas uma prévia no RouterOS via Winbox se os certificados foram criados em / Certificados e exportados para / lista de arquivos . Se tudo está bem aqui no seu roteador que será um servidor OpenVPN, essas duas janelas devem ficar assim.

Configuração do servidor OpenVPN

Eu crio usuários, senhas e quais endereços os clientes do OpenVPN vão pegar. Eu deliberadamente não uso o pool de endereços, quero estar ciente de qual cliente que endereço ele vai pegar para ter uma política adicional de roteamento e firewall.

/ ppp secret add name = office1 password = 87654321 local-address = 192.168.200.1 remote-address = 192.168.200.2 service = ovpn add name = office2 password = 87654321 local-address = 192.168.200.1 remote-address = 192.168.200.3 service = ovpn

Eu ativo o servidor OpenVPN , selecione o certificado do servidor:

/ interface ovpn-server server set enabled = yes certificate = server auth = sha1 cipher = aes128 port = 1194 netmask = 24 require-client-certificate = yes mode = ip

A figura abaixo é apenas uma pré-visualização no RouterOS via Winbox se as contas de usuário office1 e office2 foram criadas, assim como a ativação e configuração do servidor OpenVPN .

Transferindo o certificado com o Filezilla

Existem três métodos diferentes de transferir o certificado: SFTP , Winbox e FTP que mostrarei aqui.

Baixe o certificado do servidor OpenVPN no meu computador local.

Carregar o certificado do meu computador local para o cliente OpenVPN – office1 .

Configurando o Cliente OpenVPN

Então, eu mudo para o segundo roteador ( office1 ) e vou para sua configuração com o Winbox .

Depois de transferir o certificado com o Filezilla via FTP Files, preciso importá-los sequencialmente para o cliente OpenVPN , primeiro fazendo isso com cert_export_CA.crt , usando cert_export_client.crt e, por último, cert_export_client.key , adicionando o cliente passphrase 12345678. crt no servidor OpenVPN .

Alguns podem perguntar o que significam os sinalizadores do lado esquerdo do nome do certificado e por que eles mudam

# KLAT

K – chave privada

L – crl

A – autoridade

T – confiável

Então, na seção Interface , clico em + e adiciono o cliente OVPN com a seguinte configuração:

As linhas em verde são da seção Log do RouterOS, o que indica claramente que o cliente abriu uma sessão do OpenVPN com o servidor.

Rotas entre roteadores

Como todos os três roteadores têm gateways padrão, eles sabem que todas as redes, exceto aquelas construídas em suas próprias interfaces e LAN , passam pelo ISP local. Isso significa que o servidor OpenVPN pesquisará a rede office1 através de seu ISP local e não através do túnel OpenVPN . Para resolver este problema, ambos os roteadores precisam rotear suas redes através do túnel OpenVPN de acordo, portanto, o tráfego criptografado será apenas entre os escritórios.

O servidor roteia a LAN do cliente.

[ admin @ VPN Server ] > ip route add dst-address = 192.168.89.0 / 24 gateway = 192.168.200.2

O cliente roteia a LAN do servidor.

[ admin @ VPN-Client ] > ip route add dst-address = 192.168.100.0 / 24 gateway = 192.168.200.1

Eu verifico se há conectividade do laptop para o servidor.

[admin@laptop] > ping 192.168.100.254

SEQ HOST                                   SIZE TTL TIME  STATUS

0 192.168.100.254                          56  62 4ms

1 192.168.100.254                          56  62 3ms

2 192.168.100.254                          56  62 4ms

3 192.168.100.254                          56  62 4ms

sent=4 received=4 packet-loss=0% min-rtt=3ms avg-rtt=3ms max-rtt=4ms

Eu verifico os roteadores no caminho do laptop para o servidor.

Fiz um Nat rule no mikrotik client:
Chain srcnat
Dst.address: 192.168.100.0/24 (lan do outro lado)
outinterface: colocar-a-interface-openvpn
action: src-nat
to-address: 192.168.200.2 (ip vpn local do client)

E em MANGLE do client tambem faco um:
action: prerounting
DST address: 192.168.200.0/24 (rede vpn)
action : accept

[admin@laptop] > traceroute  192.168.100.254

# ADDRESS                     LOSS SENT    LAST     AVG    BEST   WORST

1 192.168.89.1                0%    5   0.2ms     0.5     0.2     1.8

2 192.168.200.1               0%    5   3.6ms     3.5     3.1     3.9

3 192.168.100.254             0%    5   3.8ms     4.5     1.7     6.6

Verifique se há velocidade e recursos

Depois de ter assegurado escritórios com uma conexão de internet criptografada e é hora de solenemente champagne o caso, há duas coisas que precisam ser mencionadas.Primeiro, a criptografia de tráfego é um processo matemático que mata o processador do roteador de software (o hardware (3) não pode arcar com o custo porque custa tanto quanto o produto interno bruto de um país sul-africano).

Nas fotos abaixo, dou um exemplo de como a conexão de Internet entre os dois roteadores é uma média de 150 megabits e o túnel OpenVPN tem uma média de 15 megabits.

Então, temos que considerar algumas coisas: – por exemplo, se uma das redes do office1começar a baixar um arquivo de 1 gigabyte do servidor, ele não só baixará dez vezes mais lentamente, mas a conexão morrerá literalmente devido ao tráfego máximo. no canal de túnel do OpenVPN . Neste ponto, se o secretário quiser baixar o arquivo pdf da folha de pagamento, é provável que ele falhe ou, se acontecer, será muito lento.

Consultor de TI, Infraestrutura, Gerenciamento de TI Ver todos os posts por RODRIGO CARRAN OLIVEIRA DOS SANTOS

Deixe um comentário