Esta solução que encontrei foi a única que consegui para poder ejetar comandos em um mikrotik através de um script shell do Linux.
Quando começei a pensar nessa possibilidade não encontrei nada na internet que fizesse isto. Solução esta que me serviu muito na hora que fui contribui para o projeto SAGU-PRO na integração com MKT como gateway remoto.
Iremos usar um programinha chamado sshpass que pode ser adquirido em http://nixbit.com/cat/security/sshpass/.
Efetue download do sshpass-1.00.tar.gz
Vamos instalar o sshpass:
tar -zxvf sshpass-1.00.tar.gz
cd sshpass-1.0
./configure
make
make install
Feita a instalação vamos executar:
cd /usr/bin/
ln -s /usr/local/bin/sshpass
Vamos agora logar uma vez no mikrotik para testar a conexão:
ssh usuariodomikrotik@ipdomikrotik
Irá aparecer uma pergunta:
Are you sure you want to continue connecting (yes/no)?
Responda yes
Pronto nosso linux já pode ejetar comandos no mikrotik.
EXEMPLOS:
Adicionando um ip:
sshpass -p senhadousuariomikrotik ssh usuariodomikrotik@ipdomikrotik “/ip address add address=2xx.xxx.xxx.xxx/26 interface=ether1″
Adicionando rota:
sshpass -p senhadousuariomikrotik ssh usuariodomikrotik@ipdomikrotik “/ip route add gateway=2xx.xxx.xxx.xyy/26″
Adicionando um usuário:
sshpass -p senhadousuariomikrotik ssh usuariodomikrotik@ipdomikrotik “/user add name=sagu-pro group=full password=senha”
Estes são apenas alguns dos diversos comandos que você pode ejetar no mikrotik como adicionar /queue simple (Controle de Velocidade), /ip firewall (Regras de firewall), etc…