Terminal logando vários SSH em abas
Publicado por Esli Silva (última atualização em 11/12/2013)
[ Hits: 9.858 ]
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..."
Uma loja de apps por linha de comando
Shell para extrair informações de impressoras Brother
Script para montar/desmontar cdrom e disquete
Atualizar o macOS no Mac - Opencore Legacy Patcher
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Instalando Zoom Client no Ubuntu 24.04 LTS
Instalando Zoom Client no Fedora 40
Instalando Navegador Firefox no Debian 12
Bloqueando propagandas no Youtube e outros sites com o uBlocker Origin
Configurando static ipv6 em placa de rede eth0[DUVIDA] (2)
Sistema da Coréia do Norte - Red Star OS (59)