news 2026/7/11 7:53:04

【获取root用户访问权限】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【获取root用户访问权限】

一、su 命令(完整切换 vs 非完整切换)

1. 核心参数与执行差异
命令格式切换类型环境变量/工作目录适用场景
su test非登录 shell① 保留原用户(如 root)的环境变量($PATH/$HOME等);
② 工作目录不变(仍在原用户目录);
③ 仅切换 UID/GID,不加载目标用户的配置
临时执行单个命令(如su test -c "ls /home/test"),无需加载目标用户环境
su - test登录 shell① 完全加载目标用户的环境变量(~/.bash_profile/~/.bashrc);
② 工作目录切换到目标用户家目录(/home/test);
③ 等同于“重新登录目标用户”
需要完整使用目标用户的环境/权限(如执行目标用户的脚本)
su -/su - root登录 shell 切换 root加载 root 的完整环境(/root/.bashrc),工作目录到/root推荐的 root 切换方式(完整环境,避免命令找不到)
2. 补充:su 命令的隐藏风险
  • su test非完整切换时,若原用户是 root,目标用户test仍可能继承 root 的高权限环境变量(如$PATH包含/sbin),存在权限泄露风险;
  • 切换后退出:用exitCtrl+D回到原用户,避免多层切换导致权限混乱。

二、sudo 配置进阶

1.sudoers配置的正确方式(禁止直接 chmod 修改!)

chmod u+w /etc/sudoers存在安全风险:若编辑时语法错误,会导致所有 sudo 命令失效,无法恢复。
✅ 正确做法:使用visudo命令编辑(自动语法检查):

# 1. 直接编辑 sudoers 文件(推荐)visudo# 2. 编辑自定义规则文件(更安全,避免污染主文件)visudo -f /etc/sudoers.d/test# 新增 test 用户的规则文件
2.sudoers规则语法
# 格式:用户名 主机=(可切换的用户) 免密标识:可执行的命令 # 示例1:仅允许 test 免密执行重启 httpd 命令 test ALL=(root) NOPASSWD:/usr/bin/systemctl restart httpd # 示例2:允许 test 切换 root 执行任意命令(需输密码) test ALL=(ALL) ALL # 示例3:允许 test 以 apache 用户执行脚本(限定用户+命令) test ALL=(apache) /home/test/run_script.sh
3.wheel组补充(不同系统差异)
  • RHEL/CentOS:wheel组默认配置了 sudo 全权限(visudo%wheel ALL=(ALL) ALL),加入该组即可获得 sudo 权限;
  • Ubuntu/Debian:无wheel组,默认sudo权限在sudo组(usermod -aG sudo test);
  • 验证组权限:groups test查看是否加入目标组,sudo -l查看当前用户的 sudo 权限列表。
4.NOPASSWD的使用场景与风险
  • 适用场景:自动化脚本(如 Ansible 执行时无需手动输密码);
  • 风险:若用户账号泄露,攻击者可直接免密执行高权限命令;
  • 替代方案:配置timestamp_timeout(sudo 密码缓存时间),默认 15 分钟,避免频繁输密码:
    # visudo 中添加(全局生效) Defaults timestamp_timeout=5 # 密码缓存5分钟

三、su - 与 sudo -i 的核心差异

