Saltstack创建用户:未设置密码

Ale*_*Grs 4 salt-stack

我正在尝试使用Saltstack自动创建用户.

我创建了一个支柱conf:

users:
  homer:
    fullname: Homer Simpson
    uid: 1007
    gid: 1007
    groups:
      - sudo
      - adm
    crypt: $6H7kNJefhBeY
    pub_ssh_keys:
  - ssh-rsa ...
Run Code Online (Sandbox Code Playgroud)

在我的州,我使用以下内容:

{% for username, details in pillar.get('users', {}).items() %}
{{ username }}:

  group:
    - present
    - name: {{ username }}
    - gid: {{ details.get('gid', '') }}

  user:
    - present
    - fullname: {{ details.get('fullname','') }}
    - name: {{ username }}
    - shell: /bin/bash
    - home: /home/{{ username }}
    - uid: {{ details.get('uid', '') }}
    - gid: {{ details.get('gid', '') }}
    - password: {{ details.get('crypt','') }}
    {% if 'groups' in details %}
    - groups:
      {% for group in details.get('groups', []) %}
      - {{ group }}
      {% endfor %}
    {% endif %}

  {% if 'pub_ssh_keys' in details %}
   ssh_auth:
    - present
    - user: {{ username }}
    - names:
    {% for pub_ssh_key in details.get('pub_ssh_keys', []) %}
      - {{ pub_ssh_key }}
    {% endfor %}
    - require:
     - user: {{ username }}
  {% endif %}

 {% endfor %}
Run Code Online (Sandbox Code Playgroud)

用户创建没问题,ssh-rsa密钥添加正确,但我的主要问题是密码:我尝试了以下内容:

crypt: password
crypt: some-hash
Run Code Online (Sandbox Code Playgroud)

但是当我连接到我的服务器时,我的密码问题就是这个用户.

你能告诉我如何生成一个符合盐所期望的格式的良好密码?是否有用于生成它的特殊命令?

谢谢.

twa*_*163 6

要在Debian/Ubuntu中创建散列用户密码,可以在salt中使用,我执行以下操作:

apt-get install makepasswd
echo '<password>' | makepasswd --clearfrom=- --crypt-md5 | awk '{ print $2 }'
Run Code Online (Sandbox Code Playgroud)

这给出了例如:$ id $ salt $ encrypted

"$ id $ salt $ encrypted"中的id应为1,表示它是md5哈希.

将此哈希复制/粘贴到您的支柱中.

希望这也适合你.