Terminal logando vários SSH em abas
Publicado por Esli Silva (última atualização em 11/12/2013)
[ Hits: 9.967 ]
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..."
Script para rotacionar logs dos sites no Apache
Descubra o event correspondente ao seu dispositivo
Kronos - Sincronização de arquivos remotos
Zclamav - script para substituir o Clamtk
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Wifi não funciona no Aspire ES 15 com o Debian (8)
Como atualizar o Debian 8 para o 10 (10)
Dica sobre iptables ACCEPT e DROP (6)
NGNIX - Aplicar SNAT para evitar roteamento assimetrico (29)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta