2016-11-24 122 views
0
創建帳戶後,設置密碼

我有以下劇本這我使用的一個Ubuntu 16.04主機上創建一個新用戶:允許用戶使用Ansible

--- 
- hosts: all 
    become: yes 
    become_method: sudo 
    tasks: 
    - name: Create user guybrush 
    user: name=guybrush comment="Guybrush Threepwood" shell=/bin/bash groups=pirates append=yes 

    - name: Copy SSH key for guybrush 
    authorized_key: user=guybrush key={{ lookup("file", "/home/guybrush/.ssh/id_rsa.pub") }} 

但是當我登錄的新用戶嘗試使用我的密碼passwd我被問到我的(當前)UNIX密碼。鑑於沒有爲用戶設置密碼,我不確定爲什麼會要求我輸入密碼。

如何修復我的操作手冊,以便新創建的用戶在第一次登錄後可以輕鬆設置密碼?

+0

您正在使用基於密鑰的身份驗證創建用戶。你想讓用戶更改密碼? – helloV

+0

我正在創建一個用戶,可以使用他們的公鑰初始登錄;一旦他們登錄了,如果他們可以改變他們的密碼,如果他們使用'sudo',他們就會需要它。 – DanielGibbs

回答

1

你可以設置密碼爲空行,所以passwd不會要求輸入舊密碼。
您也可以將其設置爲過期以強制用戶在首次登錄時更改密碼。

- user: name=jsmith password="" 
- authorized_key: user=jsmith key={{ lookup("file", "/somepath/id_rsa.pub") }} 
- command: chage -d 0 jsmith 

如果有安全問題用空密碼,你可以將其設置爲一些隨機的預定義的一個,並與歡迎SSH消息玩來顯示它在第一次登錄。

+0

這就是訣竅;謝謝。 – DanielGibbs