简介

linux服务器搬迁,由于root用户是随机密码,比较长而且没什么规律。搬迁的时候需要手动换网卡,需要离线操作,所以需要创建一个管理用户,密码有规律一点,方便操作。

创建加密密码

python -c 'import crypt;print(crypt.crypt("opcai@OPS"))'

ansible-playbook

编写ansible-playbook文件add_user.yaml

- name: 创建拥有sudo权限的用户
  hosts: "{{hosts}}"
  vars:
    user: opcai
    # 加密后的密码
    password: "$6$rm5p6TQARhg/8pMa$aKluV18z4KzlgfkJ9R6SF2OsQuO/rYTnQMiRivi.MMZdd/JLdoFNC8hFyNcr.GTegpvb9VJGyYsQDyYhHQDpr0"
  remote_user: root
  gather_facts: False
  tasks:
    - name: 添加用户 {{ user }}
      user: name={{user}} comment="meetyou user 2021" password={{ password }}
    - name: 配置 /etc/sudoers
      lineinfile: dest=/etc/sudoers state=present  line='{{item}}' validate='visudo -cf %s'
      with_items:
            - "{{ user}} ALL=(ALL) NOPASSWD: ALL"

执行

ansible-playbook -e hosts=192.168.1.*  add_user.yaml

总结

为什么不直接修改root密码呢?

因为修改之后还要再修改回来,执行中如果出现错误,有可能修改失败,导致出现更多的问题。

创建一个新的用户,等完成任务后,可以直接删除这个用户。