创建密码库/创建用户帐户/更新 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"
相关推荐
wdxylb8 小时前
云原生俱乐部-RH294知识点归纳(1)
云原生·ansible
拾心211 天前
【运维进阶】Ansible 角色管理
运维·ansible
phoenix09811 天前
ansible部署lnmp-allinone
linux·运维·ansible
Lovyk2 天前
基于 Ansible 与 Jinja2 模板的 LNMP 环境及 WordPress 自动化部署实践
linux·运维·服务器·自动化·ansible
LLLLYYYRRRRRTT2 天前
WordPress (LNMP 架构) 一键部署 Playbook
linux·架构·ansible·mariadb
拾心213 天前
【运维进阶】LNMP + WordPress 自动化部署实验
运维·自动化·ansible·mariadb
G_H_S_3_3 天前
【网络运维】Playbook项目实战:基于 Ansible Playbook 一键部署 LNMP 架构服务器
linux·运维·服务器·网络·ansible
焄塰3 天前
Ansible 管理变量和事实
学习·centos·ansible
IT成长日记3 天前
【自动化运维神器Ansible】Playbook中的when条件判断:精细化控制任务执行
运维·自动化·ansible·playbook·when·条件判断