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
Próxima revisão Ambos lados da revisão seguinte
integracao_mikrotik [2019/02/28 09:23]
raylan
integracao_mikrotik [2022/11/23 15:29]
gabriel
Linha 1: Linha 1:
 ====== Integração com MikroTik ====== ====== Integração com MikroTik ======
 Para integrar o MikroTik ao sistema acesse-o através de SSH ou, Winbox e Execute os seguintes comandos: Para integrar o MikroTik ao sistema acesse-o através de SSH ou, Winbox e Execute os seguintes comandos:
-<​note ​important>+<​note ​importante>
 Substitua as seguintes variáveis nos comandos abaixo de acordo com sua configuração:​ Substitua as seguintes variáveis nos comandos abaixo de acordo com sua configuração:​
-  * **IP_DO_SGP** - IP que o SGP usará para conectar-se ao MikroTikSe estiver utilizando VPN do SGP, verifique a configuração ​de VPN com o suporte ​do SGP+  * **AUC** - Porta do accounting, se o SGP for LOCAL a porta é padrão 1812 se for Nuvem consultar SUPORTE. 
-  * **PORTA_BLOQUEIO** - Porta em que a página de bloqueio será exibida. Consulte a [[tabela_variaveis|tabela de variáveis]]. +  * **ACC** ​Porta do authentication, ​se o SGP for LOCAL a porta é padrão 1813 se for Nuvem consultar SUPORTE. 
-  * **PORTA_BLOQUEIO_AVISO** - Porta em que a página de aviso de bloqueio será exibida. Consulte a [[tabela_variaveis|tabela de variáveis]]. +  * **LINKDOSGP** - URL do SGP (ex: http://​meusgplocal.com.br:​8000 ou https://​meusgpnuvem.sgp.net.br) 
-  * **PASSWORD_USUARIO_SGP** - Password que o SGP Utilizará para acessar o NAS. Recomendamos que seja gerada por mecanismos de geração de password com um tamanho ​minimo ​de 15 caracteres. Armazene essa senha em um local seguro, ela será necessária para configurar o SGP. No Linux, é possível criar a senha com o comando **openssl rand - -hex 15**.+  * **TOKEN** - Token mikrotik do SGP. 
 +  * **RADIUS** - IP que o SGP respondeem caso de Nuvem será 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
 +  * **AVS** - Porta em que a página de aviso 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
 +  * **PASSVPNUSER** - Password que o SGP Utilizará para acessar o NAS. Recomendamos que seja gerada ​(se usar VPN usa-se a mesma senha) ​por mecanismos de geração de password com um tamanho ​mínimo ​de 15 caracteres. Armazene essa senha em um local seguro, ela será necessária para configurar o SGP. No Linux, é possível criar a senha com o comando **openssl rand - -hex 15**.
 </​note>​ </​note>​
  
Linha 14: Linha 18:
  
 <​code>​ <​code>​
-/radius incoming set accept=yes 
  
-/ip service set api address=IP_DO_SGP disabled=no port=3540 +:global USERVPN "​USUÁRIO_DA_VPN"​ 
-/user add name=SGP group=full address=IP_DO_SGP comment="USUARIO QUE O SGP UTILIZA PARA LOGAR NA RB" ​password=PASSWORD_USUARIO_SGP+/system backup save name=BACKUP_ANTES_DO_SGP 
 +/export file=BACKUP_ANTES_DO_SGP_TXT 
 +:global PASSVPNUSER ​"SENHA_DA_VPN_E_USUÁRIO"​ 
 +:global AUC "​1812"​ 
 +:global ACC "​1813"​ 
 +:global RADIUS "​IP_DO_RADIUS"​ 
 +:global TOKENAQUI "​TOKEN_GERADO_NO_SGP"​ 
 +:global LINKDOSGP "​URL_DO_SGP:​8000"​ 
 +:global IPVPN "​IP_QUE_CONECTA_VPN"​ 
 +:global IPBLQAVS "​IP_AVISO_BLQOUEIO"​ 
 +:global AVS "​6402"​ 
 +:global BLQ "6403"
  
 +/ip firewall address-list ​
 +add address=$IPVPN list=SITES-LIBERADOS
 +add address=$IPBLQAVS list=SITES-LIBERADOS
 +add address=208.67.222.222 list=SITES-LIBERADOS
 +add address=208.67.222.220 list=SITES-LIBERADOS
 +add address=8.8.8.8 list=SITES-LIBERADOS
 +add address=8.8.4.4 list=SITES-LIBERADOS
 +add address=1.1.1.1 list=SITES-LIBERADOS
 +add address=10.24.0.0/​20 list=BLOQUEADOS
 +# Aviso bloqueio ​
 +/ip firewall filter ​
 +add action=drop chain=forward dst-address-list=!SITES-LIBERADOS src-address-list=BLOQUEADOS comment="​SGP REGRA"
 +/ip firewall filter
 +add chain=forward connection-mark=BLOQUEIO-AVISAR action=add-src-to-address-list \
 +address-list=BLOQUEIO-AVISADOS address-list-timeout=00:​01:​00 comment="​SGP REGRAS"​ dst-address=$IPBLQAVS dst-port=$AVS \
 +protocol=tcp ​
 +/ip firewall nat 
 +add action=accept chain=srcnat comment="​NAO FAZER NAT PARA O DO RADIUS"​ \
 +    dst-address=$RADIUS dst-port="​$AUC-$ACC,​3799"​ protocol=udp ​
 +add action=masquerade chain=srcnat comment="​SGP REGRAS"​ src-address-list=\
 +    BLOQUEADOS ​
 +add action=dst-nat chain=dstnat comment="​SGP REGRAS"​ dst-address-list=\
 +    !SITES-LIBERADOS dst-port=80,​443 log-prefix=""​ protocol=tcp \
 +    src-address-list=BLOQUEADOS to-addresses=$IPBLQAVS to-ports=$BLQ ​
 +add action=dst-nat chain=dstnat comment="​SGP REGRAS"​ connection-mark=\
 +    BLOQUEIO-AVISAR log-prefix=""​ protocol=tcp to-addresses=$IPBLQAVS to-ports=$AVS ​
 +# Aviso bloqueio ​
 +/ip firewall mangle
 +add chain=prerouting connection-state=new src-address-list=BLOQUEIO-AVISAR protocol=tcp dst-port=80,​443 \
 +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 \
 +action=mark-connection new-connection-mark=BLOQUEIO-AVISAR comment="​SGP REGRAS" ​
 +/system scheduler
 +add interval=1h name=sgp-aviso on-event=sgp-aviso policy=\
 +    ftp,​reboot,​read,​write,​policy,​test,​password,​sniff,​sensitive start-date=\
 +    may/29/2017 start-time=01:​00:​00
 +/system script
 +add name=sgp-aviso policy=\
 +    ftp,​reboot,​read,​write,​policy,​test,​password,​sniff,​sensitive source=":​log info\
 +    \_\"​sgp aviso\";​\r\
 +    \n/file remove [find where name=sgp_aviso.rsc]\r\
 +    \n/tool fetch url=\"​$LINKDOSGP/​ws/​mikrotik/​aviso/​pendencia/​\?​token=$TOKENAQUI&​app=mikrotik\"​ dst-path=sgp_aviso.rsc;​\r\
 +    \n:delay 30s\r\
 +    \nimport file-name=sgp_aviso.rsc;​\r\
 +    \n:delay 10s\r\
 +    \n/ip firewall address-list set timeout=00:​30:​00 [/ip firewall address-list find list=BLOQUEIO-AVISAR]"​
 +
 +/system ntp client set enabled=yes primary-ntp=200.160.0.8
 +/system clock set time-zone-name=America/​Recife
 +/radius incoming set accept=yes
 +/ip service
 +set api disabled=no port=3540
 /user aaa set use-radius=yes /user aaa set use-radius=yes
 /ppp aaa set interim-update=5m use-radius=yes /ppp aaa set interim-update=5m use-radius=yes
- 
 /tool graphing set page-refresh=300 store-every=5min /tool graphing set page-refresh=300 store-every=5min
-/tool graphing interface add allow-address=0.0.0.0/​0 ​disabled=no interface=all store-on-disk=yes +/tool graphing interface add allow-address=$RADIUS ​disabled=no interface=all store-on-disk=yes 
-/tool graphing queue add allow-address=0.0.0.0/​0 ​allow-target=yes disabled=no simple-queue=all store-on-disk=yes +/tool graphing queue add allow-address=$RADIUS ​allow-target=yes disabled=no simple-queue=all store-on-disk=yes 
-/tool graphing resource add allow-address=0.0.0.0/​0 ​disabled=no store-on-disk=yes+/tool graphing resource add allow-address=$RADIUS ​disabled=no store-on-disk=yes 
 +/snmp community add addresses=$RADIUS name=SGP-GRAPHICs 
 +/snmp set enabled=yes trap-community=SGP-GRAPHICs trap-version=2 
 +/radius 
 +add comment="​RADIUS SGP" secret=sgp@radius service=ppp,​dhcp,​login address=$RADIUS accounting-port=$ACC authentication-port=$AUC \ 
 +    timeout=00:​00:​03 
 +/user add name=SGP comment="​USUARIO QUE O SERVIDOR SGP ACESSA A RB" group=full password=$PASSVPNUSER
  
-/ip firewall address-list add address=IP_DO_SGP list=SITES-LIBERADOS +/interface ovpn-client 
-/ip firewall address-list ​add address=208.67.222.222 list=SITES-LIBERADOS +add connect-to=$IPVPN user=$USERVPN password=$PASSVPNUSER profile=default-encryption name="VPN-SGP"\ 
-/ip firewall address-list add address=208.67.222.220 list=SITES-LIBERADOS +    ​disabled=no
-/ip firewall address-list add address=8.8.8.8 list=SITES-LIBERADOS +
-/ip firewall address-list add address=8.8.4.4 list=SITES-LIBERADOS +
-/ip firewall address-list add address=1.1.1.1 list=SITES-LIBERADOS +
-/ip firewall address-list add address=172.16.100.2 list=SITES-LIBERADOS +
-/ip firewall address-list add address=172.16.150.2 list=SITES-LIBERADOS +
-/ip firewall address-list add address=10.24.0.0/​22 list=BLOQUEADOS+
  
-/ip firewall filter add action=drop chain=forward dst-address-list=!SITES-LIBERADOS src-address-list=BLOQUEADOS comment="​SGP REGRAS"​ 
-/ip firewall filter add chain=forward connection-mark=BLOQUEIO-AVISAR action=add-src-to-address-list address-list=BLOQUEIO-AVISADOS address-list-timeout=2h comment="​SGP REGRAS"​ dst-address=IP_DO_SGP dst-port=PORTA_BLOQUEIO_AVISO protocol=tcp 
  
-/ip firewall nat add action=masquerade chain=srcnat comment="​SGP REGRAS"​ src-address-list=BLOQUEADOS 
-/ip firewall nat add action=dst-nat chain=dstnat comment="​SGP REGRAS"​ dst-address-list=!SITES-LIBERADOS dst-port=80,​443 log-prefix=""​ protocol=tcp src-address-list=BLOQUEADOS to-addresses=IP_DO_SGP to-ports=PORTA_BLOQUEIO 
-/ip firewall nat add action=dst-nat chain=dstnat comment="​SGP REGRAS"​ connection-mark=BLOQUEIO-AVISAR log-prefix=""​ protocol=tcp to-addresses=IP_DO_SGP ​ to-ports=PORTA_BLOQUEIO_AVISO 
- 
-/ip firewall mangle add chain=prerouting connection-state=new src-address-list=BLOQUEIO-AVISAR protocol=tcp dst-port=80 action=mark-connection new-connection-mark=BLOQUEIO-VERIFICAR passthrough=yes comment="​SGP REGRAS"​ 
-/ip firewall mangle add chain=prerouting connection-mark=BLOQUEIO-VERIFICAR src-address-list=!BLOQUEIO-AVISADOS action=mark-connection new-connection-mark=BLOQUEIO-AVISAR comment="​SGP REGRAS"​ 
 </​code>​ </​code>​
  
  
 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>​