Ansible - 关于sudo的一些配置

发布时间 2024-01-11 11:57:23作者: HOUHUILIN

 

sudo

sudo,以超级管理员或其他人的身份执行命令

基本流程

  • 管理员需要先授权(修改/etc/sudoers文件)
  • 普通用户以sudo的形式执行命令
  • 可以通过sudo -l查看授权情况

配置suddoer:vim /etc/sudoers进行如下配置,jerry用户可以无需输入密码即以root身份,执行systemctl命令

可以切换jerry用户后,执行以下命令查看可以执行的sudo命令

 

配置sudo提权

为所有被管理主机创建系统账户

# 创建用户
ansible all -m user -a "name=alice password={{'123456'|password_hash('sha512')}}"
# 在所有被管理主机配置sudo,让alice可以管理系统服务,默认普通用户无权执行systemctl命令
ansible all -m lineinfile -a "path=/etc/sudoers line='alice ALL=(ALL) /usr/bin/systemctl'"
# 验证
ssh alice@node01
sudo -l
sudo systemctl restart httpd
# 配置alice可以以任何人的身份,执行所有命令时不需要输入密码
ansible all -m lineinfile -a "path=/etc/sudoers line='alice ALL=(ALL) NOPASSWD:ALL'"