ssh sem senha em várias máquinas

4

Estou bastante confuso com todas as coisas de segurança do ssh. Eu estou tentando reconfigurar um sistema que está atualmente quebrado por razões desconhecidas. A máquina A é o seu computador pessoal que você usa sempre que estiver em casa. A Máquina B é o nó principal de um cluster HPC e todas as outras máquinas C são todas máquinas configuradas de forma idêntica que compartilham os diretórios iniciais da máquina B. Esse é um cluster HPC, se você não adivinhou. Como eu configuraria ssh sem senha entre quaisquer nós B ou C. A só pode passar para C através de sshing em B

    
por Phil 15.09.2010 / 21:29

2 respostas

3

  1. Configure sem senha de A para B.
  2. Inicie um agente SSH e carregue sua chave privada nele.
    • Se você usa o GNOME, provavelmente já inicia um agente. Teste com ssh-add -l
    • O OpenSSH usa eval ssh-agent para iniciar um agente e ssh-add para carregar uma chave.
    • O PuTTY tem um concurso.
  3. Habilite o encaminhamento de agentes em seu cliente SSH.
    • No OpenSSH, ssh -A ... para uma vez e ForwardAgent in ~/.ssh/config para configuração persistente. Coloque em Host machine_b ou Host *
    • O PuTTY tem em Conexão - > SSH - > Auth
  4. Conecte-se de A a B e verifique se B pode acessar a chave carregada em A.
    • ssh-add -l deve listar a mesma chave.
  5. Configure o C para autenticação sem senha com a mesma chave.
    • # 5 provavelmente não será necessário se B e C compartilharem diretórios pessoais.
  6. Conecte-se de A a B e, por meio dele, a C.
por 15.09.2010 / 23:00
1

Não tem certeza se deseja especificar que só deve funcionar se você vier de A?

A resposta de Grawity provavelmente é melhor para a segurança, mas aqui está uma resposta para velocidade de configuração e / ou trabalho de vários A .

Indo em todo o seu ... "máquinas C são todas máquinas configuradas de forma idêntica que compartilham os diretórios home da máquina B"

ssh-keygen
ssh-copy-id localhost

ou ...

ssh-keygen
cat .ssh/id_rsa.pub >> .ssh/authorized_keys
chmod 600 .ssh/authorized_keys

Isso significará que qualquer um em B ou C ... (ou qualquer máquina com acesso a esse diretório .ssh /) poderá ssh entre eles à vontade, onde eu acho que o grawity requer que você venha de A e configuramos essa máquina apropriadamente.

    
por 08.02.2011 / 00:16

Tags