「Linux用户账号管理」su和sudo命令.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

PAGE232

Linux系统管理

Linux系统管理

PAGE232

知识点详细解析

su命令

核心功能:临时切换用户身份(需目标用户密码),适用于权限提升、环境测试等场景。

语法

su[选项][目标用户名]

#无用户名:默认切换到`root`,需输入`root`密码。

#指定用户名:切换到指定用户,需输入目标用户密码。

常用选项:

选项

作用

-或-l或--login

完全切换用户环境(加载目标用户的profile配置)

-c命令

以目标用户身份执行单条命令后退出(不进入交互式Shell)

-s或--shell

指定Shell类型(如su-s/bin/bashalice)

-m或-p

保留当前环境变量(不加载目标用户配置)

工作流程与权限规则

关键机制:

切换需要目标用户的密码(root切换其他用户除外)

默认仅切换用户身份,不重置环境变量(需-选项完全切换)

切换后进程属主变更为目标用户

操作示例

示例:完全切换为root(推荐方式)

$su-#或su-root

Password:********#输入root密码

whoami#root

exit#返回原用户

示例:切换到普通用户

$su-alice#完全切换至alice

Password:********#输入alice的密码

$env|grepHOME#显示/home/alice(环境已重置)

#HOME=/home/alice

密码暴露风险

#禁止在命令行直接暴露密码!

$su-c命令password?

环境残留污染:用su(不带-)切换时,原用户的PATH等变量可能导致命令执行异常

root切换限制

#默认禁止root通过SSH直接登录

#修改/etc/ssh/sshd_config:

PermitRootLoginno

常见错误处理

错误

原因

解决方案

su:Authenticationfailure

密码错误

①确认目标用户密码

②检查密码键盘布局

su:useralicedoesnotexist

用户不存在

用getentpasswdalice验证用户

su:failedtoexecute/bin/zsh

Shell路径错误

检查目标用户的合法Shell(/etc/shells)

sudo命令

以其他用户身份(默认为root)安全执行特权命令,需通过/etc/sudoers配置文件授权。

基本语法

sudo[选项]命令[参数]

常用选项详解

选项

说明

示例

-u用户

以指定用户身份执行

sudo-ualicewhoami

-g组

以指定组的权限执行

sudo-gadmincat/etc/shadow

-i

模拟登录环境(加载目标用户的配置文件)

sudo-i

-s

启动目标用户的Shell

sudo-s

-v

刷新sudo凭证有效期(默认为5分钟)

sudo-v

-k

强制清除sudo缓存(需重新输入密码)

sudo-k

-l

查看当前用户的sudo权限

sudo-l

-H

设置$HOME为目标用户的家目录

sudo-Hpipinstallpackage

配置文件(/etc/sudoers)通过visudo命令安全编辑配置文件:

sudovisudo

典型配置示例

#允许alice执行所有root命令(需密码)

aliceALL=(ALL:ALL)ALL

#允许dev组无需密码执行/usr/bin/apt

%devALL=(ALL)NOPASSWD:/usr/bin/apt

#允许用户以alice身份执行特定命令

bobALL=(alice)/usr/bin/whoami,/usr/bin/ls

重要安全实践

最小权限原则

避免使用ALL=(ALL)ALL,按需精确授权命令路径

#反例(过度授权)

user1ALL=(ALL)NOPASSWD:ALL

#正例(精确授权)

user1ALL=(root)NOPASSWD:/usr/bin/systemctlrestartnginx

日志审计

所有sudo操作记录在:

/var/log/auth.log#Debian/Ubuntu

/var/log/secure#RHEL/CentOS

防止误操作

危险命令前添加echo

您可能关注的文档

文档评论(0)

夜晚回家 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档