使用ansible-play的user模組批量修改使用者密碼
阿新 • • 發佈:2018-12-27
使用ansible批量修改使用者密碼的方法,因為在使用ansible修改使用者密碼的時候不能使用明文的方式,需要先加密,所以就需要使用一個方法對輸入的明文的密碼進行加密,操作方法如下:
方法一:
1.1、該方法適用於更改多個使用者;playbook寫法如下:
vim userpass.yaml
---
- hosts: zksit
gather_facts: false
tasks:
- name: change user passwd
user: name={{ item.name }} password={{ item.chpass | password_hash('sha512') }} update_password=always
with_items:
- { name: 'jacky', chpass: ' [email protected]' }
1.2、執行playbook如下:
# ansible-playbook userpass.yaml
方法二:
2.1 該方法更改單使用者比較方便,從外面使用-e引數傳遞變數到playbook中,playbook寫法如下:
vim userpass2.yaml
--- - hosts: test gather_facts: false tasks: - name: Change password user: name={{ name1 }} password={{ chpass | password_hash('sha512') }} update_password=always
2.2 、執行playbook指令碼,使用-e引數傳遞使用者名稱和密碼給劇本,其中jacky為使用者名稱,[email protected]就是要設定密碼,執行如下:
# ansible-playbook userpass2.yaml -e "name1=jacky [email protected]"