Ao adotar um dispositivo para a MKController você deve copiar um script para seu Mikrotik. O objetivo deste material é explicar o que o script faz no seu Mikrotik e o que a remoção de algumas regras pode acarretar.
Requisitos Básicos
RouterOS deve estar na versão 6.39 ou superior.
1 – Importação do certificado VPN
- É salvo no sistema de arquivos o certificado ovpn que será utilizado para a conexão ovpn
- O certificado é importado no Mikrotik. Podendo ser acessado pelo menu System -> Certificates
Comando:
/certificate import file-name=”[ID DO CERTIFICADO]” passphrase=””
2 – Criação do Profile
- É criada uma regra de perfil que será utilizado no túnel VPN
Comando:
/ppp profile add name=”[ID DO PROFILE]” use-encryption=yes comment=”MKController”
3 – Criação do Túnel VPN Client
Utilizando o certificado da etapa 1 e o perfil da etapa 2 é criada uma conexao ovpn com o servidor ovpn.mkcontroller.com
Comando:
interface ovpn-client add connect-to=”ovpn.mkcontroller.com” user=”[ID DO USUARIO]” auth=sha1 cipher=aes256 certificate=”[ID DO CERTIFICADO]” port=443 profile=”[ID DO PROFILE” name=”MKController” comment=”MKController”
4 – Firewall
É Criado uma regra de firewall de permissão garantindo que o gateway da vpn (10.8.0.1) tenha acesso ao mikrotik pelo túnel criado na etapa acima
Comando:
/ip firewall filter add chain=input action=accept src-address=”10.8.0.1″ priority=0 comment=”MKController”
5 – Monitoramento
É criado um script de monitoramento no mikrotik para enviar dados para monitoramento como consumo de CPU, Consumo de disco, Consumo de memória, etc
Comando:
/system scheduler add name=”resources-1d9ca987″ interval=”90″ on-event=”[EVENTO] comment=”MKController”
6 – Usuário no Mikrotik
É criado um usuário no Mikrotik com permissão de administrador que será gerenciado nas comunicações entre MKController e Mikrotik. A senha deste usuário e alterado frequentemente visando impedir ataques de força bruta
Comando:
/user add name=”[ID do usuario]” group=full password=”[Senha temporaria]”
7 – Prioridade
A regra criada no item 5 e colocada em primeiro da lista, garantindo que a MKController tenha acesso ao dispositivo mesmo que existam outras regras de negação
Comando:
:do {
:local n [/ip firewall filter find where comment=”MKController”];/ip firewall filter move numbers=$n destination=0
} on-error {
8 – Ativação de Portas
- São ativadas as portas webfig, ssh, api, winbox e ftp
- Se a porta estiver fechada, ela será ativada com permissão de uso para o endereço 10.8.0.1, garantindo que apenas o acesso via ovpn possa acessar
- Caso a porta esteja aberta, o endereco 10.8.0.1 vai ser adicionado na lista de permissão de acesso
- Todas os serviços podem ser conferidos em IP-> Services
Comandos:
/ip service enable www; /ip service set www address=”10.8.0.1″
/ip service enable winbox; /ip service set winbox address=”10.8.0.1″
/ip service enable ssh; /ip service set ssh address=”10.8.0.1″
/ip service enable api; /ip service set api address=”10.8.0.1″
/ip service enable ftp; /ip service set ftp address=”10.8.0.1″
O que acontece se cada serviço for fechado.
- Serviço www – A conexão webfig nao ira funcionar via plataforma web e aplicativo;
- Serviço winbox – A conexão winbox não irá funcionar via plataforma web e aplicativo;
- Serviço ssh – Os serviços de backup não irão funcionar, assim como o upload e download de arquivos;
- Serviço api – As apis públicas do sistema como walled garden não irão funcionar (Documentação completa em https://app.mkcontroller.com/mkcontroller-public/);
- Serviço ftp – As funcionalidades de sistema de arquivos nao vao funcionar como integração ftp, listagem de arquivos e envio de arquivos em lote