Shared_ authorized_keys, known_hosts e chave SSH entre um grupo de usuários e servidores

1

Temos cinco servidores de produção, cada um com dois usuários que usamos para alguns aplicativos.

i.e. server01 para server05 e user1 e user2 .

Queremos que seja possível o SSH de qualquer usuário em qualquer servidor para qualquer usuário em qualquer outro servidor.

por exemplo. user1 on server01 to user2 on server05 e assim por diante.

É possível criar uma chave SSH e compartilhá-la entre todos os usuários em todos os servidores?

Existe algum diretório global para armazenar as chaves authorized_keys , known_hosts e SSH em cada servidor, que é compartilhado entre os dois usuários no servidor?

Procurando o método mais simples para conseguir isso.

    
por User 11.12.2013 / 21:24

1 resposta

0

Uma ferramenta de gerenciamento de configuração como o fantoche ajudaria com algo assim. No entanto, se você não quiser aprender novas ferramentas, não levaria muito tempo para fazer isso manualmente se você tiver apenas cinco servidores e dois usuários.

Se você não se preocupa com auditoria ou segurança, é possível compartilhar a mesma chave SSH entre todos os usuários finais e todas as contas de usuário do servidor. Você poderia usar um script de shell simples para automatizar isso.

for server in server1.com server2.com server3.com; do
  ssh $server sh << "END"
  for user in user1 user2; do
    echo 'ssh public key goes here' | tee ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    echo 'ssh private key goes here' >> ~/.ssh/id_rsa
  done
END
done

No entanto, a maneira "correta", segura e mais autônoma de fazer isso seria ter contas de usuário separadas para cada usuário e usar o sudo para conceder acesso a outras contas para comandos específicos com base no que o usuário final precisa fazer.

    
por 14.12.2013 / 06:33

Tags