创建密码库/创建用户帐户/更新 Ansible 库的密钥/ 配置cron作业

目录

创建密码库

创建用户帐户

[更新 Ansible 库的密钥](#更新 Ansible 库的密钥)

配置cron作业


创建密码库

按照下方所述,创建一个 Ansible 库来存储用户密码:

库名称为 /home/curtis/ansible/locker.yml

库中含有两个变量,名称如下:

pw_developer,值为 Imadev

pw_manager,值为 Imamgr

用于加密和解密该库的密码为 whenyouwishuponastar

密码存储在文件 /home/curtis/ansible/secret.txt 中

复制代码
vim locker.yml

pw_developer: Imadev
pw_manager: Imamgr

vim secret.txt

whenyouwishuponastar

ansible-vault encrypt --vault-password-file=secret.txt locker.yml

ansible-vault view --vault-password-file=secret.txt locker.yml

创建用户帐户

http://rhgls.area12.example.com/materials/user_list.yml 下载要创建的用户的列表,并将它保存到 /home/curtis/ansible

在本次考试中使用在其他位置创建的密码库 /home/curtis/ansible/locker.yml 。创建名为 /home/curtis/ansible/users.yml 的 playbook ,从而按以下所述创建用户帐户:

职位描述为 developer 的用户应当:

在 dev 和 test 主机组中的受管节点上创建

从 pw_developer 变量分配密码

分配对应的用户ID

是补充组 devops 的成员

职位描述为 manager 的用户应当:

在 prod 主机组中的受管节点上创建

从 pw_manager 变量分配密码

分配对应的用户ID

是补充组 opsmgr 的成员

密码采用 SHA512 哈希格式。

您的 playbook 应能够在本次考试中使用在其他位置创建的库密码文件 /home/curtis/ansible/secret.txt 正常运行。

复制代码
wget  http://rhgls.area12.example.com/materials/user_list.yml

vim users.yml

- hosts: all
  vars_files:
          - user_list.yml
          - locker.yml
  tasks:
          - group:
                  name: devops
                  state: present
          - group:
                  name: opsmgr
                  state: present
          - user:
                  name: "{{ item.name }}"
                  uid: "{{ item.uid }}"
                  groups: devops
                  password: "{{ pw_developer | password_hash ('sha512')}}"
                  state: present
            when: ( 'dev' in group_names or 'test' in group_names) and ( item.job== "developer")
            loop: "{{ users }}"
          - user:
                  name: "{{ item.name }}"
                  uid: "{{ item.uid }}"
                  groups: opsmgr
                  state: present
                  password: "{{ pw_manager | password_hash ('sha512')}}"
            when: ( 'prod' in group_names ) and ( item.job== "manager")
            loop: "{{ users}}"
复制代码
ansible-playbook users.yml --vault-password-file=secret.txt

更新 Ansible 库的密钥

按照下方所述,更新现有 Ansible 库的密钥:

http://rhgls.area12.example.com/materials/salaries.yml 下载 Ansible 库到 /home/curtis/ansible

当前的库密码为 insecure8sure

新的库密码为 bbs2you9527

库使用新密码保持加密状态

复制代码
wget http://rhgls.area12.example.com/materials/salaries.yml
复制代码
ansible-vault rekey salaries.yml

配置cron作业

创建名为/home/curtis/ansible/cron.yml的playbook,在所有托管主机上运行为用户curtis创建如下cron作业:

/home/curtis/ansible/cron.yml 用户curtis必须配置运行每个2分钟并执行logger "EX294 in progress"的cron作业

复制代码
vim cron.yml 
- hosts: all
  tasks:
          - cron:
                  name: cron
                  user: curtis
                  minute: "*/2"
                  job: logger "EX294 in progress"
复制代码
ansible-playbook cron.yml
复制代码
ansible all -a "crontab -lu curtis"
相关推荐
꧁༺朝花夕逝༻꧂1 天前
Ansible小试牛刀
ansible
꧁༺朝花夕逝༻꧂1 天前
Ansible+Zabbix-agent2快速实现对多主机监控
运维·ansible
m0_628017592 天前
项目四.高可用集群_ansible
ansible
云攀登者-望正茂2 天前
通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器
ansible
云攀登者-望正茂5 天前
使用 Ansible 在 Windows 服务器上安装 SSL 证书
ansible
tianyuanwo6 天前
Ansible自动化运维全解析:从设计哲学到实战演进
运维·自动化·ansible
哆啦A梦15886 天前
在golang中如何将已安装的依赖降级处理,比如:将 go-ansible/[email protected] 更换为 go-ansible/@v1.1.7
开发语言·golang·ansible
lifeng43217 天前
在 CentOS 上将 Ansible 项目推送到 GitHub 的完整指南
centos·github·ansible
运维成长记12 天前
ansible-playbook 进阶 接上一章内容
linux·服务器·ansible
半桶水专家12 天前
Ansible 配置Playbook文件格式、关键字和语法详解
ansible