Conexão com chaves assimétricas sem uso de senha em servidor sshd

Esse artigo explica como se conectar a um servidor remoto através de ssh sem a necessidade de senha. Usaremos criptografia assimétrica para a autenticação, ou seja, chaves pública e privada.

[ Hits: 23.821 ]

Por: Ricardo Brito do Nascimento em 12/04/2007 | Blog: http://brito.blog.incolume.com.br


Introdução



Para que seja possível este tipo de conexão em um servidor sshd é necessário o uso de criptografia. Será usada criptografia assimétrica, ou seja, chaves pública e privada.

A pública será colocada na máquina remota, é a chave que pode ser distribuída livremente, enquanto a privada deve ser guardada a sete trancas, pois é na chave privada que se baseia toda a segurança deste método.

Conexões deste tipo são bastante utilizadas na execução de scripts por acesso remoto, onde há a necessidade de preservar a integridade do sistema e a segurança da máquina.

PASSO 1 - Criação das chaves

Primeiramente deve-se estar logado com o usuário no qual deseja gerar a chave.

Digite no console:

$ ssh-keygen -b 1024 -t rsa

Onde:
  • ssh-keygen é o comando;
  • -b 1024 quantidade de bits que compõe a chave;
  • e -t rsa tipo de algoritmo usado para gerar a chave, a qual pode ser RSA (Rivest, Shamir and Adleman) ou DSA (Digital Signature Algorithm), que são evoluções do padrão de criptografia conhecido como DES (Data Encryption Standard).

Como referência a nível de segurança, os sítios bancários e e-commerce atualmente usam chaves de 128 bits. Para se ter um pouco mais de segurança a chave deverá ter no mínimo 128 bits, abaixo disto é insatisfatório. Uma chave 1024 bits é o suficiente para ter uma ótima segurança.

OBS: o sshd versão 1 trabalha somente com o algoritmo rsa, já na versão 2 trabalha tanto com algoritmos rsa como dsa.

Responda as solicitações no console, veja a tradução ao lado:

$ ssh-keygen -b 1024 -t rsa
Generating public/private rsa key pair. [Gerando o par de chaves pública/privada]
Enter file in which to save the key (/home/admin/.ssh/id_rsa): [Entre em qual arquivo a chave será salva]

Created directory '/home/admin/.ssh'. [criando o diretório]
Enter passphrase (empty for no passphrase): [entre com a frase senha, vazio para sem]
Enter same passphrase again: [confirme a frase senha]
Your identification has been saved in /home/admin/.ssh/id_rsa. [sua identificação foi salva em]
Your public key has been saved in /home/admin/.ssh/id_rsa.pub. [sua chave pública foi salva em]
The key fingerprint is: [a chave fingerprint is]
a6:af:64:cd:05:4e:3a:6e:64:fb:45:57:43:a1:a8:4d admin@apore.in.planalto.gov.br

Se for informado alguma frase senha, ela será solicitada no lugar da senha do usuário toda vez que a conexão for solicitada. Digite apenas enter para que fique vazia e nenhuma senha será solicitada.

O key fingerprint é a confirmação que as chaves foram salvas nos arquivos especificados.

    Próxima página

Páginas do artigo
   1. Introdução
   2. Configuração
Outros artigos deste autor

Formatando exibição de datas no Linux

Configurando Subversion

Comando sudo - instalação e configuração

Gerenciando certificados A1 fornecidos pelo ICB-Brasil no navegador Chrome sobre Linux

Clonagem de Hardware Hotline em Software Livre

Leitura recomendada

Drivers de impressão para clientes com Windows 7/XP

Problema resolvido: VMware Server 1.0.7 rodando no Debian Lenny Linux

Criando servidor de arquivos GNU/Linux com RAID virtual e DFS em rede Windows

Facilidades com Debian 4.0 Etch

Monitoramento de utilização do DNS

  
Comentários
[1] Comentário enviado por y2h4ck em 12/04/2007 - 10:24h

Bom, não preciso nem comentar nada né

http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=1084&pagina=2



[2] Comentário enviado por removido em 12/04/2007 - 11:18h

Estou achando os artigos fraquinhos ultimamente. Acho que acabou o conceito de qualidade. :(

[3] Comentário enviado por y2h4ck em 12/04/2007 - 11:49h

Foi oque eu comentei no Artigo de NETCAT postado esses dias, os Moderadores não estão mais analisando criticamente os artigos, se o cara escreveu sem erro de ortografia ta publicado ....

Estou muito triste com o andamento do VOL... Fabio me perdoe, mas acho que vc tem que me dar razão, minhas críticas visam somente o melhor para o VOL.

[4] Comentário enviado por epgielow em 12/04/2007 - 17:32h

pois eh ...

[5] Comentário enviado por lacierdias em 13/04/2007 - 09:57h

Gente não vamos transformar o artigo do companheiro em discussão sobre qualidade e capacidade critica dos moderadores.
Gostaria de propor uma enquete sobre o assunto.

Uma coisa que venho observado é que nos artigos antigos não temos como fazer atualizações ou correções de configuração.
Queria saber se isso é possível.
Cada tutorial editado pelo autor entraria de novo para a fila de moderação como se fosse um artigo novo.

Assim acho que evitaríamos do autor de um artigo escreva outro para atualizar o primeiro e assim manteríamos tudo sempre atualizado.

Oq vcs acham?

Lacier Dias

[6] Comentário enviado por fabio em 13/04/2007 - 11:50h

Pô, até concordo que existem artigos que tem deixado a desejar, mas meu papel é filtrar somente o que não tem condições, a avaliação/julgamento do artigo fica mais por conta da comunidade, que pode votar e comentar.

Em fevereiro tivemos uma seqüência de artigos excelentes, esse mês ainda não engrenamos, mas isso não passa de coincidência. Porém com o acúmulo de tempo, a escassez de assuntos inéditos se atenua, visto que novidades tecnológicas são lançadas menos vezes que artigos no site, daí há essa tendência de assuntos repetidos.

Esse artigo aqui por exemplo possui um similar (o link que você indicou) que foi publicado em 2003, não vejo motivos para alarde com relação a isso, pelo contrário, o artigo de 2003 aparece lá atrás no índice de busca do google, enquanto que esse, por ser recente, lá na frente. Isso é bom pro site, que necessita de page views pra gerar receita de anúncio e se manter.

Falando sobre este artigo, ao que o texto se propõe, que é a autenticação sem chaves, a informação aqui contida está bem completa. Trata-se de um assunto simples e objetivo, não dá pra enrolar muito.

Concordo com suas críticas, mas não há mágica a se fazer. Os melhores artigos não são produzidos diariamente.

Um abraço,
Fábio

[7] Comentário enviado por demattos em 13/04/2007 - 21:03h

Achei interesante o artigo publicado, tenho este processo funcionando perfeitamente, valeu pela ajuda, e acredito que tem ajudado mais jente por ai, mas aproveitando vou deixar uma critica a aqueles que jugam os artigos de fraco por que estes nao fazem algo melhor para ajudar os iniciantes ou ja estao altos suficientes para somente jugar e nao mais contribuir, o o vivaolinux tem sido para mim um lugar de descubertas



t+

[8] Comentário enviado por super7 em 14/04/2007 - 11:38h

O artigo é excelente, existe um similar bem antigo. Nao vejo motivo para criticar nosso amigo que gastou seu tempo escrevendo, pq ele nao precisava escrever, ele ja usou isso na pratica e resolveu seu problema, ele somente ajudou. Portanto se vc acha que falta qualidade.... quem fa a qualidade nao é só ele que publicou, mas eu , voce e todos. Portanto alem de ficar escrevendo comentarios desnecessarios, publique artigos com algum conhecimento seu. Um abraço, Daniel

[9] Comentário enviado por y2h4ck em 14/04/2007 - 13:10h

super7, não acho que meu comentário seja desnecessário. Acho que foi bom, dar uma acordada na galera.

Se vc achou desnecessário beleza :)

[10] Comentário enviado por jhenrique em 30/04/2007 - 13:53h

Uma pequena contribuição: o nome do arquivo com a chave no host de destino deve ser ~/.ssh/authorized_keys ou ~/.ssh/authorized_keys2 (a menos que seja especificado outro nome em /etc/ssh/sshd_config).

Parabéns pelo Artigo. Ficou muito bom...

[11] Comentário enviado por rbn_jesus em 15/05/2007 - 09:05h

Obrigado jherique por sua contribuição! foi erro de digitação.

[12] Comentário enviado por rbn_jesus em 15/05/2007 - 09:06h

!!!RATIFICAÇÃO!!!
Onde está escrito autorized_keys ou autorized_keys2,
leia-se << authorized_keys >> ou << authorized_keys2 >>

Desculpas a todos


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts