Root用户渗透
Root用户是UNIX系统中唯一的超级管理员
账户的种类
- 超级管理员(Root)
- 管理员(Administrator)
- 普通用户(Standard)
- 共享(Sharing Only)
- 客人(Guest)
开启root用户
- MAC图形工具
directory Utility app
- 命令行
dsenableroot #开启root
dsenableroot -d #关闭root
- 使用passwd
sudo passwd root #设置并开启root
- linux删除root
su - root
exit #注销root用户
sudo userdel -rf root #userdel删除
切换root用户
su
切换到另一个用户,没有指定用户名,则默认情况下将以root用户登录。
须要添加“-”参数
若不加- 只会切换目录及用户身份,不会切换执行环境
su - root
sudo
提升非root用户运行通常需要超级用户Linux命令的权限
sudo -s #使用当前用户的环境变量,不跳转目录, 拥有超级管理员权限
sudo -i #使用root用户的环境变量,跳转到/root,拥有超级管理员权限
sudo su #提升su命令权限,运行su命令。要求执行该命令的用户必须在sudoers中才可以
sudoers
sudoers 文件指示系统如何处理 sudo 命令
sudo visudo #设置/etc/sudoers权限行
sudo -l #列出当前用户的sudo权限
sudo visudo -c #检查配置是否正确
sudo -k #sudo 密码过期,终止当前用户的特权
sudo -H #设置家目录
sudoers
/etc/sudoers
USER_SPACE HOST=RunAs(User:Group) COMMANDS #语法大小写严谨
# User alias specification
User_Alias USR=nagisb
# Cmnd alias specification
Cmnd_Alias CMD=/usr/bin/apt,/bin/apt,/usr/bin/docker,/bin/docker
# User privilege specification
root ALL=(ALL:ALL) ALL
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL #设置下面防止group的设置覆盖
USR ALL=(ALL:ALL) NOPASSWD:CMD #USR用户免密CMD命令
USR Host=(root) /usr/sbin/,!/usr/sbin/userdel #执行/usr/sbin/下的所有命令,除了/usr/sbin/userdel
理解优化
sudo用于临时提升命令的权限
按照官方指导文档的说法,需要切换到root用户的情况是极少的
su用于开启一个新的高权限shell
在ssh链接中使用root用户登陆管理
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义