![Ansible을 사용하여 사용자 추가 및 비밀번호 설정](https://linux55.com/image/86672/Ansible%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%EC%82%AC%EC%9A%A9%EC%9E%90%20%EC%B6%94%EA%B0%80%20%EB%B0%8F%20%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8%20%EC%84%A4%EC%A0%95.png)
사용자를 생성하고 비밀번호를 설정하기 위해 Ansible 플레이북을 만들었습니다. 하지만 이로 인해 오류가 발생합니다.
오류: 비밀번호는 Ansible Play에 유효한 매개변수가 아닙니다.
---
- hosts: all
user: root
vars:
password: jbJe1oRlSZKQ6
tasks:
- user: name=testuser password={{password}}
답변1
password:
첫째: 변수가 되기를 원하므로 스크립트에서 들여쓰기 해야 합니다 .
vars:
password: hashed_password
들여쓰기되지 않은 경우 Ansible은 이를 재생 매개변수로 처리하고 password
그렇지 않기 때문에 오류를 발생시킵니다.
둘째: OSX에서 사용자의 비밀번호를 설정하지 않는 한 비밀번호의 해시를 제공해야 합니다. 자세한 내용을 따르십시오.지시하다하지만 기본적으로 다음 출력을 제공해야 합니다.
mkpasswd --method=SHA-512
또는 다음을 설치하십시오 passlib
.
pip install passlib
그리고 다음을 실행하세요:
python -c "from passlib.hash import sha512_crypt; import getpass; print sha512_crypt.encrypt(getpass.getpass())"
답변2
- 호스트: 호스트 이름 되기: 사실 변하기 쉬운: # 내장: # python -c '암호로 가져오기; print crypt.crypt("이것은 내 비밀번호입니다", "$1$SomeSalt$")' 비밀번호: $1$SomeSalt$aIJ0bvHJBSYd307VQuuD90 일: - 사용자: 이름=tset 비밀번호={{password}} 상태=존재