meta data for this page
  •  

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Ambos lados da revisão anterior Revisão anterior
Próxima revisão
Revisão anterior
integracao_mikrotik [2020/07/16 09:42]
monique Retirada da linha: /ip accounting set enabled=yes
integracao_mikrotik [2023/12/26 16:40] (atual)
Linha 5: Linha 5:
   * **AUC** - Porta do accounting, se o SGP for LOCAL a porta é padrão 1812 se for Nuvem consultar SUPORTE.   * **AUC** - Porta do accounting, se o SGP for LOCAL a porta é padrão 1812 se for Nuvem consultar SUPORTE.
   * **ACC** - Porta do authentication,​ se o SGP for LOCAL a porta é padrão 1813 se for Nuvem consultar SUPORTE.   * **ACC** - Porta do authentication,​ se o SGP for LOCAL a porta é padrão 1813 se for Nuvem consultar SUPORTE.
-  * **IPVPN** - IP que conecta a VPN (solicitar no suporte caso SGP for nuvem). 
-  * **IPBLQAVS** - IP que direciona para paginas de Aviso e Bloqueio (solicitar no suporte caso SGP for nuvem). 
   * **LINKDOSGP** - URL do SGP (ex: http://​meusgplocal.com.br:​8000 ou https://​meusgpnuvem.sgp.net.br)   * **LINKDOSGP** - URL do SGP (ex: http://​meusgplocal.com.br:​8000 ou https://​meusgpnuvem.sgp.net.br)
 +  * **TOKEN** - Token mikrotik do SGP.
   * **RADIUS** - IP que o SGP responde, em caso de Nuvem será o IP que responde ou o gateway da VPN fornecida pelo suporte.   * **RADIUS** - IP que o SGP responde, em caso de Nuvem será o IP que responde ou o gateway da VPN fornecida pelo suporte.
   * **BLQ** - Porta em que a página de bloqueio será exibida se o SGP for LOCAL é padrão 6403. Consulte a [[tabela_variaveis|tabela de variáveis]] para ver o conteúdo da pagina.   * **BLQ** - Porta em que a página de bloqueio será exibida se o SGP for LOCAL é padrão 6403. Consulte a [[tabela_variaveis|tabela de variáveis]] para ver o conteúdo da pagina.
Linha 20: Linha 19:
 <​code>​ <​code>​
  
-:​global ​USERVPN ​"USUÁRIO_DA_VPN+    ​:​global ​AUC "1812
-/system backup save name=BACKUP_ANTES_DO_SGP +    :​global ACC "​1813"​ 
-/export file=BACKUP_ANTES_DO_SGP_TXT +    :​global ​AVS "6402
-:​global ​PASSVPNUSER ​"SENHA_DA_VPN_E_USUÁRIO+    :​global ​BLQ "6403
-:​global ​AUC "1812+    :​global ​PASSVPNUSER ​"PASSWORD_FORT
-:​global ​ACC "1813+    :global RADIUS "IP DO RADIUS
-:global RADIUS "IP_DO_RADIUS+    :​global ​TOKEN "TOKEN MIKROTIK
-:​global ​TOKENAQUI ​"TOKEN_GERADO_NO_SGP+    :global LINKDOSGP "http://​x.x.x.x:​8000"​ 
-:global LINKDOSGP "URL_DO_SGP:​8000"​ +    :​global ​IPSGP "IP DO SGP
-:​global ​IPVPN "IP_QUE_CONECTA_VPN+     
-:​global ​IPBLQAVS ​"IP_AVISO_BLQOUEIO+    ​:​global ​NAS "IP_DO_NAS
-:global AVS "6402+     
-:global BLQ "6403+     
- +    /system backup save name=BACKUP_ANTES_DO_SGP 
-/ip firewall address-list  +    /export file=BACKUP_ANTES_DO_SGP_TXT 
-add address=$IPVPN list=SITES-LIBERADOS +    # REGRAS DE AVISO E BLOQUEIO 
-add address=$IPBLQAVS ​list=SITES-LIBERADOS +    /system ntp client set enabled=yes primary-ntp=200.160.0.8 
-add address=208.67.222.222 list=SITES-LIBERADOS +    /system clock set time-zone-name=America/​Recife 
-add address=208.67.222.220 list=SITES-LIBERADOS +    /radius incoming set accept=yes 
-add address=8.8.8.8 list=SITES-LIBERADOS +    /ip service set api disabled=no port=3540 address="$RADIUS,​$IPSGP
-add address=8.8.4.4 list=SITES-LIBERADOS +    /user aaa set use-radius=yes 
-add address=1.1.1.1 list=SITES-LIBERADOS +    /ppp aaa set interim-update=5m use-radius=yes 
-add address=10.24.0.0/​20 list=BLOQUEADOS +    /snmp community disable public 
-# Aviso bloqueio  +    /snmp community add addresses="$RADIUS,​$IPSGP" ​name=SGP-GRAPHICs 
-/ip firewall filter  +    /snmp set enabled=yes trap-community=SGP-GRAPHICs trap-version=2 
-add action=drop chain=forward dst-address-list=!SITES-LIBERADOS src-address-list=BLOQUEADOS comment="​SGP REGRA" +    /user add name=SGP comment="​NAO MUDAR SENHA E NÃO ALERAR NADA, USUARIO QUE O SERVIDOR SGP ACESSA A RB" \ 
-/ip firewall filter +        group=full password=$PASSVPNUSER 
-add chain=forward connection-mark=BLOQUEIO-AVISAR action=add-src-to-address-list \ +    /system logging set 0 action=memory disabled=no prefix=""​ topics=info,​!account 
-address-list=BLOQUEIO-AVISADOS address-list-timeout=00:​01:​00 comment="​SGP REGRAS"​ dst-address=$IPBLQAVS ​dst-port=$AVS ​+    /radius 
-protocol=tcp  +    add comment="​RADIUS SGP" secret=sgp@radius service=ppp,​dhcp address=$RADIUS accounting-port=$ACC \ 
-/ip firewall nat  +        authentication-port=$AUC timeout=00:​00:​03 src-address=$NAS 
-add action=accept ​chain=srcnat comment="​NAO FAZER NAT PARA O DO RADIUS" ​+     
-    ​dst-address=$RADIUS dst-port="$AUC-$ACC,​3799"​ protocol=udp  +    # REGRAS DE AVISO E BLOQUEIO 
-add action=masquerade chain=srcnat comment="​SGP REGRAS" ​src-address-list=\ +     
-    ​BLOQUEADOS  +    ​/ip firewall address-list  
-add action=dst-nat chain=dstnat comment="​SGP REGRAS"​ dst-address-list=\ +    add address=$RADIUS ​list=SITES-LIBERADOS 
-    !SITES-LIBERADOS dst-port=80,​443 log-prefix=""​ protocol=tcp \ +    add address=$IPSGP list=SITES-LIBERADOS 
-    src-address-list=BLOQUEADOS to-addresses=$IPBLQAVS ​to-ports=$BLQ  +    add address=208.67.222.222 list=SITES-LIBERADOS 
-add action=dst-nat chain=dstnat comment="​SGP REGRAS"​ connection-mark=\ +    add address=208.67.222.220 list=SITES-LIBERADOS 
-    BLOQUEIO-AVISAR log-prefix=""​ protocol=tcp to-addresses=$IPBLQAVS ​to-ports=$AVS  +    add address=8.8.8.8 list=SITES-LIBERADOS 
-# Aviso bloqueio  +    add address=8.8.4.4 list=SITES-LIBERADOS 
-/ip firewall mangle +    add address=1.1.1.1 list=SITES-LIBERADOS 
-add chain=prerouting connection-state=new src-address-list=BLOQUEIO-AVISAR protocol=tcp dst-port=80,​443 \ +    add address=10.24.0.0/​20 list=BLOQUEADOS 
-action=mark-connection new-connection-mark=BLOQUEIO-VERIFICAR passthrough=yes comment="​SGP REGRAS"​  +     
-add chain=prerouting connection-mark=BLOQUEIO-VERIFICAR src-address-list=!BLOQUEIO-AVISADOS \ +    /ip firewall filter 
-action=mark-connection new-connection-mark=BLOQUEIO-AVISAR comment="​SGP REGRAS"​  +    add chain=forward connection-mark=BLOQUEIO-AVISAR action=add-src-to-address-list \ 
-/system scheduler +        address-list=BLOQUEIO-AVISADOS address-list-timeout=00:​01:​00 comment="​SGP REGRAS"​ dst-address=$IPSGP \ 
-add interval=1h name=sgp-aviso on-event=sgp-aviso policy=\ +        ​dst-port=$AVS protocol=tcp 
-    ftp,​reboot,​read,​write,​policy,​test,​password,​sniff,​sensitive ​start-date=\ +    /ip firewall nat 
-    may/​29/​2017 ​start-time=01:​00:​00 +    add action=masquerade ​chain=srcnat comment="​SGP REGRAS" dst-address-list=
-/system script +        SITES-LIBERADOS ​src-address-list=BLOQUEADOS 
-add name=sgp-aviso policy=\ +    add action=dst-nat chain=dstnat comment="​SGP REGRAS"​ dst-address-list=\ 
-    ftp,​reboot,​read,​write,​policy,​test,​password,​sniff,​sensitive source=":​log info\ +        !SITES-LIBERADOS dst-port=80,​443 log-prefix=""​ protocol=tcp \ 
-    \_\"​sgp aviso\";​\r\ +        src-address-list=BLOQUEADOS to-addresses=$IPSGP to-ports=$BLQ  
-    \n/file remove [find where name=sgp_aviso.rsc]\r\ +    add action=dst-nat chain=dstnat comment="​SGP REGRAS"​ connection-mark=\ 
-    \n/tool fetch url=\"​$LINKDOSGP/​ws/​mikrotik/​aviso/​pendencia/​\?​token=$TOKENAQUI&​app=mikrotik\"​ dst-path=sgp_aviso.rsc;​\r\ +        BLOQUEIO-AVISAR log-prefix=""​ protocol=tcp to-addresses=$IPSGP to-ports=$AVS 
-    \n:delay 30s\r\ +    /ip firewall mangle 
-    \nimport file-name=sgp_aviso.rsc;​\r\ +    add chain=prerouting connection-state=new src-address-list=BLOQUEIO-AVISAR protocol=tcp dst-port=80,​443 \ 
-    \n:delay 10s\r\ +        action=mark-connection new-connection-mark=BLOQUEIO-VERIFICAR passthrough=yes comment="​SGP REGRAS"​  
-    \n/ip firewall address-list set timeout=00:30:00 [/ip firewall address-list find list=BLOQUEIO-AVISAR]"​ +    add chain=prerouting connection-mark=BLOQUEIO-VERIFICAR src-address-list=!BLOQUEIO-AVISADOS \ 
- +        action=mark-connection new-connection-mark=BLOQUEIO-AVISAR comment="​SGP REGRAS"​  
-/​system ​ntp client set enabled=yes primary-ntp=200.160.0.8 +    /ip firewall raw 
-/system clock set time-zone-name=America/Recife +    add action=notrack chain=output comment="​SGP NAO FAZER NAT PARA O RADIUS"​ \ 
-/radius incoming set accept=yes +        dst-address=$RADIUS dst-port="​$AUC-$ACC,​3799"​ protocol=udp 
-/ip service +    add action=drop chain=prerouting comment="​SGP BLOQUEIO"​ dst-address-list=\ 
-set api disabled=no port=3540 +        !SITES-LIBERADOS src-address-list=BLOQUEADOS 
-/user aaa set use-radius=yes +    ​/system scheduler 
-/ppp aaa set interim-update=5m use-radius=yes +    add interval=4h name=sgp-aviso on-event=sgp-aviso policy=\ 
-/tool graphing set page-refresh=300 store-every=5min +        ftp,​reboot,​read,​write,​policy,​test,​password,​sniff,​sensitive start-time=01:​00:​00 ​disabled=yes 
-/tool graphing interface ​add allow-address=$RADIUS disabled=no interface=all store-on-disk=yes +    /system script 
-/tool graphing queue add allow-address=$RADIUS allow-target=yes disabled=no simple-queue=all store-on-disk=yes +    add name=sgp-aviso policy=\ 
-/tool graphing resource add allow-address=$RADIUS disabled=no store-on-disk=yes +        ftp,​reboot,​read,​write,​policy,​test,​password,​sniff,​sensitive source=":​log info\ 
-/snmp community add addresses=$RADIUS name=SGP-GRAPHICs +        \_\"​sgp aviso\";​\r\ 
-/snmp set enabled=yes trap-community=SGP-GRAPHICs trap-version=2 +        \n/file remove [find where name=sgp_aviso.rsc]\r\ 
-/​system ​logging set 0 action=memory ​disabled=no ​prefix=""​ topics=info,!account +        \n/tool fetch url=\"​$LINKDOSGP/​ws/​mikrotik/​aviso/​pendencia/​\\?token=$TOKEN&​app=mikrotik\"​ dst-path=sgp_aviso.rsc;​\r\ 
-/radius +        \n:delay 30s\r\ 
-add comment="​RADIUS ​SGP" ​secret=sgp@radius service=ppp,dhcp,login address=$RADIUS accounting-port=$ACC authentication-port=$AUC +        \nimport file-name=sgp_aviso.rsc;​\r\ 
-    ​timeout=00:00:03 +        \n:delay 10s;\r\ 
-/user add name=SGP comment="USUARIO QUE O SERVIDOR ​SGP ACESSA A RB" ​group=full password=$PASSVPNUSER +        \n/ip firewall address-list set timeout=00:15:00 [/ip firewall address-list find list=BLOQUEIO-AVISAR]"​;\ 
- +     
-/interface ovpn-client +    # CONFIGURACAO IPv6 MIKROTIK 
-add connect-to=$IP user=$USERVPN password=$PASSVPNUSER profile=default-encryption name="VPN-SGP"\ +     
-    ​disabled=no+    :global versao [/​system ​package get number=0 version ]; :global versao2 [:pick $versao 0 [:find "​$versao"​ "." -3]]; 
 +    :​delay 2s 
 +    :put $versao2 
 +    :if ($versao2=7) do={ 
 +        :global ipv6 [/ipv6 settings get disable-ipv6] 
 +        :if ($ipv6=false) do={ 
 +        :log info "############​\nTEM IPV6 HABILITADO NESSA RB CONFIGURAR VARIAVEIS E SCRIPT NO PROFILE\n############"​ 
 +        :log info "​CONFIGURANDO O POOL DE BLOQUEIO IPv6"​ 
 +        /ipv6 pool add name=bloqueiov6pd prefix-length=64 prefix=2001:​DB9:​100::​/40 
 +        /ipv6 pool add name=bloqueiov6prefix prefix-length=64 prefix=2001:​DBA:​900::​/40    ​ 
 +        } else=
 +            :log info "############​\nNAO TEM IPV6 HABILITADO NESSA RB\n############"​ 
 +        } 
 +    } else={ 
 +        :if ($versao2=6) do={ 
 +        :​global ipv6 [/system package get ipv6 disabled ] 
 +        :if ($ipv6=false) do={ 
 +        :log info "############​\nTEM IPV6 HABILITADO NESSA RB CONFIGURAR VARIAVEIS E SCRIPT NO PROFILE\n############"​ 
 +        :log info "​CONFIGURANDO O POOL DE BLOQUEIO IPv6"​ 
 +        /ipv6 pool add name=bloqueiov6pd prefix-length=64 prefix=2001:​DB9:​100::/​40 
 +        /ipv6 pool add name=bloqueiov6prefix prefix-length=64 prefix=2001:​DBA:​900::/​40 ​   
 +        } else={ 
 +        :log info "############​\nNAO TEM IPV6 HABILITADO NESSA RB\n############"​ 
 +        } 
 +        } 
 +    } 
 +    # CRIAR BACKUP DOS PPPoEs 
 +     
 +    :global wurl "ws/mikrotik/​login/​local"​ 
 +    /system script 
 +    ​add name=sgp_login_local owner=SGP policy=ftp,​reboot,​read,​write,​policy,​test,​password,​sniff,​sensitive,​romon source=":​global filename \"​sgp_login_local.txt\";​\r\ 
 +        \n/file remove [/file find name=\$filename]\r\ 
 +        \n/tool fetch url=\"$LINKDOSGP/​$wurl/​\\?​token=$TOKEN&​app=mikrotik&​nas=$NAS&​disabled=1\" duration=30 dst-path=\$filename;​\r\ 
 +        ​\n:​delay 32s;\r\ 
 +        \n/import file-name=\$filename;"​ 
 +    /​system ​scheduler 
 +    add disabled=no ​interval=6h name=sgp_login_local on-event=sgp_login_local policy=\ 
 +        ftp,reboot,​read,​write,​policy,​test,​password,​sniff,​sensitive,​romon start-time=12:​00:​00 
 +    /tool netwatch 
 +    add comment="​ATIVAR O SECRETS CASO O RADIUS ​PARE" ​disabled=yes \ 
 +        down-script="/ppp secret ; :foreach i in [ find comment~\"​SGP:​\ 
 +        \" ] do={ enable \$i }; /ppp active; :foreach p in [find \\ radius=no comment~\"​SGP:​\"​] do=\ 
 +        { remove \$p; :delay 1};" host=$RADIUS interval=3m timeout=10000ms ​
 +        ​up-script="/ppp secret ; :foreach i in [ find comment~\"​SGP:\" ] do={ disa\ 
 +        ble \$i }; /ppp active; :foreach p in [find \\ radius=no comment~\"SGP:\"] do={ remove \$p;\ 
 +        ​\_:​delay 1};" 
 +    :log print where message="TEM IPV6 HABILITADO NESSA RB CONFIGURAR VARIAVEIS E SCRIPT NO PROFILE"​ or message="NAO TEM IPV6 HABILITADO NESSA RB
 +    ​ 
 +    #Script Integração 
 +    #Systema de Gerenciamento de provedores - SGP
  
  
