当前位置:中国星空学习网首页>Linux/DOS>Linux基础>正文  
第 4 部分. 用户管理

 

目录:

超级用户
创建新用户
修改密码
删除用户
如何组织用户
Password 文件结构
映像密码和用户权限

编辑 passwd 文件时要当心
用户和组的关
结束语

在本部分,我们使用 Webmin 界面和命令行添加、删除用户和组,并介绍了密码和组文件的映像。Linux 中的用户管理与 Windows 中的用户管理很相似,但又很不相同。两个系统都是多用户系统,基于用户身份来控制他们对资源的访问。两个操作系统都允许将用户分组管理以简化访问控制,以避免为众多用户分别设置权限。不过,相同之处也仅此而已。

超级用户

在 Linux 中,超级用户称为 root。root 用户可以控制所有的程序,访问所有文件,使用系统上的所有功能。对 root 用户来说没有不可以做的事情。就管理的角度而言,root 的权限是至高无上的。所以,root 帐号一定要通过安全的密码保护起来,这一点非常重要。您不应该使用 root 身份来处理日常的事务。其他用户也可以被赋予 root 特权,但一定要谨慎行事。通常您可以配置一些特定的程序由某些用户以 root 身份去运行,而不必赋予他们 root 权限。

创建新用户

可以通过命令行或者 Webmin 等工具来创建新用户。添加用户的命令是 useradd。例如,从控制台中创建一个新用户:

useradd -c "normal user" -d /home/userid -g users\ -G webadm,helpdesk -s\ /bin/bash userid


这个命令创建了一个名为“userid”(命令的最后一个参数)的新用户。“normal user”是对这个用户的注释。userid 的主目录将是“/home/userid”。userid 的主组将是 users,但他也被加入到“webadm”和“helpdesk”这两个组。userid 将使用“/bin/bash”shell 作为他的常规控制台环境。

使用 Webmin 创建新用户简单而且直观。使用您喜欢的浏览器登录到 Webmin,切换到 System 窗体。选择“Users and Groups”工具,然后点击 Create a new user。



图 1. Webmin 的 Create User 屏幕


填写好用户的详细信息,然后点击 Create。用户创建完成。

修改密码

可以从控制台使用 passwd 命令来修改用户的密码:

passwd userid


只有 root 用户可以用 passwd 修改其他用户的密码。输入完命令后,系统将提示您输入并确认您要设置的密码。如果两次输入一致,用户的标识就会更新,密码修改成功。从控制台输入 passwd,用户可以修改自己的密码;在这种情况下,系统会向用户询问原来的密码,验证通过后才可以输入新密码。大多数的 Linux 发行版本安装时都会启用 password cracker 模块,用于修改密码。这个模块将检查密码是否遵循了良好的密码设置习惯。如果用户使用了不安全的密码,它将自动警告用户。您可以将系统配置为要求用户必须使用安全的密码。root 在设置不安全的密码时也会被警告,但是仍然可以设置成功。在 Webmin 中,可以使用 System 窗体中的“Change Passwords”模块来修改密码。在列表中选择一个用户,然后在空白处输入新密码。

删除用户

可以从控制台使用 userdel 命令来删除用户。

userdel -r userid


使用可选的 -r 开关可以将用户的主目录及所有相关信息全部删除。如果想要保留用户主目录,那么不要使用 -r 开关。这个开关不会自动删除系统中所有属于这个用户的文件,只是删除他的主目录。

如何组织用户

Linux 的配置是基于文本的。Linux 中的所有用户都存放于 /etc/passwd 文件中。您可以使用 more 命令来分页查看这个文件:

more /etc/passwd


这个文件的结构非常直观。每一行是一个新用户,参数用冒号隔开。

userid:x:75000:75000::/home/userid:/bin/bash


第一列是用户名。第二列是用户的密码。第三列是用户的数字 ID。第四列是用户的主组的 ID。第五列是用户的全名,或者是注释。第六列是用户主目录的位置,这个目录通常位于 /home 目录下,目录名与用户 ID 相同。第七列是用户的默认控制台 shell。

Password 文件结构



注意上面的例子中 Password 列是一个“x”。这并不是说用户的密码是“x”。以前密码曾经是以平文本的形式存储在这个文件中。现在也还有这样的配置,但由于密码容易泄露,已经很少有人再这样做了。解决的方法是创建 shadow password。在 /etc/passwd 文件中存放密码的位置只是存放一个“x”,而经过加密的密码存放于 /etc/shadow 文件中。这项技术通过将用户信息与密码数据分离而提高了安全性。MD5 密码加密算法支持更为可靠的密码,从而进一步提高了安全性。一个映像密码条目的样例如下所示:

userid:$1$z2NXZR19$PZpyL84DmPKBXMeURaXXM.:12138:0:186:7:::


所有的映像密码过程都是在后台进行,您只需要启用这项功能,别的什么都不用去做。

映像密码和用户权限

Linux 用户管理的特点之一在于它沿袭了 UNIX 风格,使用 passwd 文件。登录的用户必须可以读取 /etc/passwd 文件,以判断他的用户名是否存在。如果将用户名和密码存放在同一个文件中,潜在的攻击者就可能获得密码;他们可以下载 /etc/passwd 文件,然后以暴力破解的方法获得密码。映像文件不必所有人都可读,这样攻击者将不能获得任何形式的密码。这种方法还是不最好的,因为攻击还是可以得到 一些 用户信息。更好的方法是将用户保存于一个单独的地方,比如使用 LDAP。



