Boas práticas de segurança para roteadores Mikrotik

De Wiki BPF
Ir para: navegação, pesquisa

Descrição

Esta página objetiva explicar algumas medidas básicas de segurança que se aplicam à maioria dos Mikrotiks usados em Provedores de Internet.

Advertência: As regras aqui expostas devem ser cautelosamente lidas e entendidas, e se necessário modificadas, antes de serem aplicadas em sua rede.

ACLs

As listas de controle de acesso aos serviços do Mikrotik (Winbox, Telnet, SSH, web etc) podem ser encontradas no menu IP > Services.

Recomendamos fortemente que:

  1. O acesso à cada um dos serviços seja restrito apenas às suas redes confiáveis;
  2. Os serviços não utilizados sejam desabilitados.

Para um equipamento que é acessado apenas pelo navegador e pelo Winbox a partir da rede 10.1.2.0/24, o que consideramos aqui como confiável, a configuração correta seria:

/ip service
set telnet disabled=yes
set ftp disabled=yes
set www address=10.1.2.0/24
set ssh disabled=yes
set api disabled=yes
set winbox address=10.1.2.0/24
set api-ssl disabled=yes

Observações:

  • A não aplicação de restrições de acesso aos Mikrotiks pelas ACLs acima mencionadas traz grande risco de infecções e invasões ao seu roteador, que poderá ser usado para realizar ataques que trarão impactos negativos para sua rede, de seu provedor de trânsito e a internet como um todo.
  • Alterar a porta dos serviços não deve ser a única medida de segurança a se adotar. Caso altere, obrigatoriamente faça também as restrições de ACL mencionadas acima.

Credenciais de acesso

Sob nenhuma circunstância um equipamento deve permanecer com o login e senha padrão. O login e senha do equipamento deve ser alterado antes mesmo de o equipamento ser conectado em sua rede. Portanto:

  1. Evite usar o login admin. Se possível, use um sistema de Radius para autenticação no roteador ou use um usuário diferente para cada técnico que acessará ao equipamento.
  2. Sempre use senhas que atendam aos requisitos abaixo:
    • Oito ou mais caracteres;
    • Possua uma letra maiúscula;
    • Possua uma letra minúscula;
    • Possua um número;
    • Possua um caractere especial;

Exemplo de senhas seguras:

T7J)Q:OI
a>:O9Ft6
3ibmMc&1

Exemplos de senhas inseguras:

net2018
admin123
Fulanonet

Recomendamos um sistema que gere senhas aleatórias, como o https://www.4devs.com.br/gerador_de_senha.

Lembre-se: O objetivo não é que você decore sua senha. Esta é a principal camada de autenticação em sua rede. Um acesso indevido poderá trazer prejuízos financeiros e técnicos para sua rede, de seu provedor de trânsito e para a internet como um todo.

Acesso via VPN

O Mikrotik implementa inumeros tipos de tunelamento, sendo algum deles:

– PPTP (Protocolo de Tunelamento Ponto a Ponto)

– PPP (Protocolo de Ponto Ponto)

– L2TP (Protocolo de Tunelamento de camada 2)

– OVPN (Open Virtual Private Network)

– IPSec (IP Security)

É altamente recomendado o uso de VPN para acesso aos equipamentos, assim reforçando o bloqueio a acessos indevidos. Façam sempre as acl's em /ip services colocando também os IPs da VPN além dos de outras redes protegidas.

Segue exemplos de configuração em Mikrotik.

PPTP (existem exploits, então é recomendado L2TP):

Mikrotik (Servidor)

/ppp secret add name=AcessoExterno service=pptp password=senhasegura local-address=10.1.101.1 remote-address=10.1.101.100

/interface pptp-server server set enabled=yes

Pptp-rem-offoce.png

Windows (Cliente)

Cliente vpn.jpg
Cliente vpn2.jpg
Cliente vpn3.jpg

L2TP em Mikrotik

Primeiro passo habilitar o server L2TP

/interface l2tp-server server set enabled=yes use-ipsec=required ipsec-secret=mySecret default-profile=default

Segundo passo criar pool, profile e usuários.

/ip pool add name=vpn-pool range=192.168.99.2-192.168.99.100

/ppp profile set default local-address=192.168.99.1 remote-address=vpn-pool

