Depois de algum bate-papo no canal #chef do IRC, aqui está o que eu precisava saber. A maior parte é na verdade informação periférica, em vez de openssl passwd
específico, mas de qualquer forma ...
O Chef usa o comando padrão adduser
( link ) para adicionar usuários. Esse comando aceita a senha já criptografada - Por isso, você precisa armazenar uma versão criptografada (gerada por openssl passwd -1 "plaintextpassword"
) no seu data_bags/users/deploy.json
.
Portanto, sua senha em texto simples é a senha 'real'. Mas como o comando adduser
espera que a senha passada esteja criptografada, é a versão criptografada que você precisa armazenar em data_bags/users/deploy.json
Isso funciona bem, porque você definitivamente não gostaria de armazenar uma senha em texto puro em data_bags/users/deploy.json
!
Voltando às minhas perguntas originais:
Qual é a minha senha 'real'? A versão de texto simples ou a versão criptografada?
A versão de texto simples é sua verdadeira.
Eu preciso salvar uma cópia de ambos no meu gerenciador de senhas? Não. Você só armazena sua versão de texto simples. Você usa isso sempre que quiser fazer o login. O sistema criptografa isso e compara-o à versão criptografada que ele armazenou para sua conta.
Qual é o benefício / propósito do openssl passwd?
Não há "benefício" como tal. É simplesmente necessário porque o comando adduser
espera que a senha já esteja criptografada.
data_bags/users/deploy.json
e só permitir o acesso via chaves SSH.
Não é considerado uma boa prática armazenar até mesmo uma versão criptografada de sua senha em data_bags/users/deploy.json
, porque a criptografia de senha do Linux tem um histórico tão ruim. (editar: leia os comentários abaixo para uma melhor explicação)