Backup automático Router Board Mikrotik

Com a necessidade de realizar backup os arquivos de configurações do Mikrotik, realizei algumas pesquisas na internet para realizar o backup de forma automática. No ambiente que será citado abaixo foi usado Debian 7, Router OS v 6.17 (RB’s 450g, 1100×2, 1100).

Vamos entender o cenário. Esse Debian 7, no meu ambiente ele é um servidor FTP, onde utilizo para salvar backups e demais arquivos. O que precisamos é fazer com que este servidor se conecte via SSH nos roteadores da minha rede, execute os comandos de backups que precisamos, e depois copie os backups gerados para uma pasta no servidor. A conexão entre o servidor e roteador será autorizada por chave pública. Ficara mais claro na pratica, então, vamos lá!

Primeiro recomendo que seja criado um usuário para backup no roteador:

Já conectado no Mikrotik, via WinBox, acesso o menu: “System > Users” e crie um usuário com acesso full. Vamos supor que criamos um usuário chamado “BKP”.

Pronto, já temos um o usuário que iremos usar apara acessar o Mikritik via SSH e executar os script’s. Agora precisamos gerar a chave pública no nosso servidor que irá estabelecer a conexão e realizar os backups.

Caso você já tenha gerado chave pública para algum outro fim, você pode utilizar a mesma, caso não, pode criar uma nova. Para verificar se já existe alguma chave, acesse o diretório .ssh do seu usuário, como estou como root no Debian 7, o diretório é:

/root/.ssh/

bkpmk

Caso não tenha a chave, vamos criar:

ssh-keygen -t dsa

Agora vamos enviar essa chave para o Router, dentro do diretório .ssh, execute o seguinte comando:

PS: Não se esqueça de verificar os serviços de ftp e shh do Router estão ativos e as portas estão 22 e 21 estão abertas.

Ao executar o comando, irá ser solicitado o login e senha de acesso ao Router, que pode ser o que acabamos de criar.

sftp ip_do_mikrotik

Se conseguiu se conectar com o comando anterior, basta fazer upload da chave agora:

put id_dsa.pub

Feito isso, a chave já estará no servidor. Basta fazer a importação de autorização dela.

Bom, no mikrotik vá em New Terminal > e faça o seguinte;

user ssh-keys

import

Será solicitado o nome da chave e do usuário:

public-key-file: id_dsa.pub

user: BKP (O que acabamos de criar)

Pronto, com isso o acesso está feito. O que precisamos fazer agora é somente criar o script para realizar o backup automaticamente.

Baixe aqui um arquivo de exemplo:

script_backup_exemplo_prideti

Depois de ter o arquivo de configuração pronto, basta executar quando for necessário, ou o mais indicado seria adicionar a crontab do servidor para realizar backup automaticamente. Para adicionar tarefas na crontab, veja esse outro post: http://www.prideti.com/2015/04/adicionando-tarefa-na-crontab-linux/

Duvidas, postem nos comentários.

One thought on “Backup automático Router Board Mikrotik

  • janeiro 25, 2016 em 9:08 pm
    Permalink

    Complementando:

    No momento de gera a chave com o comando “ssh-keygen -t dsa” deve informar uma passphrase. Essa senha tem como objetivo garantir que é realmente o servidor ssh que possui o arquivo chave, e não um outro host intermediário. Caso você não queira informar a passphrase toda vez que realizar uma conexão com o servidor, basta apenas deixá-la em branco.

    Outra questão importante é o arquivo known_hosts, este arquivo tem como função armazenar os hosts que são “conhecidos” pelo cliente ssh, em outras palavras, os hosts que tem permissão de efetuar a comunicação com o cliente. Um host é adicionado ao arquivo assim que é realizada a primeira comunicação, caso você queira que o host seja adicionado automaticamente, utilize o comando “ssh -o StrictHostKeyChecking=no usuario@endereco_host”. Se você estiver com problemas ao se conectar ao servidor, tente limpar o arquivo known_hosts.

    Espero ter ajudado!
    Abraço

    Resposta

Deixe um comentário

O seu endereço de e-mail não será publicado.