Conexão remota com par de chaves SSH entre computador Windows e GNU/Linux

A segurança da informação tem sido tema de muita discussão sobretudo nos últimos anos. Aliado a isso, o trabalho de muitos profissionais da computação que desenvolvem suas funções remotamente tem ganhado destaque nesse contexto. Ainda existem muitos colegas que desconhecem métodos seguros para o tráfego de informações na internet.
Neste sentido, este breve artigo tem como proposta orientar todos os profissionais que queiram entender melhor como funciona um ambiente de produção que utiliza ambiente seguro para tráfego de informações ou simplesmente informar para que serve e como funciona isso.
Utilizaremos o seguinte ambiente para este exemplo:

Imaginemos que o PC do diagrama anterior pode ser dotado de qualquer sistema operacional. Temos os principais disponíveis no mercado: Windows, GNU/Linux e MacOS. Na outra ponta dessa conexão, temos um servidor GNU/Linux. Este, deve ser o ambiente acessado remotamente. Para efeito, assumimos que este servidor está configurado com com servidor web e nossa tarefa principal é atualizar aplicações disponíveis nesse ambiente. Para isso, utilizamos em nosso trabalho diário o FileZilla, cliente de acesso FTP SFTP. Agora vem a grande sacada que é a criação de par de chaves SSH para estabelecer essa conexão de maneira segura. Utilizaremos o PuttyGen para isso. Vamos aprender a utilizá-lo a partir do Windows e do GNU/Linux.

No windows

para sistemas operacionais windows nós temos a versão executável disponível para download aqui. Neste momento vamos baixar a versão 0.70 chamada putty-64bit-0.70-installer. Após o download completo vamos à instalação:

Basta seguir os passos clicando em Next e por fim em Install. Ao final aparecerá na relação de programas do Putty, o PuttyGen que utilizaremos para criar nosso par de chaves.

Agora, vamos executá-lo para criar nosso primeiro par de chaves SSH que utilizaremos no FileZilla. Veja:

O processo a seguir é muito simples. Nós deixaremos a opção “Type of key to generate” (Tipo de chave a ser gerado) marcado na opção RSA por se considerada o sistema criptográfico mais seguro atualmente. A opção “Number of bits in a generated key” também pode ser mantido em 2048. No entanto, é possível aumentá-lo para 4096. Isso aumenta ainda mais a segurança de seu par de chaves. Em seguida movimente o mouse sobre a janela para que a geração do par de chaves possa progredir. Ao final, a janela a ser mostrada será:

Note que a área selecionado refere-se ao script de sua chave pública. Este pode e deve ser compartilhado para troca de e-mails por exemplo. É esse script que deverá ser inserido no servidor GNU/Linux que pretendemos acessar remotamente. No entanto, ainda é possível inserir uma senha em seu par de chaves para aumentar ainda mais a segurança. Para isso, basta digitá-la nos campos “Key passphrase” e “Confirm passphrase”. Deixaremos esse campo em branco neste exemplo. Agora basta salvar as suas chaves clicando sobre os botões “Save public key” e “Save private key”.

ATENÇÃO

A sua chave privada não deve, em hipótese alguma, ser transferir por meios inseguros como, por exemplo, por e-mail. Ela deve ser mantida a 7 chaves utilizando-se para isso os meios mais seguros dos quais você disponha. Ela é a parte que deve ser mantida em sigilo absoluto. É intransferível devendo ser utilizada somente por você.

Agora você pode salvar suas chaves. Ao fazê-lo, será apresentado a tela padrão de salvamento utilizada pelo Windows.

Nela nos será solicitado a inserção de um nome para a chave a ser salva. Sugiro que coloque o mesmo nome nas duas chaves completando-o com os termos “publico” para a chave pública e “privado” para a chave privada como na figura anterior. Assim você conseguirá identificar facilmente as duas chaves e evitará de enviar a chave errada a alguém.

No GNU/Linux

Para este caso utilizaremos uma distribuição GNU/Linux Debian com interface gráfica XFCE. Nela, basta abrirmos o “Gerenciador de pacotes Synaptic” como mostra a figura a seguir:

Será solicitado que informe a senha de superusuário de seu sistema ou do usuário comum caso esteja inserido no sudoers. Digite a senha e na próxima tela será possível pesquisar o programa Putty. Veja:

Em seguida, basta procurar do lado direito nos resultados o nome do programa (Putty) e clicar sobre ele com o botão direito do mouse e escolher a opção “Marcar para instalação”:

Pronto, agora você já pode utilizar seu par de chaves para conexão entre computador cliente com Windows e um computador Servidor com GNU/Linux. Você deve colocar a chave pública no servidor GNU/Linux.

Neste gerenciador, se houver algum pacote ou dependência, será marcado automaticamente. Marque e clique no menu superior em “Aplicar” e depois em “Apply”. Pronto, ele iniciará a instalação. Depois de instalado, o putty poderá ser acessado via terminal linux. Abra o terminal de sua escolha e inicie o procedimento de criação de seu par de chaves ssh com o puttygen. Basta, para isso, executar os seguintes comandos:

puttygen -t rsa -b 2048 -o chaveprivada.ppk

Aqui será solicitado uma passphrase. Basta deixar em branco e apertar a tecla “Enter” duas vezes.

Agora, criaremos a chave pública:

puttygen -L chaveprivada.ppk

Caso reste dúvidas leia o material oficial disponível na internet em: < https://www.ssh.com/ssh/putty/linux/ >.

Pronto, agora você já tem o seu par de chaves. Basta utilizá-lo.

Fontes:
https://www.ssh.com
http://www.dc.ufscar.br/suporte/nossa-rede/acesso-remoto/ssh-usando-putty
https://www.kaspersky.com.br/resource-center/definitions/encryption

Conexões SSH, SCP, Rsync e Scripts usando Chave Pública e Privada

2 comentários em “Conexão remota com par de chaves SSH entre computador Windows e GNU/Linux”

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *