Executar Scripts Remotamente
Muitas vezes, em uma rede, laboratório ou em um cluster (ou até mesmo de um único computador para outro), é necessário rodar um script remotamente e temos de contornar a senha do SSH.
Com o presente artigo e os respectivos scripts, executaremos scripts remotamente.
Com o presente artigo e os respectivos scripts, executaremos scripts remotamente.
Introdução
Muitas vezes, em uma rede, laboratório ou em um cluster (ou até mesmo de um único computador para outro), é necessário rodar um script remotamente e temos de contornar a senha do SSH. Com o presente artigo e os scripts adiante, executaremos scripts remotamente.
Pode parecer uma falha de segurança, mas quando se trabalha com vários computadores em rede torna-se contraproducente ficar digitando a senha do SSH repetidas vezes, mas basta ter cuidado, pois trata-se de script para execução interna na rede/laboratório/cluster.
Além disso, temos dois scripts: um com senha SSH e outro somente com chave SSH (mais seguro). Utilize o que for mais conveniente para você. Use um ou outro, pois depende de como você configurou o SSH: com chave (mais seguro) ou com senha.
Não colocarei aqui como executar através do Linux um script/batch no Windows, pois não é o escopo do artigo.
A lógica é bem simples: coloque nos scripts
Caso os dois scripts, o chamado e o chamador, façam conexões SSH dará erro e/ou pedirá senha em cima de senha; isso não é incontornável no Linux, mas para o que se pretende não vale a pena o trabalho.
Como bônus, deixo ao final o script
Tal script copia as chaves SSH, cria remotamente o arquivo
Temos quatro seções no artigo:
Nível: Intermediário.
E, como sempre, respeitando a Velha Máxima casada com o Velho Ditado: tenha a decência de ler todo o artigo antes de sair executando comandos!
Pode parecer uma falha de segurança, mas quando se trabalha com vários computadores em rede torna-se contraproducente ficar digitando a senha do SSH repetidas vezes, mas basta ter cuidado, pois trata-se de script para execução interna na rede/laboratório/cluster.
Além disso, temos dois scripts: um com senha SSH e outro somente com chave SSH (mais seguro). Utilize o que for mais conveniente para você. Use um ou outro, pois depende de como você configurou o SSH: com chave (mais seguro) ou com senha.
Não colocarei aqui como executar através do Linux um script/batch no Windows, pois não é o escopo do artigo.
A lógica é bem simples: coloque nos scripts
executa-geral-senha.sh ou executa-geral-chave.sh o caminho e o nome do script que você quer executar remotamente.
Caso os dois scripts, o chamado e o chamador, façam conexões SSH dará erro e/ou pedirá senha em cima de senha; isso não é incontornável no Linux, mas para o que se pretende não vale a pena o trabalho.
Como bônus, deixo ao final o script
copia-chave-distros.sh que deve ser executado diretamente no terminal com:
./copia-chave-distros.sh.
Tal script copia as chaves SSH, cria remotamente o arquivo
/etc/sudoers.d/usuario e configura esse arquivo com ALL=(ALL) NOPASSWD: ALL e Defaults:usuario !requiretty.
Temos quatro seções no artigo:
- Seção do script com senha;
- Seção do script com chave;
- Como utilizar os scripts e
- Bônus.
Nível: Intermediário.
E, como sempre, respeitando a Velha Máxima casada com o Velho Ditado: tenha a decência de ler todo o artigo antes de sair executando comandos!
mas acredito que para fins mais profissionais, a utilização de ansible seria mais tranquilo..
sucesso!!
---
Linux para suporte: http://sino.ernandes.info