MikroTik

How to Configure API Secure on MikroTik: Complete Tutorial

O API Secure no Mikrotik é uma configuração essencial para garantir que a interface de API do Mikrotik seja segura contra acessos não autorizados. A API do Mikrotik permite que você interaja com o dispositivo de forma programática, mas é crucial garantir que o acesso a essa interface seja restrito e seguro. Neste tutorial, você aprenderá como configurar o API Secure no Mikrotik para proteger sua rede e permitir um controle mais seguro sobre seus dispositivos.

Prerequisites for Configuring Secure API on MikroTik

Antes de começar, verifique se você possui os seguintes itens:
  • Acesso ao dispositivo Mikrotik (via Winbox ou CLI).
  • Basic knowledge of the MikroTik API and security settings.
  • A server that will use the MikroTik API to interact with the device.

1. Accessing the MikroTik

Para configurar o API Secure, você precisará acessar o seu dispositivo Mikrotik:
  • Via Winbox: Baixe e execute o Winbox. Conecte-se ao seu Mikrotik usando o endereço IP ou MAC.
  • Via CLI: Use um terminal SSH para se conectar ao Mikrotik com seu nome de usuário e senha.

2. Enabling the Secure API

A primeira etapa é habilitar a interface API no Mikrotik, mas com as devidas medidas de segurança. Isso envolve a configuração da API para usar autenticação segura e restringir o acesso a IPs confiáveis.
  1. No menu IP, clique em Services.
  2. Selecione API e clique em Edit.
  3. Marque a opção Enabled para ativar a API.
  4. No campo Available From, insira o endereço IP ou faixa de IPs que terão permissão para acessar a API.
  5. Clique em OK para salvar a configuração.

Example CLI command to enable the Secure API:

RouterOS
/ip service set api disabled=no
/ip service set api available-from=192.168.1.0/24

3. Setting Up Secure Authentication for the API

Para proteger ainda mais a API, você pode configurar autenticação segura, forçando o uso de senhas complexas e garantindo que somente usuários autorizados possam acessar a API.
  1. No menu System, clique em Users.
  2. Create a new user or edit an existing one.
  3. Set a strong password for the user, preferably using uppercase letters, lowercase letters, numbers, and special characters.
  4. No campo Group, selecione full ou outro grupo com permissões específicas para a API.
  5. Clique em OK para salvar.

Example CLI command to create a user with secure authentication:

RouterOS
/user add name="apiuser" password="senhaForte!123" group=full

4. Configuring the Firewall to Restrict Access to the Secure API

Para garantir que apenas dispositivos autorizados possam acessar a API do Mikrotik, é importante configurar regras de firewall para limitar o acesso a determinados endereços IP ou faixas de IPs confiáveis.
  1. No menu IP, clique em Firewall.
  2. Na aba Filter Rules, clique em Add para adicionar uma nova regra.
  3. Defina a Chain como Input, o Protocol como TCP e a Dst. Port como 8728 (porta padrão da API).
  4. No campo Src. Address, insira o endereço IP ou faixa de IPs que terá permissão para acessar a API.
  5. No campo Action, selecione accept para permitir o tráfego da faixa de IP autorizada ou drop para bloquear o tráfego não autorizado.
  6. Clique em OK para salvar a regra.

Example CLI command to configure the firewall for the API:

RouterOS
/ip firewall filter add chain=input protocol=tcp dst-port=8728 src-address=192.168.1.0/24 action=accept

5. Monitoring Access to the Secure API

Após configurar o acesso à API de forma segura, é importante monitorar as tentativas de acesso para garantir que não haja acessos não autorizados. Use os logs do Mikrotik para visualizar as tentativas de conexão à API.
  1. No menu System, clique em Log.
  2. Filter the entries to view API access attempts.
  3. Check whether there were access attempts from unauthorized IPs and take the necessary actions.

Example CLI command to view API access logs:

RouterOS
/log print where message~"API"

6. Testing the Secure API Configuration

Após configurar a API Secure e as regras de firewall, é importante testar se a configuração está funcionando corretamente. Tente acessar a API de um dispositivo autorizado e de um não autorizado para verificar se o acesso está restrito corretamente.
  1. Try accessing the API from an authorized IP and verify that you can connect.
  2. Try accessing the API from an unauthorized IP and verify that access is blocked.

Example command to test API access:

RouterOS
/system script run "TestAPI"

7. Adjusting the Secure API Configuration

Com o tempo, você pode precisar ajustar as configurações da API Secure, como adicionar mais endereços IP confiáveis ou atualizar as senhas dos usuários. Certifique-se de revisar as configurações periodicamente para garantir que a segurança da sua rede esteja em conformidade com as melhores práticas.
  1. No menu IP > Services, clique em API e revise a configuração de Available From.
  2. No menu System > Users, atualize as senhas dos usuários e os grupos de acesso, se necessário.

Example CLI command to update the API security configuration:

RouterOS
/ip service set api available-from=192.168.1.0/24
/user set apiuser password="novaSenhaForte!321"

8. Disabling the Secure API (If Necessary)

Se, por algum motivo, você precisar desabilitar a API Secure, basta seguir os seguintes passos:
  1. No menu IP > Services, clique em API e marque a opção Disabled.
  2. Clique em OK para aplicar a alteração.

Example CLI command to disable the API:

RouterOS
/ip service set api disabled=yes

Conclusion on Secure API Configuration on MikroTik

A configuração de API Secure no Mikrotik é fundamental para proteger sua rede e garantir que apenas usuários e dispositivos autorizados possam acessar e interagir com seus dispositivos Mikrotik de forma programática. Com as etapas descritas neste tutorial, você pode configurar a API de forma segura e monitorar o acesso para proteger sua infraestrutura. Gostou deste tutorial? Confira nossos outros guias sobre configuração de redes no Mikrotik e otimize sua segurança e conectividade!