当前位置: 首页 > news >正文

【Linux】批量处理多个用户的 sudo 权限问题

要批量处理多个用户的 sudo 权限问题,有以下几种高效方法:

方法一:通过用户组批量授权(推荐)

这是最安全便捷的方式,只需将用户加入已有 sudo 权限组(如 wheelsudo):

# 切换到 root
su - root# 批量添加用户到 wheel 组(CentOS/RHEL)
usermod -aG wheel user1 user2 user3 user4# 或添加到 sudo 组(Ubuntu/Debian)
usermod -aG sudo user1 user2 user3 user4

方法二:在 sudoers 中批量添加用户

  1. 使用 root 编辑 sudoers:
visudo
  1. 添加以下内容之一:
# 选项1:单独列出每个用户
user1 ALL=(ALL) ALL
user2 ALL=(ALL) ALL
user3 ALL=(ALL) ALL# 选项2:使用用户别名(支持批量)
User_Alias MULTI_USERS = user1, user2, user3, user4
MULTI_USERS ALL=(ALL) ALL

方法三:通过脚本批量处理

创建用户列表文件 sudo-users.txt(每行一个用户名):

# 生成用户列表(可选)
echo "user1" > sudo-users.txt
echo "user2" >> sudo-users.txt
echo "user3" >> sudo-users.txt# 批量添加脚本
while read user; dousermod -aG wheel "$user"  # 加入组方式# 或使用:echo "$user ALL=(ALL) ALL" >> /etc/sudoers.d/multi-users
done < sudo-users.txt

方法四:创建专用 sudoers 文件

# 创建独立配置文件
echo "user1 ALL=(ALL) ALL" > /etc/sudoers.d/multi-access
echo "user2 ALL=(ALL) ALL" >> /etc/sudoers.d/multi-access
echo "user3 ALL=(ALL) ALL" >> /etc/sudoers.d/multi-access# 设置正确权限
chmod 440 /etc/sudoers.d/multi-access

批量操作后的验证

# 检查用户组
groups user1 user2 user3# 测试 sudo 权限(切换用户后执行)
sudo -l

注意事项:

  1. 安全原则

    • 避免直接给 ALL 权限,建议限制命令范围:
      User_Alias DEPLOY_USERS = user1,user2
      DEPLOY_USERS ALL=(root) /bin/chmod,/bin/chown
      
    • chmod 777 是危险操作,建议用更安全的 755750
  2. 系统差异

    • CentOS/RHEL:默认使用 wheel
    • Ubuntu/Debian:默认使用 sudo
    • 检查组配置:grep -E '%wheel|%sudo' /etc/sudoers
  3. 用户管理技巧

    • 一次性添加多个用户:usermod -aG wheel user{1..5}
    • 从文件批量添加:xargs -a userlist.txt usermod -aG wheel

推荐优先使用方法一(用户组方式),这是最规范且易于维护的方案。生产环境中超过 3 个用户需要权限时,务必通过组进行管理。

http://www.lryc.cn/news/603927.html

相关文章:

  • 01背包问题:Python动态规划深度解析与工程实践
  • napping-1.0.1靶机练习
  • MySQL(配置)——MariaDB使用
  • 2025年Solar应急响应公益月赛-7月笔记ing
  • Java 10 新特性解析
  • 机器学习笔记(四)——聚类算法KNN、Kmeans、Dbscan
  • 域名常见问题集(九)——域名市场介绍
  • 基于JavaWeb的兼职发布平台的设计与实现
  • LangChain和LangGraph 里面的 `create_react_agent`有什么不同
  • 从0到1理解大语言模型:读《大语言模型:从理论到实践(第2版)》笔记
  • Marin说PCB之POC电路layout设计仿真案例---10
  • AI 对话玩具的语音芯片模块方案设计与应用场景​
  • 如何解决人工智能在社会治理中面临的技术和伦理挑战?
  • 【tips】小程序css ➕号样式
  • 项目质量如何把控?核心要点分析
  • 信号上升时间与带宽的关系
  • 技术QA | GNSS模拟器如何赋能自动驾驶?聚焦HIL、多实例与精准轨迹仿真的技术优势
  • leetcode 74. 搜索二维矩阵
  • 从传统到智能:Midscene.js 如何用 AI 颠覆自动化测试!
  • Baumer工业相机堡盟工业相机如何通过YoloV8深度学习模型实现各种食物的类型检测识别(C#代码UI界面版)
  • 【三桥君】企业级AI应用需要系统工程支撑,如何通过MCP大模型架构实现全链路实战解构?
  • 2.4G和5G分别指什么,什么是带宽(频谱带宽和网络带宽)
  • Solar月赛(应急响应)——攻击者使用什么漏洞获取了服务器的配置文件?
  • 数据结构 排序(1)---插入排序
  • 广泛分布于内侧内嗅皮层全层的速度细胞(speed cells)对NLP中的深层语义分析的积极影响和启示
  • 自动化测试实战篇
  • win10更新异常,导致Microsoft Store 无法正常启用,无法正常安装exe应用程序。
  • 银行交易欺诈检测模型分析
  • 微服务 01
  • 【C++算法】76.优先级队列_前 K 个高频单词