+ Responder ao Tópico



  1. #1

    Question Script FW Mikrotik, ta certo?

    Galera meu firewall MK tá assim, tá certo? Falta algo? Criei de acordo que vi na net.

    Código :
    /ip firewall filteradd action=drop chain=input comment="Bloquear total acesso ao Winbox, exceto address list=Rede" dst-port=8291 protocol=tcp src-address-list=!Rede
    add action=add-src-to-address-list address-list=Syn_Flooder address-list-timeout=30m chain=input comment="Add Syn Flood IP to the list" connection-limit=30,32 protocol=tcp tcp-flags=syn
    add action=drop chain=input comment="Drop to syn flood list" src-address-list=Syn_Flooder
    add action=add-src-to-address-list address-list=Port_Scanner address-list-timeout=1w chain=input comment="Port Scanner Detect" protocol=tcp psd=21,3s,3,1
    add action=drop chain=input comment="Drop to port scan list" src-address-list=Port_Scanner
    add action=jump chain=input comment="Jump for icmp input flow" jump-target=ICMP protocol=icmp
    add action=jump chain=forward comment="Jump for icmp forward flow" jump-target=ICMP protocol=icmp
    add action=drop chain=forward comment="Drop to bogon list" dst-address-list=bogons
    add action=add-src-to-address-list address-list=spammers address-list-timeout=3h chain=forward comment="Add Spammers to the list for 3 hours" connection-limit=30,32 dst-port=25,587 limit=30/1m,0 protocol=tcp
    add action=drop chain=forward comment="Avoid spammers action" dst-port=25,587 protocol=tcp src-address-list=spammers
    add chain=forward comment="Libera porta 80." dst-port=80 protocol=tcp src-address=192.168.1.0/24
    add chain=forward comment="Libera porta 443(https)." dst-port=443 protocol=tcp src-address=192.168.1.0/24
    add chain=input comment="Aceita DNS - UDP" port=53 protocol=udp
    add chain=input comment="Aceita DNS - TCP" port=53 protocol=tcp
    add chain=input comment="Aceita Conexoes estabilizadas" connection-state=established
    add chain=input comment="Permitir Conexoes Relacionadas" connection-state=related
    add action=drop chain=input comment="Dropar conexoes invalidas" connection-state=invalid
    add chain=input comment="Libera acesso Rede ao Router e Internet" connection-state=new in-interface=Rede
    add action=drop chain=forward comment="Dropar conexoes invalidas" connection-state=invalid protocol=tcp
    add chain=forward comment="Permitir Conexoes ja estabelecidas" connection-state=established
    add chain=forward comment=Steam dst-port=27000-27015 protocol=udp
    add chain=forward comment=Steam dst-port=27015-27030 protocol=udp
    add chain=forward comment=Steam dst-port=27014-27050 protocol=tcp
    add chain=forward comment=Steam dst-port=27031-27036 protocol=udp
    add chain=forward comment=Steam dst-port=27036-27037 protocol=tcp
    add chain=forward comment=Steam dst-port=4380 protocol=udp
    add chain=forward comment=Steam dst-port=27015 protocol=tcp
    add chain=output comment=Steam dst-port=3478 protocol=udp
    add chain=output comment=Steam dst-port=4379 protocol=udp
    add chain=output comment=Steam dst-port=4380 protocol=udp
    add chain=input comment="Acesso Full address list=Rede" src-address-list=Rede
    add chain=forward comment="..::Libera ping::.." protocol=icmp src-address=192.168.1.0/24
    add action=drop chain=input comment="Dropar todo o resto"
    add action=drop chain=forward comment="::::::: Bloqueio Full ::::::::"
    add chain=ICMP comment="Echo request - Avoiding Ping Flood" icmp-options=8:0 limit=1,5 protocol=icmp
    add chain=ICMP comment="Echo reply" icmp-options=0:0 protocol=icmp
    add chain=ICMP comment="Time Exceeded" icmp-options=11:0 protocol=icmp
    add chain=ICMP comment="Destination unreachable" icmp-options=3:0-1 protocol=icmp
    add chain=ICMP comment=PMTUD icmp-options=3:4 protocol=icmp
    add action=drop chain=ICMP comment="Drop to the other ICMPs" protocol=icmp
    add action=jump chain=output comment="Jump for icmp output" jump-target=ICMP protocol=icmp
    Última edição por sn0wt; 24-08-2015 às 17:57.

  2. #2

    Ingresso
    Oct 2014
    Localização
    MS
    Posts
    697
    Posts de Blog
    1

    Padrão Re: Script FW Mikrotik, ta certo?

    Firewall se cria conforme a necessidade da rede, pode ter uma polita de drop, e liberar apenas oque precisa

  3. #3

    Padrão Re: Script FW Mikrotik, ta certo?

    Pois é, é o que estou fazendo, mas essas ai são as básicas, chamadas de proteção do MK, pelo que estou estudando!!

  4. #4

    Padrão

    opa, tudo em ordem?
    Notei varias inconsistências, mas vamos pelo básico:

    ###############################
    add action=drop chain=input comment="Bloquear total acesso ao Winbox, exceto address list=Rede" dst-port=8291 protocol=tcp src-address-list=!Rede

    Para uma config. de rede mais simples, acho mais interessante definir a interface outside. Ficaria assim:
    add action=drop chain=input comment="Bloquear total acesso ao Winbox da internet" dst-port=8291 protocol=tcp in-interface=internet

    E para brincar um pouco, dá pra permitir o acesso a esta porta vindo da internet criando regra pra adicionar o IP entrante a uma lista quando ele tentar se conectar a uma porta alta especifica e outra regra liberando o acesso a porta do winbox para aquela lista.
    Eu prefiro trocar a porta para uma acima de 50000 e pronto. Contanto que a regra de acesso fique abaixo da regra de bloqueio de port scan.
    ###############################

    add action=drop chain=forward comment="Drop to bogon list" dst-address-list=bogons
    Está faltando regras de condição para esta regra.

    ###############################

    add chain=input comment="Aceita DNS - UDP" port=53 protocol=udp
    certifique que em IP-DNS esteja desativado Allow Remote Requests ou coloque um in-interface=!internet. Falta o action.

    ###############################

    add chain=input comment="Aceita DNS - TCP" port=53 protocol=tcp
    Esta regra poderia morrer. A nao ser que vc tenha um servidor dns em casa que faça transferencia de zona.
    Edit: vi que sua regra é de input... pode matar, sem dó.
    ###############################

    add chain=input comment="Aceita Conexoes estabilizadas" connection-state=established
    add chain=input comment="Permitir Conexoes Relacionadas" connection-state=related

    Voce pode matar uma dessas regras e reconfigurar a outra para que que aceite ambas related e estabilished. Só não esqueça da action, que está faltando acima.

    ###############################

    add chain=output comment=Steam dst-port=4379 protocol=udp
    add chain=output comment=Steam dst-port=4380 protocol=udp

    Otimize as regras adicionando as portas em uma mesma regra usando virgula para portas diversas ou hifen para ranges.

    ###############################



    As regras são tratadas no modo TOP->DOWN, mas o routerOS possui as chains, que também possuem sequência de tratamento. Então, a sua ordem das regras não estão erradas, mas como Best Practice, organize elas para sua melhor compreensão e para uma possível redução de processamento(que voce não vai notar, por não ter muitas conexões). Um exemplo são suas regras de ICMP, as regras de jump estão quase no topo e as regras de condiçoes estáo no final. Não está errado, mas fica horrível de compreender, ainda mais que o routerOS não é um CheckPoint onde você pode ver onde estão aplicados os objetos. :-)


    abraço!