`

sudo echo 引起的权限问题

阅读更多
$ sudo echo 1 > /sys/devices/platform/xxconfig
$ bash: /sys/devices/platform/xxconfig: Permission denied


今天被这个问题困扰着。

然后su切换到root就没有问题
$ su
Password: (你的用户密码)
$ sudo echo 1 > /sys/devices/platform/xxconfig

或者使用sudo -sH

$ sudo -sH echo 1 > /sys/devices/platform/xxconfig

这是因为转向对file进行操作时,sudo还没运行。先运行转向redirect到文件,然后再运行echo。




如何设定/改变/启用 root 使用者的密码?
sudo passwd root为了启用 root 帐号 (也就是设置一个口令) 使用:
sudo passwd root
当你使用完毕后屏蔽 root 帐号 使用:
sudo passwd -l root
这个将锁住 root 帐号.
如何在终端机模式下切换到 root 身份?
sudo -s -H
Password: <在这注明您的密码>



缺省禁止root 的好处包括了以下内容:
1、起初 Ubuntu 团队希望安装尽可能的简单. 不使用 root , 在安装期间的两个用户交互步骤可以省略. (科林·沃森)

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

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

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




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

1、在鼓励使用 root 权限执行一个单独的命令, sudo 好过打开一个shell
2、减少使用 root 权限的时间总耗用, 降低了不注意使用 root 执行命令的风险
3、提供了有用的审核痕迹
4、有一个单独的 root 密码 (传统模型) 提供了一层额外的保护,当如果一个管理员的密码被侵害时
5、无论怎样, 如果管理员 (使用 sudo 或 su 变成 root) 被侵害, 攻击者一般可以通过一次间接的攻击来获得 root



以下是网友回复

sudo 等同于su,ubuntu拒绝root操作。它不同于传统意义上的Linux操作方式了,不过我感觉这是一大进步,不谨方便,而且更加安全。在一些商业的unix系统中,使用的就是sudo而不是su,虽然su是sudo的简写方式,在ubuntu中的su使用方法就是借鉴了Unix中的sudo概念,没有人知道root密码,root密码将被随机生成。
对于ubuntu来说,感觉上更加安全。但从另一个角度来说,如果从某种途径得到某个用户的ID,并破解了其密码,且此用户拥有一个admin组成员关系,是否可以说。使用sudo这一命令即可得到root所有限权,按照逻辑推理来看待这一问题假设性是成立的,但我没有试过.....

1,sudo 和 su在效果上并不完全相同。我不是指的sudo是一次,而su是切换。是指它们本质上就有不同。
2,ubuntu的root密码似乎是为空,但不允许空密码。所以root才无法登陆。个人理解,不知对否。


还是编辑一下举个例子吧。不过都是我自己的看法,未必准确。
1、sudo是以普通用户的身份、superuser的权限去做事。而不是和su一样。譬如,假如你以user1的身份,执行sudo anyapp。如果这个anyapp在root和/home/user1下均有.anyapprc这个设置文件。那么sudo将会读取/home/user1下的文件,而su以后再执行,则会读取/root下的设置文件。这个原因我觉得是很显然的。sudo如果和su的本质是一样的,它就没有必要存在。

2、这个是偶的猜测了……因为我觉得一个系统把最高权限的密码设为随机得到的一个字符串,而该系统的使用者却不知道,这是一个很愚蠢的行为,还不如开着root。所以我觉得ubuntu应该是把root的密码设为了空,而又通过某种方式(sorry,im a newbie,i dont know...)禁止无密码登陆。无论从实际意义还是安全性上来说,都要比你说的随机密码更好。当然,只是猜测。如果要证实,就要靠用ubuntu的朋友把password和shadow贴出来了。也可能我是错的。



分享到:
评论

相关推荐

    权限管理-sudo权限

    介绍了权限管理中的 sudo权限,并附有截图演示。

    sudo命令及权限管理命令

    sudo是linux下常用的允许普通用户使用超级用户权限的工具,允许系统管理员让普通用户执行一些或者全部的root命令,如halt,reboot,su等。这样不仅减少了root用户的登录和管理时间,同样也提高了安全性。sudo不是对...

    Debian如何限制sudo权限

    能学到什么:设置普通用户执行sudo的权限,使其只能执行指定的命令。 用户使用su命令切换root。但是权限太大,而且root密码有泄露风险。那么能否在不泄露root密码的前提下对权限进行限制呢?答案就是用sudo。 sudo...

    mac用户及赋予sudo权限.docx

    mac用户及赋予sudo权限.docx

    CentOS 7中sudo权限配置

    CentOS7下,普通用户添加sudo权限,但是锁定部分功能的配置。

    支持system权限,NSudo 6.2 windows下任意权限提权工具

    适用于windowsNT内核的权限提取工具,支持System级,administrator,TrustedInstaller等特殊权限提权,提供GUI界面+命令行调用方式。支持32位64位,win7/8/8.1/10/2008r2/server2012/server2012r2/server2016/server...

    操作系统安全:su及sudo权限配置及控制.pptx

    权限配置;su命令介绍;su命令参数;su命令优缺点;su命令优缺点;sudo命令参数;sudo授权之主机别名设定;sudo授权之用户身份别名;远程sudo

    su和sudo的区别

    1 就是说从sudo切入进去的root并不是真正的root,而是具有root的某方面权限而已.. 也就是说 从sudo切入进去的,跟输入root 再输入密码的.两种情况权限可能不相同的...对吗? 作者: operlcq 发布日期: 2007-8-...

    Linux用户配置sudo权限(visudo)的方法

    下面小编就为大家带来一篇Linux用户配置sudo权限(visudo)的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    su的sudo以及isudo的权限

    详细的讲述了Linux下关于账户权限的设置,特别是sudo和visudo的使用!

    使用su、sudo控制用户帐号权限

    在RHEL5下对用户进行安全的控制 打开密码 www.clvn.com.cn

    Nsudo,建议有编程基础的人使用,获取管理员和超级管理员权限

    Nsudo,建议有编程基础的人使用,获取管理员和超级管理员权限 Nsudo,建议有编程基础的人使用,获取管理员和超级管理员权限 Nsudo,建议有编程基础的人使用,获取管理员和超级管理员权限 Nsudo,建议有编程基础的人使用...

    sudo应用的详细阐述

    由于su 对切换到超级权限...特别是对于服务器的管理有多人参与管理时,最好是针对每个管理员的技术特长和管理范围,并且有针对性的下放给权限,并且约定其使用哪些工具来完成与其相关的工作,这时我们就有必要用到 sudo

    Linux命令su、sudo、sudo su、sudo -i使用和区别.doc

    sudo 与 su 两个命令的最大区别是:sudo 命令需要输入当前用户的密码...sudo 命令只允许使用提升的权限运行单个命令,而 su 命令会启动一个新的 shell,同时允许使用 root 权限运行尽可能多的命令,直到明确退出登录。

    系统管理软件 NSudo 8.0.1.zip

    使用小型工具 NSudo 可以执行权限更高的程序。众所周知,在 Windows 10 下,受信任的安装程序和系统位于管理员上方,以使操作系统更安全。NSudo 是 Microsoft Windows 设备的开源应用程序,它向 Windows 操作系统...

    如何在Linux环境为用户添加sudo权限

    主要介绍了如何在Linux环境为用户添加sudo权限,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    sudo1.9.5p2升级

    sudo1.9.5p2升级包及升级命令

    linux的sudo详解

    sudo.pdf

    centos6-sudo-1.9.9.rpm包;修复CVE-2021-3156,Sudo堆缓冲区溢出漏洞

    此为centos6版的最新sudo-1.9.9.rpm包,修复修复CVE-2021-3156漏洞。 升级步骤: 1、将RPM包上传到服务器上, 2、执行升级命令: # rpm -Uvh sudo-1.9.9-1.el6.x86_64.rpm 3、执行完毕后,查询sudo版本: # sudo -V

    windows下的 Nsudo提权工具,支持system权限

    类似Linux下的 sudo 命令的一款windows下工具,支持任意权限提权和令牌,包括system账户,附带命令行工具和源代码

Global site tag (gtag.js) - Google Analytics