Linuxsudo权限怎么细分_精细化授权实践【教程】
发布时间 - 2025-12-19 00:00:00 点击率:次最简方式是将用户加入sudo(Ubuntu/Debian)或wheel(CentOS/RHEL)组;推荐用visudo精确授权具体命令路径;可对特定命令设NOPASSWD,但禁用NOPASSWD: ALL;用Cmnd_Alias和User_Alias提升可维护性,规则建议存于/etc/sudoers.d/下独立文件。
直接加组是最简方式
多数现代 Linux 发行版(如 Ubuntu/Debian)默认将 sudo 组设为特权组,CentOS/RHEL 则用 wheel 组。只要把用户加入对应组,就能获得完整 sudo 权限:
- Ubuntu/Debian:
sudo usermod -aG sudo username - CentOS/RHEL:
sudo usermod -aG whe
el username - 执行后需新开终端或
su - username切换会话才生效
按命令精确授权(推荐)
不希望用户能执行所有命令?用 visudo 编辑规则,限制到具体二进制路径和参数:
- 只允许重启 nginx:
username ALL=(root) /usr/bin/systemctl restart nginx - 允许多个命令,用逗号分隔:
username ALL=(root) /bin/journalctl -u nginx, /usr/bin/systemctl status nginx - 路径必须写全(不能用
systemctl,得写/usr/bin/systemctl),否则 sudo 拒绝执行
免密执行与安全平衡
开发或自动化场景常需跳过密码提示,但要明确限定范围:
- 仅对特定命令免密:
username ALL=(root) NOPASSWD: /usr/bin/apt update, /usr/bin/dpkg -i - 禁止对危险命令免密(如
/sbin/reboot、/bin/rm) - 避免写成
NOPASSWD: ALL—— 这等于开放 root shell,违背最小权限原则
用别名提升可维护性
多人多命令时,靠别名管理更清晰、不易出错:
- 定义命令别名:
Cmnd_Alias WEB_CMD = /usr/bin/systemctl restart nginx, /usr/bin/nginx -t - 定义用户别名:
User_Alias DEV_TEAM = alice, bob, %webadmins - 组合授权:
DEV_TEAM ALL=(root) NOPASSWD: WEB_CMD - 所有规则建议放在
/etc/sudoers.d/下独立文件中(如/etc/sudoers.d/web-team),避免污染主配置
# linux
# centos
# nginx
# ubuntu
# debian
# 自动化
# 多人多
# 放在
# 就能
# 多个
# 设为
# 要把
# 新开
# 不能用
# 重启
# 但要
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】
html5audio标签播放结束怎么触发事件_onended回调方法【教程】
如何用美橙互联一键搭建多站合一网站?
Laravel如何处理文件下载请求?(Response示例)
千库网官网入口推荐 千库网设计创意平台入口
Laravel安装步骤详细教程_Laravel环境搭建指南
Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册
jQuery 常见小例汇总
如何在IIS管理器中快速创建并配置网站?
如何用已有域名快速搭建网站?
如何在万网开始建站?分步指南解析
如何为不同团队 ID 动态生成多个“认领值班”按钮
Laravel如何处理和验证JSON类型的数据库字段
Android自定义listview布局实现上拉加载下拉刷新功能
如何在服务器上三步完成建站并提升流量?
INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】
今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】
高防服务器如何保障网站安全无虞?
HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】
JavaScript如何实现路由_前端路由原理是什么
Laravel怎么做数据加密_Laravel内置Crypt门面的加密与解密功能
如何在VPS电脑上快速搭建网站?
齐河建站公司:营销型网站建设与SEO优化双核驱动策略
千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】
iOS验证手机号的正则表达式
桂林网站制作公司有哪些,桂林马拉松怎么报名?
jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】
Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道
Laravel Session怎么存储_Laravel Session驱动配置详解
如何挑选高效建站主机与优质域名?
详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点
百度浏览器如何管理插件 百度浏览器插件管理方法
Laravel怎么使用Session存储数据_Laravel会话管理与自定义驱动配置【详解】
为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】
EditPlus中的正则表达式实战(6)
宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法
php结合redis实现高并发下的抢购、秒杀功能的实例
Laravel如何为API编写文档_Laravel API文档生成与维护方法
创业网站制作流程,创业网站可靠吗?
JavaScript模板引擎Template.js使用详解
打造顶配客厅影院,这份100寸电视推荐名单请查收
Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中
Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程
北京网页设计制作网站有哪些,继续教育自动播放怎么设置?
Angular 表单中正确绑定输入值以确保提交与验证正常工作
Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能
Swift中循环语句中的转移语句 break 和 continue
青岛网站建设如何选择本地服务器?
如何在腾讯云服务器快速搭建个人网站?
Laravel如何创建自定义Artisan命令?(代码示例)


el username