Terminal logando vários SSH em abas

Publicado por Esli Silva (última atualização em 11/12/2013)

[ Hits: 10.005 ]

Homepage: https://esli.blog.br

Download ssh-servidores




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. ;-)

  



Esconder código-fonte

#!/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..."

Scripts recomendados

Script de monitoramento de host por icmp (ping )

Backup da base de dados PostgreSQL

Slackware 14.2 Pós-Instalação - Idioma, Teclado, Otimizações

Fazer o download de um website completo

SlackAcc


  

Comentários
[1] Comentário enviado por Williamm em 11/12/2013 - 11:23h

Bha, boa ideia... Parabéns.

[2] Comentário enviado por clarinhabez em 19/02/2014 - 15:06h

Muito boa essa dica, me ajudou a elaborar um script que tava tentando aqui!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts