`

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权限详解 在现代操作系统中,特别是Linux系统中,权限管理是一项至关重要的功能。它确保了系统的安全性和稳定性,同时也为不同用户提供了一种灵活的方式来执行特定的任务。本文将详细介绍权限...

    Debian如何限制sudo权限

    这种实践不仅可以加深对`sudo`命令及其配置的理解,还能提高解决实际问题的能力。 最后,值得注意的是,虽然本文档中提到的“媒体爆料”与主题无关,但它提醒我们在学习和实践中保持专业精神和道德操守的重要性。在...

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

    5. **故障恢复**:在系统出现问题时,Nsudo可以协助修复系统设置,尤其是当常规管理员权限不足以解决问题时。 【使用方法】 使用Nsudo时,用户需要指定要运行的命令和权限级别。例如,要以System权限运行命令,...

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

    在Linux系统中,`sudo`是一个强大的命令,它允许非特权用户以root权限执行特定的命令。配置`sudo`权限是系统管理员的重要任务,以确保系统的安全性和可控性。本文将详细介绍如何使用`visudo`命令为Linux用户配置`...

    mac用户及赋予sudo权限.docx

    本文将详细讲解如何创建新用户以及如何赋予这些用户sudo(超级用户)权限。sudo权限允许用户以管理员身份执行命令,这对于进行系统配置、安装软件或其他需要特权的操作是必要的。 首先,我们来看如何创建一个新的...

    CentOS 7中sudo权限配置

    在CentOS 7系统中,sudo的配置通常通过编辑/etc/sudoers文件来实现,但编辑这个文件时需要非常谨慎,因为一个错误的配置可能导致系统安全问题或者系统无法使用。因此,在修改/etc/sudoers文件之前,建议使用visudo...

    sudo命令及权限管理命令

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

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

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

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

    本文主要关注两个关键的命令:su和sudo,它们在Linux环境中用于权限配置和控制。 首先,su命令是切换用户身份的工具,允许用户从一个账户切换到另一个账户,尤其是从普通用户切换到root用户。例如,当普通用户test...

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

    `sudo su`组合使用,首先使用sudo提升权限,然后执行su命令切换到root用户。这与直接使用`su root`的效果相似,但需要当前用户在sudoers文件中有使用sudo的权限。执行这个命令后,用户会被要求输入当前用户的密码,...

    su的sudo以及isudo的权限

    su(substitute user的缩写)和sudo(substitute user do的缩写)是两种常用的用户身份切换和执行命令的方式,它们在权限设置和使用上有着本质的区别。接下来,我们将详细讲解su和sudo的使用方法以及它们在权限管理...

    NSudo提权工具最新版

    【NSudo提权工具最新版】是一款用于系统权限提升的实用工具,主要针对Windows操作系统设计。在Windows系统中,通常用户账户的操作权限受到限制,不能对系统关键组件进行修改或执行某些高级操作。这时,NSudo便能发挥...

    系统管理软件 NSudo 8.0.1.zip

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

    sudo1.9.5p2升级

    `sudo1.9.5p2` 是sudo的一个特定版本,这个版本修复了一些安全问题和性能改进。当你在Linux环境中进行系统维护或管理时,确保`sudo` 的版本是最新的是非常关键的,因为它直接关系到系统的安全性。 升级`sudo` 至...

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

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

    cpp-Linux通过注入拥有sudo令牌的进程进行权限提升

    sudo命令允许普通用户以root或其他特定用户的权限执行命令,这对于系统管理和日常维护非常有用。然而,这也带来了一定的安全风险,特别是当有恶意程序试图利用sudo令牌来提升权限时。本文将深入探讨如何通过注入拥有...

    linux echo命令以及linux echo命令提示权限不够的解决办法

    ### Linux Echo 命令详解及权限问题解决 #### 一、Echo 命令概述 **Echo** 命令在 Linux 和 Unix 系统中是一个非常基础但极其重要的命令,广泛应用于脚本编写和命令行交互。其主要功能是在屏幕上显示文本,通常...

    sudo应用的详细阐述

    sudo 应用是一种在Linux和Unix系统中广泛使用的命令,它允许普通用户以超级用户(root)或其他特定用户的权限执行命令,但同时提供了细粒度的权限控制和审计功能。相较于传统的su命令,sudo更加安全,因为它不要求...

    su和sudo的区别

    在Linux系统中,`su`和`sudo`都是用于提升权限的命令,但它们之间存在显著的差异。 1. **su(Switch User)**: `su`命令允许用户切换到另一个用户的身份,通常用于获得root权限。当普通用户使用`su`切换到root时...

Global site tag (gtag.js) - Google Analytics