vi etc/passwd
sam:x:200:50:Samsan:/usr/sam:/bin/sh
修改200为0 ,则sam用户具有root权限。
etc/passwd文件说明(转自:http://blog.sina.com.cn/s/blog_b91dcf1c01019xa4.html)
etc/passwd中一行记录对应着一个用户,每行记录又被冒号(分隔为7个字段,其格式和具体含义如下: 用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
例如:
root:x:0:0:Superuser:/:
daemon:x:1:1:Systemdaemons:/etc:
bin:x:2:2:Ownerofsystemcommands:/bin:
sys:x:3:3:Ownerofsystemfiles:/usr/sys:
adm:x:4:4:Systemaccounting:/usr/adm:
uucp:x:5:5:UUCPadministrator:/usr/lib/uucp:
auth:x:7:21:Authenticationadministrator:/tcb/files/auth:
cron:x:9:16:Crondaemon:/usr/spool/cron:
listen:x:37:4:Networkdaemon:/usr/net/nls:
lp:x:71:18:Printeradministrator:/usr/spool/lp:
sam:x:200:50:Samsan:/usr/sam:/bin/sh
从上面的例子我们可以看到,/etc/passwd中一行记录对应着一个用户,每行记录又被冒号(:)分隔为7个字段,其格式和具体含义如下:
用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
“用户名”是代表用户账号的字符串。通常长度不超过8个字符,并且由大小写字母和/或数字组成。登录名中不能有冒号(:),因为冒号在这里是分隔符。为了兼容起见,登录名中最好不要包含点字符(.),并且不使用连字符(-)和加号(+)打头。
“口 令”一些系统中,存放着加密后的用户口令字。虽然这个字段存放的只是用户口令的加密串,不是明文,但是由于/etc/passwd文件对所有用户都可读, 所以这仍是一个安全隐患。因此,现在许多Linux系统(如SVR4)都使用了shadow技术,把真正的加密后的用户口令字存放到/etc /shadow文件中,而在/etc/passwd文件的口令字段中只存放一个特殊的字符,例如“x”或者“*”。
“用户标识号”是一个整数,系统内部用它来标识用户。一般情况下它与用户名是一一对应的。如果几个用户名对应的用户标识号是一样的,系统内部将把它们视为同一个用户,但是它们可以有不同的口令、不同的主目录以及不同的登录Shell等。
通常用户标识号的取值范围是0~65535。0是超级用户root的标识号,1~99由系统保留,作为管理账号,普通用户的标识号从100开始。在Linux系统中,这个界限是500。
“组标识号”字段记录的是用户所属的用户组。它对应着/etc/group文件中的一条记录。
“注释性描述”字段记录着用户的一些个人情况,例如用户的真实姓名、电话、地址等,这个字段并没有什么实际的用途。在不同的Linux系统中,这个字段的格式并没有统一。在许多Linux系统中,这个字段存放的是一段任意的注释性描述文字,用做finger命令的输出。
“主目录”,也就是用户的起始工作目录,它是用户在登录到系统之后所处的目录。在大多数系统中,各用户的主目录都被组织在同一个特定的目录下,而用户主目录的 名称就是该用户的登录名。各用户对自己的主目录有读、写、执行(搜索)权限,其他用户对此目录的访问权限则根据具体情况设置。
用户登录后,要启动 一个进程,负责将用户的操作传给内核,这个进程是用户登录到系统后运行的命令解释器或某个特定的程序,即Shell。Shell是用户与Linux系统之 间的接口。Linux的Shell有许多种,每种都有不同的特点。常用的有 sh(BourneShell),csh(CShell),ksh(KornShell),tcsh(TENEX/TOPS- 20typeCShell),bash(BourneAgainShell)等。系统管理员可以根据系统情况和用户习惯为用户指定某个Shell。如果不 指定Shell,那么系统使用sh为默认的登录Shell,即这个字段的值为/bin/sh。
用户的登录Shell也可以指定为某个特定的程序(此程序不是一个命令解释器)。利用这一特点,我们可以限制用户只能运行指定的应用程序,在该应用程序运行结束后,用户就自动退出了系统。有些Linux系统要求只有那些在系统中登记了的程序才能出现在这个字段中。
系统中有一类用户称为伪用户(psuedousers),这些用户在Linux /etc/passwd文件中也占有一条记录,但是不能登录,因为它们的登录Shell为空。它们的存在主要是方便系统管理,满足相应的系统进程对文件属主的要求。常见的伪用户如下所示。
伪用户含义
bin拥有可执行的用户命令文件
sys拥有系统文件
adm拥有帐户文件
uucpUUCP使用
lplp或lpd子系统使用
nobodyNFS使用
拥有帐户文件
除了上面列出的伪用户外,还有许多标准的伪用户,例如:audit,cron,mail,usenet等,它们也都各自为相关的进程和文件所需要。
由 于Linux /etc/passwd文件是所有用户都可读的,如果用户的密码太简单或规律比较明显的话,一台普通的计算机就能够很容易地将它破解,因此对安全性要求较 高的Linux系统都把加密后的口令字分离出来,单独存放在一个文件中,这个文件是/etc/shadow文件。只有超级用户才拥有该文件读权限,这就保 证了用户密码的安全性。
相关推荐
使用sudo命令可以让普通用户拥有root权限,关闭系统。这种方法可以简化系统管理,但是也存在一定的安全风险。 情况五:使用脚本来关闭系统 使用shell脚本可以自动关闭系统,例如使用shutdown -t 3 now命令关闭系统...
总结来说,CentOS 7通过sudo机制提供了一种灵活且安全的方法,允许普通用户在必要时执行root级别的任务,而无需直接拥有root权限。通过正确配置/etc/sudoers文件,我们可以实现精细化的权限控制,从而提高系统的整体...
通过这种方式,普通用户`shi`可以方便地在执行需要root权限的任务时进行提权,而无需记住root用户的密码,提高了工作效率。然而,这种配置应当谨慎使用,因为它极大地降低了系统的安全性。如果`shi`用户的账户被恶意...
8. **安全建议**:对于普通用户,除非有特定需求,一般不建议获取root权限,以免增加设备的安全风险。开发者在测试或调试过程中使用root权限时,也应注意对设备的保护,避免泄露个人数据。 了解并正确使用root权限...
通过输入`su -`或者`sudo -i`,普通用户可以获取root权限进行系统管理。然而,这种机制也带来了安全隐患,因为一旦普通用户的账户被攻击者控制,他们就可以轻易地提升权限,对系统造成破坏。 为了禁止普通用户使用`...
但这种权限同时也带来了安全风险,因为它可能导致系统不稳定甚至被恶意软件利用,因此官方并不推荐普通用户随意获取root权限。 `signapk.jar`是一个用于签署APK文件的Java应用程序。在Android中,所有的APK文件在...
重启后,当再次尝试登录Fedora 12时,你可以在GDM登录界面输入root用户的用户名和密码,成功登录后将拥有root权限。请注意,虽然现在你可以直接以root用户登录,但为了系统的安全性,建议仅在必要时使用root权限,...
在 Linux 系统中,普通用户只能执行有限的操作,而 root 用户则拥有最高的权限。因此,普通用户如何提权到 root 成为了渗透测试和安全相关领域的热门话题。 在 Linux 系统中,普通用户可以通过多种方式提权到 root...
因此,一般不推荐普通用户轻易尝试。 要测试root权限,通常有以下步骤: 1. **安装第三方应用**:大多数情况下,我们需要先安装一个可以授予或测试root权限的应用,如SuperSU、Magisk等。这些应用可以帮助我们管理...
成功后,手机将拥有root权限。 6. **验证root状态**:完成root后,可以通过安装像"Root Checker"这样的应用来检查root权限是否生效。 7. **安装权限管理应用**:为了控制各个应用的root权限,可以安装如"SuperSU"之...
一旦设备被恶意软件感染,拥有root权限的恶意软件可能会对整个系统造成严重破坏。此外,root设备可能会使保修失效,因为厂商通常不支持root过的设备。因此,对于普通用户来说,除非有特别的需求,否则不建议轻易获取...
普通用户只能操作自己的文件,而root用户则拥有无限制的访问权,可以对整个系统进行读写和执行操作。获取root权限意味着你成为了这个系统的最高管理者。 描述中提到的“手机解锁后取得超级权限”,通常是指解锁...
su 命令可以使一个一般用户拥有超级用户或其他用户的权限,也可以使超级用户以一般用户的身分做些事情。 su 命令的格式为: `su [选项] [USER [ARG]...]` 主要参数: * `-f`,`--fast`:不必读启动文件(如 csh....
尽管root用户拥有最高的权限,但在实际操作中应谨慎使用。为了避免潜在的安全风险,系统管理员应尽量避免直接登录作为root,而是使用`su`命令临时切换到root身份执行特定任务。此外,`su`命令的使用会被记录在`/var/...
"Linux下强行拿下root权限"这个主题涉及到的是如何通过编程方式在特定条件下获取或切换到root权限。这种操作通常需要深入理解Linux的用户权限模型、sudo机制以及系统调用。 Linux的权限系统基于Unix权限模型,分为...
这是因为 Linux 操作系统的安全机制是基于权限的,普通用户对某些文件和目录没有读写权限。为了访问这些敏感的系统文件和目录,需要以 Root 用户身份登录。下面将详细介绍如何在 Ubuntu 中进入 Root 用户。 什么是 ...
普通用户通常只能执行基本的操作,而涉及到系统级别的配置和管理任务则需要`root`权限。这篇文章将详细介绍如何在Linux中进行普通用户与`root`用户之间的切换。 一、`sudo`命令切换 1. `sudo`命令是Linux中用于...
这将使`tommy`用户在运行`sudo -s`或`su -`命令后拥有root权限。 4. **赋予root权限方法三:修改passwd文件**: 虽然这种方法不推荐,但可以通过修改`/etc/passwd`文件,将用户的UID(用户标识号)改为0,这通常...
一旦验证成功,用户将被切换到 Root 用户环境,并且命令提示符会显示为 `#` 符号,表示已经拥有 Root 权限。 **注意:** - 如果你使用的是 `sudo su`,那么在执行完命令后会留在 Root 环境中,直到你退出。 - 如果...
Linux 操作系统中,root 权限是最高的,也被称为超级权限的拥有者。普通用户无法执行的操作,root 用户都能完成,所以也被称之为超级管理用户。在系统中,每个文件、目录和进程,都归属于某一个用户,没有用户许可...