创建密码库/创建用户帐户/更新 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"
相关推荐
Sheffield8 小时前
command和shell模块到底区别在哪?
linux·云计算·ansible
陈桴浮海10 小时前
【Linux&Ansible】学习笔记合集二
linux·学习·ansible
馨谙14 小时前
Ansible模块化Playbook管理:静态导入与动态包含详解
运维·ansible
馨谙2 天前
Ansible 事实(Facts)全面指南:自动化运维中的主机信息管理
运维·ansible
馨谙2 天前
Ansible处理程序完全指南:实现智能的任务触发机制
运维·ansible
馨谙2 天前
Ansible 多 Play 编写与模块使用全解析
运维·ansible
馨谙3 天前
Ansible 清单详解:静态清单的构建与管理
ansible
馨谙3 天前
Ansible 配置文件详解:让自动化管理更轻松
运维·github·ansible
馨谙3 天前
Ansible Playbook 完全指南:从入门到实践
运维·ansible
Warren986 天前
接口测试理论
docker·面试·职场和发展·eureka·ansible