Eu recebi um pushback neste devops pergunta para adicionar contas a uma máquina com ansible. Agora, essa era a maneira mais conveniente (embora não a mais rápida) de fazer coisas para mim na época. Eu só tinha acesso ssh à máquina que eu estava tocando e a máquina foi projetada para fazer quase nada além de processar ssh.
Mas eu imaginei que poderia perguntar em vez de responder nos comentários. Se eu quisesse criar uma máquina que tivesse um número X de usuários distintos, cada um poderia responder a conexões ssh que solicitam uma porta encaminhada para apenas uma porta (ou seja, posso executar
ssh -i /home/me/.ssh/my-key -R 4000:127.0.0.1:22 [email protected]
mas não com uma porta diferente como:
ssh -i /home/me/.ssh/my-key -R 4001:127.0.0.1:22 [email protected]
note, eu tenho algumas outras coisas de segurança no ssh e iptables impedindo que os usuários atinjam as portas uns dos outros, e eu estou usando o paramiko, mas o ssh funciona tão bem quanto eu não espero um prompt de comando
Atualmente estou (e isso tem funcionado nos últimos dois anos) usando selinux e iptables para proteger as contas. Mas isso leva um tempo incrivelmente longo para configurar todas as políticas que preciso para todos os usuários (1000 deles) nas máquinas. O primeiro leva 30 segundos, mas o último vai ser de cerca de 900 ... E demora o mesmo tempo para corrigir porque vários dos pacotes centos reconstroem a coisa toda.
Qual é a melhor maneira de criar todas essas contas?