维度su - rootsudo -i
权限验证需输入root 密码(风险高:root 密码泄露则全盘失控)需输入当前用户密码(仅验证自身身份,root 密码无需扩散)
环境加载完全加载 root 的环境(/root/.bashrc模拟 root 登录 shell,加载 root 环境,但保留SUDO_USER等标识(可追溯操作)
审计日志无日志(无法追踪谁切换了 root)所有操作记录到/var/log/secure(如sudo -i会记录test用户执行的命令)
权限管控一旦切换 root,拥有全部权限可通过sudoers限定仅能执行部分命令(即使sudo -i,也可限制)
推荐场景应急操作(临时需要完整 root 环境)日常运维(审计+权限管控,符合安全规范)

四、实操避坑点

  1. sudo 命令执行后权限回退
    示例:sudo echo "test" > /root/test.txt会报错(重定向由原用户执行,无 root 权限),正确写法:
    echo"test"|sudotee/root/test.txt# tee 命令由 sudo 执行,支持重定向
  2. 普通用户 sudo 执行命令的路径问题
    非登录 shell 下,普通用户的$PATH可能不包含/sbin//usr/sbin,需写命令绝对路径(如sudo /usr/sbin/useradd,而非sudo useradd);
  3. sudoers 语法错误恢复
    若误改sudoers导致 sudo 失效,可通过su - root切换后,用visudo -c检查语法:
    visudo -c# 检查 sudoers 文件语法,输出 "parsed OK" 则正常

总结(核心补充要点)

  1. su侧重“用户切换”,sudo侧重“权限管控”,生产环境优先用sudo
  2. 编辑sudoers必须用visudo,禁止直接改权限,避免语法错误锁死 sudo;
  3. su - root需 root 密码(风险高),sudo -i需当前用户密码(更安全);
  4. 精细化配置sudoers,避免给普通用户ALL=(ALL) NOPASSWD:ALL全权限。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/1 16:42:07

探索式学习:通过技术实践掌握系统构建的底层原理实践

探索式学习:通过技术实践掌握系统构建的底层原理实践 【免费下载链接】build-your-own-x 这个项目是一个资源集合,旨在提供指导和灵感,帮助用户构建和实现各种自定义的技术和项目。 项目地址: https://gitcode.com/GitHub_Trending/bu/buil…

作者头像 李华
网站建设 2026/7/11 2:36:28

如何突破限制:Cursor Pro编程自由的账号重置工具解决方案

如何突破限制:Cursor Pro编程自由的账号重置工具解决方案 【免费下载链接】cursor-free-everyday 完全免费, 自动获取新账号,一键重置新额度, 解决机器码问题, 自动满额度 项目地址: https://gitcode.com/gh_mirrors/cu/cursor-free-everyday 问题引入&#…

作者头像 李华
网站建设 2026/7/10 20:08:46

开源大模型商业落地实战指南:从技术选型到ROI提升的全路径策略

开源大模型商业落地实战指南:从技术选型到ROI提升的全路径策略 【免费下载链接】mpt-7b 项目地址: https://ai.gitcode.com/hf_mirrors/mosaicml/mpt-7b 引言:当开源大模型遇上企业真实需求 企业数字化转型正面临前所未有的机遇与挑战。据Gartn…

作者头像 李华
网站建设 2026/7/2 15:20:20

AI图表生成工具革新:零代码可视化效率提升指南

AI图表生成工具革新:零代码可视化效率提升指南 【免费下载链接】next-ai-draw-io 项目地址: https://gitcode.com/GitHub_Trending/ne/next-ai-draw-io AI驱动的智能图表工具正彻底改变传统绘图流程,让零代码可视化成为现实。本文将深入探讨如何…

作者头像 李华
网站建设 2026/7/1 14:49:09

探索HoloISO实战:当AMD显卡遇见SteamOS

探索HoloISO实战:当AMD显卡遇见SteamOS 【免费下载链接】holoiso SteamOS 3 (Holo) archiso configuration 项目地址: https://gitcode.com/gh_mirrors/ho/holoiso 引言:PC变身Steam Deck的可能性 你是否曾经想过,将自己的普通PC转变…

作者头像 李华
网站建设 2026/7/1 7:52:10

AI语音转换神器:ebook2audiobook有声书制作全攻略

AI语音转换神器:ebook2audiobook有声书制作全攻略 【免费下载链接】ebook2audiobook Convert ebooks to audiobooks with chapters and metadata using dynamic AI models and voice cloning. Supports 1,107 languages! 项目地址: https://gitcode.com/GitHub_Tr…

作者头像 李华