Dentro de um dos meus scripts, criei um usuário com base em um arranjo de diretórios em outra máquina.
O problema é que esse usuário, criado sem senha, se comporta exatamente como ele: ele tem direitos de sudo mas eu simplesmente não consigo sudo porque ele pede uma senha que não exista . Eu sei que poderia simplesmente passá-lo como root, mas o sistema desenvolvido tem que funcionar sem a intervenção de usuários privilegiados de raiz local.
Eu também não posso passar como usuário em questão, pois o passwd me pede a mesma senha inexistente.
Suponho que se trata de comportamento, mas qual é a eventual senha padrão e o que posso fazer para contornar isso?
EDIT: Aqui está o que o script faz:
1: rsyncs os diretórios home dos usuários que devem ser criados ou atualizados em / opt / sshgw / home (sshgw significa gateway ssh) da nossa máquina de gateway ssh
2: remove todas as chaves autorizadas para cada usuário da máquina que está executando o script
3: remove todos os usuários do grupo wheel e executa usermod -L (eu não sou o autor do script e realmente não sei por que ele bloqueia a conta, mas seja o que for). Embora tenha em mente que, neste momento, apenas os usuários existentes serão modificados.
4: Cria usuários se eles foram recuperados do sshgw e eles não estão presentes na máquina local, então, se especificado, eles são adicionados ao grupo wheel. Em seguida, ele adiciona as chaves públicas aos diretórios pessoais apropriados e finalmente executa o usermod -U .
A entrada do usuário em / etc / passwd é normal.
Ao chamar passwd, os usuários são perguntados sobre sua senha atual (que não pode existir para um usuário que acabou de ser criado sem uma senha, lembre-se) desta maneira:
[splatpope@monitor sshgw]$ passwd
Changing password for user splatpope.
Changing password for splatpope.
(current) UNIX password:
Eu acho que o culpado é usermod -U.