/ppp secret add name=user1 password=123

Configuração de maquina Windows para uso de L2TP:

https://wiki.mikrotik.com/wiki/IPSEC_between_Mikrotik_router_and_a_Shrew_client

IPsec adiciono o link da wiki da Mikrotik, pois são muitas opções de configuração tanto server e cliente.

https://wiki.mikrotik.com/wiki/Manual:IP/IPsec

Filtros anti spoofing

Reverse Path Filter (RPF)

O Reverse Path Filter é recurso eficiente no controle de IP spoofing e está disponível no RouterOS a partir da versão 6.

/ip settings set rp-filter=(strict | loose | no)

strict: valida na FIB a interface de origem

loose: valida na FIB em qualquer interface

no: recurso desativado

Equipamentos que possuam caminhos simétricos para as redes externas devem ter filtros anti spoofing. Por via de regra, caso seu concentrador de clientes possua uma única interface de entrada/saída para a internet e não seja também o equipamento onde chegam seus links de Internet, você deve aplicar filtro anti spoofing no modo strict.

/ip settings set rp-filter=strict (NÃO UTILIZE EM EQUIPAMENTO ONDE TENHA BGP)
 

Vide diagrama abaixo:

SegurancaMK.png

Na área verde do diagrama acima são os roteadores que obrigatoriamente devem ter o uRPF habilitado no modo Strict.

Os roteadores na área cinza são os equipamentos onde o uRPF não deve ser aplicado no modo strict, exceto após confirmar que existe simetria em todo o tráfego passante.

Advertência: Antes de ativá-lo definitivamente na rede, aplique-o utilizando o Safe Mode num horário ameno e faça testes. Aplique o RP Filter definitivamente só após homologar o funcionamento deste recurso em sua rede.

Firewall para clientes banda larga

Algumas portas jamais devem ser usadas no forward de pacotes pelos clientes de seu provedor. São elas:

  • 19 - TCP/UDP - Chargen: Protocolo de geração de caracteres usado geralmente para amplificação/reflexão de ataques.
  • 25 - TCP/UDP - SMTP: Antiga porta usada para o protocolo SMTP. Seu uso foi totalmente abolido e hoje só é utilizada para fins maliciosos.
  • 1900 - TCP/UDP - SSDP: Protocolo de auto descoberta de hosts, que deve ser utilizado apenas em redes locais, como residências e empresas, jamais na Internet.
  • 11211 - TCP/UDP - Memcached: Sistema de cache geralmente usado para otimização de performance em sites. Por ser usado para abuso de hosts vulneráveis, deve ser bloqueado em clientes residenciais.

Para bloquear o tráfego destes protocolos em sua rede de clientes, cole as regras abaixo em seus concentradores de clientes:

/ip firewall raw
add action=drop chain=prerouting protocol=udp src-port=19,25,1900,11211
add action=drop chain=prerouting protocol=tcp src-port=19,25,1900,11211
add action=drop chain=prerouting dst-port=19,25,1900,11211 protocol=udp
add action=drop chain=prerouting dst-port=19,25,1900,11211 protocol=tcp
/ipv6 firewall raw
add action=drop chain=prerouting protocol=udp src-port=19,25,1900,11211
add action=drop chain=prerouting protocol=tcp src-port=19,25,1900,11211
add action=drop chain=prerouting dst-port=19,25,1900,11211 protocol=udp
add action=drop chain=prerouting dst-port=19,25,1900,11211 protocol=tcp

Advertência: As regras aqui expostas devem ser cautelosamente lidas e entendidas, e se necessário modificadas, antes de serem aplicadas em sua rede.

Atualizações

Duas boas práticas são, consecutivamente, manter sempre seu roteador atualizado e ler as change logs antes de atualizá-lo.

Caso não leia os change logs, ao menos mantenha sempre seu roteador atualizado para a última versão sugerida pelo fabricante, disponível neste link.

Existem sempre três opções de versões mais recentes:

  • Long-term: a versão mais recente com os bugs anteriores corrigidos.
  • Stable: a versão mais recente, com possibilidade de novos bugs ainda não corrigidos.
  • Testing: versão beta, ainda em testes. Não use esta versão no ambiente de produção de sua rede.

Artigo original por Leonardo Paixão e Daniel Damito.