Terminal logando vários SSH em abas

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

[ Hits: 10.138 ]

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

Gerenciador de contas de usuários

Monitoramento de espaço em disco

Coleta de Performance com SAR (systat package)

Backup em HD Externa com Rsync

Gerenciador de conexões SSH


  

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