Linha 109: Linha 157:
  
 Feito isso, acesse o menu **Administração >> Cadastros >> Radius(NAS)**,​ clique nem **Cadastrar NAS** no canto superior direito da página e preencha o formulário de acordo com as configurações do MikroTik. Feito isso, acesse o menu **Administração >> Cadastros >> Radius(NAS)**,​ clique nem **Cadastrar NAS** no canto superior direito da página e preencha o formulário de acordo com as configurações do MikroTik.
-{{ :captura_de_tela_de_2018-12-28_13-39-29.png |}}+{{ :cadastronas.png?600 |}}
  
 {{ :​captura_de_tela_de_2018-12-28_14-03-57.png |}} {{ :​captura_de_tela_de_2018-12-28_14-03-57.png |}}
  
-Para verificar a se a conexão ocorreu como esperado, click em **Opções** na NAS cadastrada e escolha a opção **Verificar Sessões**. 
-{{ :​captura_de_tela_de_2018-12-28_14-16-58.png |}} 
  
-Se tudo deu certo, a seguinte página ​irá ser exibida. Caso contrário, verifique os passos novamente e contate a central de atendimentos.+<​html>​ 
 + 
 +<​head>​ 
 +    <meta charset="​UTF-8"​ /> 
 +    <meta name="​viewport"​ content="​width=device-widthuser-scalable=0"​ /> 
 + 
 +<style type="​text/​css">​ 
 +  
 +        p { 
 +          text-align: center; 
 +        } 
 + 
 + 
 +        img{ 
 +          display: block; 
 +          margin: 0px auto; 
 +          -webkit-box-shadow:​ 9px 7px 5px rgba(50, 50, 50, 0.5); 
 +        --moz-box-shadow: ​  9px 7px 5px rgba(50, 50, 50, 0.5); 
 +        -box-shadow: ​       9px 7px 5px rgba(50, 50, 50, 0.5); 
 +        } 
 + 
 +</​style>​ 
 + 
 +</​head> ​       
 + 
 + 
 +<​body>​ 
 +          
 +     <​p>​Para verificar se conexão ocorreu como esperado, click no <b> ícone da engrenagem</​b>​ localizada ao lado do IP do NAS. </​p>​ 
 +     
 +        <img id="​shadow-box"​ src="​http://​wiki.sgp.net.br/​lib/​exe/​fetch.php?​media=nas:​verificar_sessoes_1.png"​ alt="​verificar sessoes 1">​ 
 + <​br><​br>​ 
 + 
 +     <​p>​Caso a comunicação via API do SGP ao NAS esteja correta, ​irá ser exibida ​a seguinte mensagem da imagem abaixo em uma nova aba do navegador. Caso contrário, verifique os passos novamente e contate a central de atendimentos.</​p>​ 
 +     <​br>​ 
 + 
 +        <img id="​shadow-box"​ src="​http://​wiki.sgp.net.br/​lib/​exe/​fetch.php?​media=nas:​nas_ok_.png"​ alt="​NAS OK"> ​   
 + 
 + 
 +</​body>​ 
 +</​html>​