Linux 中的组与 Windows 中的组很类似。您可以创建一个组,然后将成员添加到这个组的列表中。可以以组为单位来分配资源。隶属于同一个组的成员可以访问同一资源。使用控制台命令 groupadd 创建组很简单:

groupadd mygroup


这将创建一个名为“newgroup”的没有任何成员的组。组存放于 /etc/group 文件中。每一个组由单独的一行列出,如下所示:

mygroup:x:527:


第一列是组的名字。第二列是一个密码。同样,“x”说明真正的密码存放在 /etc/gshadow 映像文件中。第三列是组的一个数字索引。在第三列之后将是以逗号隔开的组的成员的用户 ID。可以使用 gpasswd 命令向组中添加成员,要使用 -a 开关,后面跟要添加的用户名:

gpasswd -a userid mygroup


删除组的成员还是使用这个命令,不过使用的开关是 -d 而不是 -a:

gpasswd -d userid mygroup


也可以通过直接编辑 /etc/group 文件来对组进行修改。

编辑 passwd 文件时要当心

直接编辑 /etc/passwd 文件和 /etc/group 文件的真正危险在于有可能偶然失误而造成 ID 编号的重复。所有的资源都通过 ID 编号而不是用户或组的名字来确定用户的身份。如果您不小心造成了 ID 编号的重复,那么可能会有一些意想不到的事情发生。例如,如果您将一个用户的 ID 编号设置为 0 (root 用户的 ID),那个用户的身份将是 root!。另外,如果您在文件中删除了用户行或者组行,那么对应的用户或组也就被删掉了。这些都是人为的错误。使用工具可以避免这些错误。不过,有时直接去编辑 /etc/group 文件是解决问题最快捷的途径。您一定要记住,当您在编辑那些文件时,您管理的是实际的权力。一定要小心。在 Webmin 中,可以使用前面用到的管理用户的工具来创建、编辑、除去组。

用户和组的关联

虽然在这里我们不能详尽地论述访问控制,不过您应该对用户和组对文件的访问权限有初步的了解。如果您以长格式列出一个目录下的文件,您看到的将如下显示。

-rw-r--r-- 1 userid mygroup 703 Jun 23 22:12 myfile


现在暂时忽略其他的列,只去看第三、四和最后一列。第三列是文件主人的名字,userid。第四列是关联到这个文件的组,mygroup。最后一列是文件名。每个文件只能属于一个主人和一个组。可以为不能归于这两类的其他用户 (Other)设置权限。可以认为 Other 相当于 Windows 中的 Everyone 组。

一个文件只能属于一个主人,这在操作系统中很常见,但是,文件只能属于一个组,初次使用这一规则的管理员可能会觉得受到了限制。事实并不如此。由于用户可以同时是多个组的成员,所以只需要创建新的组就可以安全使用资源。在 Linux 中,往往是基于所需要的资源访问权限而不是根据业务单位来定义组。如果系统的资源逻辑上是有组织的,那么可以创建更多的组来更好地控制对资源的访问。

结束语

在 Linux 中管理用户和组的方式与 Windows 中本质上是相同的,但是 Linux 中只能有惟一的组可以关联到一个系统资源。应该这样认识 Linux 中的组管理:不要吝惜对组的使用,在复杂的环境中,不要害怕创建很多组。应该根据资源访问权限而不是基于业务单位去创建组。用户和组信息分别存储在 /etc/passwd 文件和 /etc/group 文件中。您的系统可能还会有 /etc/shadow 和 /etc/gshadow 文件,它们存储的是为了安全而经过加密的密码。直接编辑这些文件来管理用户和组不是不可以,但您一定要谨慎行事。所有的用户和组的管理都可以在控制台中完成,可以写成脚本。也可以使用 Webmin 等工具以图形化的方式管理用户和组。

(责任编辑:战莹)j30B0j30B0j30B0

 

上一篇: 第 5 部分. Linux 日志
下一篇: 第 3 部分. Webmin 简介
站内公告
栏目导航
 Windows系统
 Linux/DOS
 办公应用
 工具软件
 图形图象
 网络应用
 安全防御
 网络编程
 软件教程
 实用技术
最新文章
中国星空图片网
·人体艺术
·性感美眉
·生活自拍
·幽默搞笑
·超级帅哥
·精彩万花筒
·梦幻景色
中国星空探索网
·神秘追踪 灵异接触
·鬼故事 灵异空间 图片
·未解之谜 探索宇宙
中国星空两性网
·两性图文 我的性事 情人 成人幽默
·性爱技巧 两性测试 性爱误区
·性事花边 生育避孕 性保健 性疾病
·两性生理 文化 讨论 心理 知识
·爱人同志 非常男女 一夜情
中国星空算网命
·手机吉凶 QQ号码吉凶 周公解梦
·塔罗牌测试 狗年运程
·关公灵签 紫薇斗数 八字排盘
·测试:你的成功指数有多少
·测验你的家庭是否美满?
·面相: 面型 眼睛 耳朵 口唇
·手相:拉你一把奶油桂花手
·测试:你能成为大富翁吗?
联系方式 设为首页
中国星空旗下---中国星空学习网    Copyright 2005-2050 Year   xx.happy369.com  Networks.All rights reserved
中国星空网所有内容均来源于网络,版权属于原作者,如侵犯到您的权益,请与我们联系,我们将尽快予以删除或处理。
中国星空不承担由于内容的合法性及健康性所引起的一切争议和法律责任。
陕ICP备05011765号 联系我们 
《女人如烟》--演唱:魏佳艺