como gerenciar credenciais / acesso a vários servidores ssh

1

Eu gostaria de criar um script que possa manter vários servidores via SSH. Eu quero controlar a autenticação / autorização de tal maneira que a autenticação é feita pelo gateway e qualquer outro acesso é roteado através deste servidor ssh para serviços internos sem quaisquer outros requisitos de autenticação / autorização.

Portanto, se um usuário A puder efetuar login no server_1, por exemplo. Ele pode então ssh para server_2 sem qualquer outra autenticação e fazer o que ele é permitido fazer no server_2 (como desligar o mysql, atualizá-lo e reiniciá-lo. Isto pode ser feito através de algum shell script remoto).

O problema que estou tentando resolver é criar um script de implantação para um sistema JavaEE que envolva bancos de dados e instâncias de tomcat. Eles precisam ser desligados e re-spawned. O requisito é ter um script de implantação que tenha o mínimo de interação humana possível para desenvolvedores e operações.

    
por geoaxis 02.05.2011 / 14:28

2 respostas

4

Você não deve reinventar a roda aqui ou você só fará mais trabalho para si mesmo a longo prazo e introduzirá novos problemas de segurança. As duas opções que vêm à mente são:

  • Escreva um conjunto de APIs que manipulem apenas as ações que precisam ser manipuladas, hospede-as no gateway e adicione autenticação. Ter um sistema de suporte como esse em vez de tentar usar o ssh com seu próprio mecanismo de segurança reduzirá muito o nível de vulnerabilidade e também facilitará a implementação em várias plataformas.
  • Configure uma combinação de autenticação baseada em chave, o uso de ssh-agent no cliente e o Encaminhamento de agentes permitido para os destinos finais, de modo que você possa SSH de um para o próximo com base nas chaves desbloqueadas localmente.
por 02.05.2011 / 14:36
3

Como você está usando o ssh, você deve dar uma olhada na autenticação baseada em ssh key e no uso de ssh-agent . Se você usar algo como PuTTY e pageant , você pode simplesmente carregar a chave privada no concurso e usá-la para autenticar onde quer que a chave pública relevante esteja.

Se você conseguir automatizar tudo, é possível restringir o uso da chave para certos comandos também.

    
por 13.04.2017 / 14:14