快速业务通道

Ubuntu中Sudo和Root 帐号相关

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-05-12

在 Ubuntu, 传统 UNIX ’root’ 被屏蔽了 (也就是 你不能使用 root 来登录). 这样选择的原因在本文的后面做出描述.

快速回答

使用 root 权限执行命令, 在每个命令前面加上 ’sudo’ 命令, 例如 sudo chown bob *

你将会提示输入你的口令, 口令将保存 15 分钟. 过了这个时间, 你将需要重新输入你的口令

在使用 Ubuntu 时,推荐使用 sudo.

启动一个 root shell (例如 一个你能运行 root 命令的窗口) 使用: sudo -s

警告: sudo -s 不会改动环境变量 ($HOME, $PATH 等). 他有一些不好的副作用. 你能用 sudo -i 初始化整个 root 环境.

为了启用 root 帐号 (也就是 设置一个口令) 使用: sudo passwd root

当你使用完毕后屏蔽 root 帐号 使用: sudo passwd -l root

这个将锁住 root 帐号.

给 图像界面的应用程式 root 权限,使用以下两者中的所有一个: gksudo [application] 或: kdesu [application]

Ubuntu 中的 kdesu 已修改成使用 sudo.

使用 sudo 和 gksudo/kdesu 相反, 有可能产生文件的所有权问题 .

这种模式的好处

缺省禁止 root 的好处包括了以下内容.

起初 Ubuntu 团队希望安装尽可能的简单. 不使用 root , 在安装期间的两个用户交互步骤能省略. (科林?沃森)

更进一步, 如果在安装中使用 root, 用户将被需求永远记住他们选择的密码--即使他们非常少使用到他. Root 密码经常被对 Unix 安全模型不熟悉的用户忘记. (马特?齐默曼)

他防止了缺省登录时 "我能做所有事情" --在较大的变化发生之前,你将被提示输入口令,这能使你考虑你这样做的结果. 如果你作为 root 登录, 你能删除一些 "没用的目录" 并且不会意识到你正处于错误的目录,那时已太晚了. 他是在 Unix 下长时间使用 "su-command-^D" 练习的情况下,代替一直呆在 root shell--除非你做严重的系统维护 (那时你仍然能使用 "sudo su"). (吉姆?奇塔姆 和 安德鲁?索巴拉)

Sudo 增加了运行命令的日志记录 (在 /var/log/auth.log). 如果你陷入困境, 你总是能返回并看见那些运行的命令. (安德鲁?Zbikowski)

安全

和传统的 superuser 模型相比,这种方法有不同的利弊,两者都不总是显示优良的.

在鼓励使用 root 权限执行一个独立的命令, sudo 好过打开一个 shell:

减少使用 root 权限的时间总耗用, 降低了不注意使用 root 执行命令的风险

提供了有用的审核痕迹

有一个独立的 root 密码 (传统模型) 提供了一层额外的保护,当如果一个管理员的密码被侵害时.

无论怎样, 如果管理员 (使用 sudo 或 su 变成 root) 被侵害, 攻击者一般能通过一次间接的攻击来获得 root

使用 "sudo" 模式可能的问题

尽管桌面使用 sudo 的是有利的,不过还是有些可能的问题需要注意.

一些来自 universe 的包将有力的破除 (例如 webmin) 或让使用变得危险. 一个好的变通方法是在处理受影响的包之前激活 root 帐号 (sudo su-; passwd ) 并在后面锁住 (su -; passwd -l).

运行使用 sudo 的命令重定向输出可能引发新用户问题 (考虑 "sudo ls > /root/somefile"). 变通方法是使用 "sudo sh -c ’ls > /root/somefile’" (但这种替换变得非常丑陋), 使用 Adverbio, 或简单的使用 sudo -s 获得 root shell ,在那里执行.

MattZimmerman: 对于大多数的简单解决方法是使用 dd(1): ls | sudo dd of=/root/somefile

在许多办公室环境系统上唯一的用户就是 root. 全部其他用户使用 NSS 技巧例如 nss-ldap 导入. 安装一个工作站www.britepic.org, 或修复他, 在这个案例网络失败,导致 nss-ldap 被断开, root 被需求使用. 这中倾向于留下系统无法使用,除非被破解.

JerryHaltom: 也许在那些案例必需建立一个本地帐号: "admin" 拥有 sudo 到 root 权限.

LucasVignoliReis: 我认为这是个好的主意, 一个 sudoer 系统管理员帐号, 和一个普通帐号给其他的用户.

误解

sudo 没有 su 安全?

基本的安全模型都是相同的, 因此这两个系统有着一致的主要弱点. 所有使用 su 或 sudo 必需是个特权用户.如果攻击者损害了那个用户的帐号, 下次用户这样做时,攻击者同样能获得 root 特权. 用户在这条链上是个弱的连接, 因此作为 root 用户小心保护. 在更深的层次, sudo 提供不同的工作技巧, 这些肯定能影响到系统的安全. sudo 通常被用来只执行单一的命令, 当 su 被通常使用打开一个 shell 并执行多条命令. sudo 尽量减少一个离开时被打开 root shell 的可能性, 并鼓励减少用户的 root 特权.

我不能进入单用户模式!

在 Ubuntu 的 sulogin 程式被计划修改来处理被锁住的 root 口令.

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号