O resultado final foi o 'ac' ou Auto Connector , e
seu uso é bastante simples, por exemplo:
Para criar uma conexão ssh:
$ ac -a -n teste1 -i 10.0.0.1 -P 22 -u user -p senha123 -t ssh -c "Conexão de Teste" Adding: teste1,10.0.0.1,22,user,*****,ssh,Conexão de Teste,-X -C -o PreferredAuthentications=password,keyboard-interactive
Para listar todas conexões criadas:
$ ac -ls NAME IP / HOSTNAME USER TYPE COMMENT teste1 10.0.0.1 user ssh 'Conexão de Teste'
Para mostrar detalhes de uma conexão:
$ ac -s teste1 Connection Name: teste1 IP Address: 10.0.0.1 Port Number: 22 User Name: user Passwd: ***** Connection Type: ssh Comment: 'Conexão de Teste' SSH OPTIONS: '-X -C -o PreferredAuthentications=password'
Para conectar:
$ ac teste1 user@10.0.0.1's password: X11 forwarding request failed on channel 0 user@10.0.0.1> user@10.0.0.1>logout Connection to 10.0.0.1 closed.
Além disso, é possível se conectar em cadeia, especificando várias
conexões salvas o programa vai conectando de um nó a outro, até
terminar a lista.
Também é possível alterar e remover conexões,
salvar grupos de conexões (para conexão em cadeia), especificar uma
chave ssh ao invés de senha, é possível que o script peça a senha
interativamente para que não tenha que digita-la na linha de
comando, e também clonar conexões.
Por enquanto o script suporta conexões ssh, sftp,
ftp e telnet.
Abaixo mostro o help do comando com todas as suas
opções:
Uso:
ac [-a|-d|-x|-l|-h|-m|-s] [-n nome|-i ip|-P porta|-u user|-p password| -k ssh key_identity_file|-c commentario|-t tipo|-o ssh_options] [nome]
Para conectar a uma conexão já salva:
ac < nome> [< nome_01>...< nome_N>]
Onde 'nome' e 'nome_XX' são os nomes de conexões salvas (Se mais de
uma conexão é especificada, o script vai conectar ao primeiro nó,
depois a partir desse nó vai conectar ao que segue, e assim por
diante até acabar a lista.)
Adicionar / Salvar conexão:
ac -a -n < nome> -i < ip> -u < usuario> -t < tipo> [-P < port_number>|-p < password>|-k < ssh_key_id_file>|-c < comment>]
-n < nome>
|
Nome da conexão a ser salva
|
---|---|
-i < ip>
|
IP ou nome do host
|
-t < tipo>
|
Tipo de conexão, as seguintes são
suportadas: 'ssh telnet ftp sftp'
|
-u < usuario>
|
Usuário no servidor remoto -P < porta>
Número da porta (Se não especificado se usará a padrão para o
tipo de conexão)
|
-p < password>
|
Senha para o usuario, se não especificada, ou
se conter um hífen (-), então a senha será pedida (Opção não
suportada com -k)
|
-k < key_id_file>
|
Chave de autorização SSH, opção não
suportada com -p
|
-c < comentário>
|
Comentário para a conexão
|
Para deletar uma conexão salva:
ac -x < nome> Nome da conexão ou do grupo para se deletar
(Caso a conexão pertença a um grupo, ela não será deletada)
Modificar uma conexão salva:
ac -m < nome> [-n < novo nome>] [-i < ip>] [-u < usuario>] [-t < tipo>] [-P < porta>] [-p < password>] [-k < ssh_key_id_file>] [-c < comentário>]
< nome>
|
Nome da conexão a ser alterada
|
---|---|
-n < nome>
|
Novo nome da conexão
|
-i < ip>
|
Novo IP ou nome do host
|
-t < tipo>
|
Novo Tipo de conexão, as seguintes são
suportadas: 'ssh telnet ftp sftp'
|
-u < usuario>
|
Novo usuário no servidor remoto
|
-P < porta>
|
Novo número da porta (Se não especificado se
usará a padrão para o tipo de conexão)
|
-p < password>
|
Nova senha para o usuario, se conter um hífen
(-), então a senha será pedida (Opção não suportada com -k)
|
-k < key_id_file>
|
Nova Chave de autorização SSH, opção não
suportada com -p
|
-c < comentário>
|
Novo Comentário para a conexão
|
(Todos parametros são opcionais, mas ao menos um
deve ser especificado)
Para Duplicar / Clonar uma conexão salva:
ac -d < nome> -n < novo nome> [-i < ip>] [-u < usuário>] [-t < tipo>] [-P < porta>] [-p < password>] [-k < ssh_key_id_file>] [-c < comentário>]
-n < nome>
|
Nome da conexão a ser salva
|
---|---|
-i < ip>
|
IP ou nome do host
|
-t < tipo>
|
Tipo de conexão, as seguintes são
suportadas:
ssh telnet ftp sftp |
-u < usuario>
|
Usuário no servidor remoto
|
-P < porta>
|
Número da porta (Se não especificado se
usará a padrão para o tipo de conexão)
|
-p < password>
|
Senha para o usuario, se não especificada, ou
se conter um hífen (-), então a senha será pedida (Opção não
suportada com -k)
|
-k < key_id_file>
|
Chave de autorização SSH, opção não
suportada com -p
|
-c < comentário>
|
Comentário para a conexão
|
(Todos parametros são opcionais, exceto <
novo_nome>)
Mostrar conexões e configuração:
-lc
|
Lista conexões
|
-lg
|
Lista grupos
|
-lp
|
Lista preferencias
|
Mostrar detalhes de uma conexão ou grupo:
ac -s < nome> [-e] Onde nome é uma conexão ou grupo salvo
(Se utilizado com -e, as senhas serão mostradas)
Mostrar ajuda:
-h
|
Mostra essa ajuda e termina.
|
O script pode ser baixado em
https://sourceforge.net/p/autoconnector
Procedimentos
#/* ac: Autoconnector
# *
# *
----------------------------------------------------------------------------
# * "THE BEER-WARE
LICENSE" (Revision 42):
# * <saunite@gmail.com>
wrote this file. As long as you retain this notice you
# * can do whatever you
want with this stuff. If we meet some day, and you think
# * this stuff is worth
it, you can buy a beer in return to André Saunite
# * (Thanks to
Poul-Henning Kamp <phk@FreeBSD.ORG> for this amazing license)
# *
----------------------------------------------------------------------------
# *
# * ac -> Auto
Connector (or André's Connector) :P
# *
# * This is a Terminal
connection manager (no GUI), intended to be used with
# * your favorite
Terminal application (Konsole, Gnome-Terminal, yakuake, and
# * so on) or to be
used in machines with no GUI available.
# *
# * Creation date:
2012/09/06 # * Last change: 2012/10/03
# *
# *
----------------------------------------------------------------------------
# *
# * Installation
Instruction
# *
# * For ac to run
correctly, some perl modules need to be installed, in Debian
# * you can just
install those packages:
# *
# * perl-modules
# * libcrypt-ecb-perl
# * libexpect-perl
# *
libterm-readkey-perl
# *
libcrypt-blowfish-perl
# *
# * In case you are
using another system or prefere to install all via CPAN,
# * do the following:
# *
# * Enter cpan:
# *
# * $ sudo cpan
# *
# * Run the
installation of the needed modules:
# *
# * install Expect
# * install
Term::ReadKey
# * install Getopt::Std
# * install
Crypt::Blowfish
# *
# *
----------------------------------------------------------------------------
Source: README, updated
2012-10-03
Nenhum comentário:
Postar um comentário