Novamente eu aqui com outro script para compartilhar!
esse script faz o backup em rádios da ubiquiti por ssh no mk-auth e envia por e-mail
1º vamos instalar o SSHPASS no mk-auth para eliminar os problemas com ssh e senha.
no terminal linux do mk-auth digite os comandos:
apt-get update
apt-get install sshpass
2º testando o sshpass com o comando:
primeiro veja se o seu mk-auth se comunica com o rádio ubiquiti com o comando:
ping ip_do_rádio
se está ok então teste assim:
sudo sshpass -p “SENHA” ssh 192.168.10.5 -l ubnt -p22
senha é a senha do rádio ubiquiti
192.168.10.5 é o ip do rádio
ubnt é o nome do usuário do rádio
-p22 é a porta ssh do rádio
Se deu tudo certo então vai acessar o rádio sem pedir senha.
Digite o comando:
exit
para sair.
3º Enviando os arquivos para o mk-auth
Baixe os arquivos em anexo,
Descompacte o arquivo ubiquiti.zip,
com o winscp envie o arquivo ubiquiti para a o diretório /usr/local/mkauth
vá até /usr/local/mkauth/ubiquiti procure o arquivo ubnt.txt
abra o arquivo ubnt.txt, nesse arquivo coloque os ips dos rádios que deseja fazer backup em ordem
ex:
192.168.10.5
192.168.10.6
192.168.10.7
"um IP por linha"
Salve o arquivo.
4º vamos ao script
Só altere onde está em negrito
procure no script as linhas:
ssh_user="ubnt" nome do usuário dos rádios
ssh_pass="12345" senha dos rádios
ssh_porta="22" porta ssh dos rádios
Atenção: todos os rádios tem que ter o mesmo usuário, senha e porta ssh iguais.
Configuração do e-mail
procure no script as linhas:
de="usuario@gmail.com" conta do usuário do e-mail
para="destino@hotmail.com" e-mail de destino (pode ser o mesmo)
smtp="smtp.gmail.com" smtp do gmail (se for usar gmail não precisa alterar)
porta="25" porta smtp
user="usuario" nome do usuário do e-mail
senha="senha_do_e-mail" senha do e-mail
NÃO PRECISA ALTERAR MAIS NADA NO SCRIPT
salve o arquivo como backup-ubnt.sh
5º Envie o arquivo backup-ubnt.sh para /usr/local/mkauth/scripts
Dê permissão para execução:
chmod +x /usr/local/mkauth/scripts/backup-ubnt.sh
Testando o script, digite o comando:
/usr/local/mkauth/scripts/backup-ubnt.sh
Se tudo deu certo confira no diretório /usr/local/mkauth/ubiquiti
o diretório cfg
dentro dele ficarão os arquivos de backup .cfg
veja támbem o arquivo backup-ubnt-"data".tgz
dentro dele ficarão os arquivos .cfg que serão enviados por e-mail
e confira se recebeu o e-mail com o backup.
Agendamento no crontab.
ex: executar o script as 04:30hr. da manhã
no terminal linux:
crontab -e
30 04 * * * * /usr/local/mkauth/scripts/backup-ubnt.sh
backup-ubnt.sh
#!/bin/bash
#======== ENVIAR BACKUP UBIQUITI POR E-MAIL ==========#
#=====================================================#
#======== USUARIO SENHA E PORTA SSH DOS RADIOS ======#
ssh_user="ubnt"
ssh_pass="12345"
ssh_porta="22"
#=====================================================#
#COMANDO UBIQUITI
comando="cat /tmp/system.cfg"
#
#EXECUTAR COMANDO UBIQUITI VIA SSH
for ubnt in $(cat /usr/local/mkauth/ubiquiti/ubnt.txt); do
sudo sshpass -p "$ssh_pass" ssh $ubnt -l $ssh_user -p$ssh_porta "$comando" > /usr/local/mkauth/ubiquiti/cfg/bkp-ubnt-$ubnt.cfg
done
#======== ENVIAR E-MAIL ===============================#
#COMPACTANDO PARA ENVIAR POR E-MAIL
dia="`date +%d-%m-%Y`"
cd /usr/local/mkauth/ubiquiti/
tar -zcvf backup-ubnt-$dia.tgz cfg
#
#ANEXANDO BACKUP
arq_tgz="`find /usr/local/mkauth/ubiquiti -mtime -1 -name '*.tgz'`"
anexo="$arq_tgz"
#
assunto="Backup UBIQUITI `date +%d/%m/%Y`"
mensagem="Arquivo de Backup em Anexo."
#
#======== CONFIGURACAO DO E-MAIL ======================#
de="usuario@gmail.com"
para="destino@hotmail.com"
smtp="smtp.gmail.com"
porta="25"
user="usuario"
senha="senha_do_e-mail"
#======================================================#
#ENVIANDO E-MAIL
echo "Enviando E-mail..."
sendEmail -f $de -t $para -u "$assunto" -m "$mensagem" -a $anexo -s $smtp:$porta -xu $user -xp $senha
#======================================================#
Amigo Pedro Filho, essa função merece entra na lista de upgrade do mk-auth!
hoje se usa muito os rádios da ubiquiti em torres nos provedores, para a segurança das configurações um backup integrado com o mk-auth já é de bom tamanho. Fica ai a dica,
Um abraço a todos!
Respostas
nesse caso as portas ssh dos radios tem que estarem iguais, ex: se for a padrão 22 todos tem que estarem com a porta ssh 22 configurada se for outra porta por ex: 1022 todos tem que estarem iguais, não importa qual seja o numero que vai usar na porta ssh!
Dario M Adaro disse:
vlw novamente...
Uma pequana correção, para testa vc tem q tirar o parenteses de ontem tem a senha, ex;
sudo sshpass -p “SENHA” ssh 192.168.10.5 -l ubnt -p22
sudo sshpass -p SENHA ssh 192.168.10.5 -l ubnt -p22 ( correto )
os 2 estão correto com "" -p "SENHA" ou sem - p SENHA
aqui dá certo!
Levi Ferreira disse:
aqui ja n deu, fiquei quebrando a kbeça e dando permição negada, ai pesquisando descobrir ai so foi tirar os " " que foi,
jonas oliveira da silva disse:
ola quanto tento executar a script da o seguinte erro sendo que ta la o arquivo.
root@mk-auth:~# /usr/local/mkauth/scripts/backup-ubnt.sh
-bash: /usr/local/mkauth/scripts/backup-ubnt.sh: /bin/bash^M: bad interpreter: Arquivo ou diretório não encontrado