Acesso SSH temporário e sem senha para amigos

SSH temporário

O diálogo abaixo é um conto, verídico, que aconteceu com um amigo de um amigo meu, aqui no sul, quando eles se depararam com a necessidade de um acesso SSH temporário.

 – Ô Ciclano? 
 – Fala Fulano.
– Onde é que tá aquele arquivo bagual_das_galaxia.tar.gz? 
  – Tá aqui na minha máquina, queres?
 – Sim, me dá. 
 – Tu tens pen drive?
– Não, me atira por e-mail. 
 – O firewall bloqueia o e-mail. Te loga na minha máquina por SSH e pega.
 – Certo tchê, qual é a senha? 
 – O quê!? Não vou te dar minha senha.
– Então como eu faço? 
 – Tens chave pública?
– Tenho, tá aqui na minha máquina. 
 #@%& !!!

Quem de nós, usuários Linux, nunca passou por uma situação parecida.

Acontece que é um tanto chato configurar acessos SSH. Ou precisa-se trocar as chaves manualmente, ou revelar a sua senha, ou então cria-se uma conta convidado para compartilhar.

É dessa dificuldade que nasceu o ssh-allow-friend, uma ferramenta de linha de comando que automaticamente e temporariamente instala as chaves públicas do seu amigo na lista de acessos autorizados de um usuário do seu sistema selecionado. As chaves são removidas ao término do compartilhamento, e, o mais interessante, é que elas serão obtidas de servidores como o Github. A ferramenta automatiza todo o processo ao ponto que basta uma linha de comando para liberar um acesso temporário a um amigo.

Para utilizar o ssh-allow-friend você precisa de três parâmetros de configuração:

  • escolher o usuário da sua máquina;
  • o servidor remoto de onde as chaves serão baixadas e;
  • o nome do usuário do seu amigo nesse servidor.

Por exemplo, os nossos dois amigos do conto narrado poderiam compartilhar acesso da seguinte maneira:

sudo -H -u ciclano_convidado ssh-allow-friend --github fulano-no-github

Agora, Fulano vai poder acessar a máquina de Ciclano utilizando o usuário “ciclano_convidado”. Após executar a linha de comando, as seguintes mensagens serão escritas na tela:

Acquired key for user fulano-no-gihub from github,
your friend is now able to login via ssh using:
    ssh ciclano_convidado@192.168.2.13

Login authorization will be ceased after this
program terminates.
Press ^C to exit.

Como o Fulano só quer copiar um arquivo, ele provavelmente utilizará o comando scp para obtê-lo, supostamente da seguinte maneira:

scp ciclano_convidado@192.168.2.13:/usr/local/bergamota/cacetinho/bagual_das_galaxia.tar.gz ./

Vale enfatizar que o acesso foi liberado por chaves, e então nenhuma senha é solicitada, mantendo assim os devidos sigilos da boa convivência entre membros da comunidade Linux.

Eu imagino que neste momento você deve estar sentindo um profundo desejo de obter esta ferramenta, então seguem os passos para instalá-la em sua máquina. Como o projeto está no Github e é composto por apenas um script Shell, as quatro linhas de terminal abaixo fazem todo o trabalho de instalação:

git clone https://github.com/flplv/ssh-allow-friend.git
cd ssh-allow-friend
chmod +x ./ssh-allow-friend
sudo cp ./ssh-allow-friend /usr/local/bin/

Prontinho! Você está pronto para usar o programa e compartilhar sessões protegidas com os seus amigos.

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.
Comentários:
Notificações
Notificar
1 Comentário
recentes
antigos mais votados
Inline Feedbacks
View all comments
Ronaldo Nunez
03/02/2017 11:05

Flor de especial essa dica, tchê!

Home » Software » Acesso SSH temporário e sem senha para amigos

EM DESTAQUE

WEBINARS

VEJA TAMBÉM

JUNTE-SE HOJE À COMUNIDADE EMBARCADOS

Talvez você goste: