Skip to content

Instantly share code, notes, and snippets.

@asfelix
Created November 6, 2015 10:44
Show Gist options
  • Select an option

  • Save asfelix/53be15a227f78336c8b2 to your computer and use it in GitHub Desktop.

Select an option

Save asfelix/53be15a227f78336c8b2 to your computer and use it in GitHub Desktop.
Enviar comando de configuração via SSH para diversas RouterBoards Mikrotik simultaneamente
#!/bin/bash
############################################################################
# Enviar comando de configuração via SSH
# para diversas RouterBoards Mikrotik simultaneamente
# enviaSSH.sh – v.0.1 – 2011/03/01
#
# Autor: Alexsandro Felix
# Site: http://blog.ffelix.eti.br
# E-mail/MSN/GTalk: felix@ffelix.eti.br
# Este script pode ser copiado e modificado livremente,
# desde que os devidos créditos sejam concedam ao autor os devidos créditos
# O script original pode ser encontrado em: http://wp.me/pLEMr-Xt
############################################################################
# Fazemos um backup das configurações atuais de nosso terminal
bkpterminal=`stty -g`
# De modo interativo, pega informações de login e senha
# para acessar as RouterBoards
echo "Digite seu login para as RB’s'"
read usuario
export user=$usuario
echo "Digite sua senha das RB’s"
# Desativa a saída de caracteres no monitor
# para que outras pessoas não vejam qual sua senha
stty -echo intr ‘^a’
read passwd
export senha=$passwd
# Volta a configuração de terminal previamente salva
stty $bkpterminal
# Defina qual a porta de conexão que o seu servidor SSH escuta
# por questões de segurança é recomendável sempre alterar a porta padrão 22
# para alguma outra de sua preferência que esteja livre
export porta=00000
# Substitua abaixo o trecho de exemplo:
# set http-proxy=111.111.111.111:2222
# pelo IP de seu Proxy e sua respectiva porta
for i in $(cat rbs.txt); do
export host=$i
expect -c ‘
spawn -noecho ssh $env(user)@$env(host) -p $env(porta) /ip hotspot profile set http-proxy=111.111.111.111:2222 numbers=0,1;
expect "ssword:"
send $env(senha)r
interact
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment