gera chave de autenticação para ssh

1

(1) Eu uso os seguintes comandos no computador A para gerar a chave de autenticação do ssh do computador A para o computador B

ssh-keygen -t rsa
scp ~/.ssh/id_rsa.pub B:.ssh/authorized_keys2

(a) se ainda gerar chave de autenticação para ssh do computador A para o computador C, como você fará isso? é uma boa maneira de simplesmente usar o mesmo ~ / .ssh / id_rsa.pub para A a B, ou seja,

scp ~/.ssh/id_rsa.pub C:.ssh/authorized_keys2

(b) se ainda gerar chave de autenticação para ssh do computador B para o computador D, é correto repetir os comandos de A para B em B?

ssh-keygen -t rsa
scp ~/.ssh/id_rsa.pub D:.ssh/authorized_keys2

(2) Parece haver outro método para A a B:

ssh-keygen
ssh-copy-id -i ~/.ssh/id_rsa.pub B

qual é a diferença entre (2) e (1)? O que você fará se usar os comandos de (2) nos casos (a) e (b) de (1), especialmente (b)?

Obrigado e cumprimentos!

    
por Tim 27.10.2009 / 01:40

2 respostas

1

Eu uso o método 1 e copio minha chave pública para todos os servidores que eu quero acessar (usando essa chave). A chave pública não fornece nenhuma maneira de identificar os outros locais para os quais ela pode ser distribuída, e se você começar a usar várias chaves para vários hosts que você está tentando acessar, você criará um pesadelo de gerenciamento para si mesmo.

Apenas certifique-se de manter sua chave privada privada e protegida com uma frase secreta.

    
por 27.10.2009 / 01:50
1

Se você tiver acesso ao comando 'ssh-copy-id', essa é uma boa maneira de configurar inicialmente o SSH Auth. do host de origem. O script ssh-copy-id simplesmente pega sua chave pública, copia-a para o host remoto, para o arquivo ~ / .ssh / authorized_keys. Também garante que o diretório ~ / .ssh exista e tenha o modo configurado para 700 (go-rwx).

Se você estiver configurando uma Cadeia de Autenticação SSH simples entre várias máquinas, como descrito acima, você pode usar a mesma chave para todas as máquinas. Uma receita simples para isso seria:

Gerar chave DSA de 1024 bits (também pode ser RSA, mas, em seguida, 2048 bits ou mais)

A ~# ssh-keygen -t dsa

Distribua a chave pública para os outros três hosts. Aqui você será apresentado com login normal para o usuário @ B, usuário @ C e usuário @ D

A ~# ssh-copy-id -i .ssh/id_dsa.pub user@B
A ~# ssh-copy-id -i .ssh/id_dsa.pub user@C
A ~# ssh-copy-id -i .ssh/id_dsa.pub user@D

Após o id ser copiado, você pode distribuir a chave privada (!) para os outros hosts. Isso permitirá que você faça logon no host A diretamente de B, ou de D para C, etc., pois todos compartilham a mesma chave e todos têm as mesmas authorized_keys.

A ~# scp -p .ssh/id_dsa user@B:~/.ssh/
A ~# scp -p .ssh/id_dsa user@C:~/.ssh/
A ~# scp -p .ssh/id_dsa user@D:~/.ssh/

A tarefa final é renomear a chave pública no host A, para que o host A também tenha um authorized_keys e possa permitir o login dos hosts B, C e D.

A ~# mv .ssh/id_dsa.pub .ssh/authorized_keys

Agora você deve ser capaz de se mover entre ou copiar dados entre todos os 4 hosts, usando a mesma chave, ignorando o desafio Login-user-password. Dependendo do clima, você gerou a chave sem senha, ou seja ...

    
por 19.11.2009 / 10:12