Terminal logando vários SSH em abas
Publicado por Esli Silva (última atualização em 11/12/2013)
[ Hits: 10.225 ]
Homepage: https://esli.blog.br
Olá.
Segue um script bem simples para logar em vários servidores via SSH usando abas no terminal (GNOME ou MATE).
Às vezes preciso logar em determinados servidores via SSH e manter as conexões abertas. Porém é muito chato ficar digitando usuário, senha, IP e porta em varias abas... Isto não me incomoda tanto a ponto de procurar alguma solução mais elaborada ou pronta.
No script abaixo, uso as flags do gnome-terminal (também funciona no mate-terminal - não testei em outros), e também as flags do cliente SSH:
- "--hide-menubar" para ocultar a barra de menu da janela do gnome-terminal;
- "--geometry=100x50+0+0" para determinar o tamanho e posição da janela;
- "-t" para declarar o nome da aba;
- "--working-directory=" para declarar em qual diretório do servidor remoto meu usuário estará logado;
- O "-e" executa o comando seguinte dentro do terminal e o "-p" no SSH é para informar a porta do serviço (o padrão é 22, mas aqui utilizo a 22100).
Cada linha (--tab) é uma aba com uma conexão (pode-se colocar quantas quiser...), a ultima, não tem o "\" (na verdade, tudo é uma linha só...).
Para facilitar ainda mais, utilizo chaves com meu PC e os servidores, com isto, ao executar o script, o terminal já abre com todas as abas logadas... (Não precisa inserir senha...).
Você pode deixar o arquivo na área de trabalho (não esqueça de marcar como executável) ou no meu caso, salvei no /opt e criei uma entrada no menu do MATE.
Não se esqueça de alterar as configurações para sua conexão. ;-)
#!/bin/bash notify-send "Foi aberto o terminal com acesso via SSH aos Servidores!" mate-terminal --hide-menubar --geometry=100x50+0+0 \ --tab -t FIREWALL --working-directory=/home/eslih/ -e 'ssh -4 eslih@172.22.0.1 -p 22100' \ --tab -t XENServer --working-directory=/home/eslih/ -e 'ssh -4 eslih@172.22.1.1 -p 22100' \ --tab -t Oracledb --working-directory=/home/eslih/ -e 'ssh -4 eslih@172.22.1.2 -p 22100' \ --tab -t WEBServer --working-directory=/home/eslih/ -e 'ssh -4 eslih@172.22.1.3 -p 22100' notify-send "As conexões SSH foram fechadas..."
Screenserver no modo texto - versão 1
burncd - programa para gravar ISOs
Instalação do BrOffice.org 3.2.1 em distros Debian-like
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Atualizar Debian Online de uma Versão para outra
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Debian 13 Trixie para Iniciantes
Convertendo pacotes DEB que usam ZSTD (Padrão Novo) para XZ (Padrão Antigo)
Debian 13 "trixie&... lançado! (44)
Rust é o "C da nossa geração"? (3)
Gerenciador de arquivos é finalizado ao abrir pasta específica (2)