Linux用户账号与组账号管理.ppt

上传人:牧羊曲112 文档编号:5438085 上传时间:2023-07-07 格式:PPT 页数:63 大小:569KB
返回 下载 相关 举报
Linux用户账号与组账号管理.ppt_第1页
第1页 / 共63页
Linux用户账号与组账号管理.ppt_第2页
第2页 / 共63页
Linux用户账号与组账号管理.ppt_第3页
第3页 / 共63页
Linux用户账号与组账号管理.ppt_第4页
第4页 / 共63页
Linux用户账号与组账号管理.ppt_第5页
第5页 / 共63页
点击查看更多>>
资源描述

《Linux用户账号与组账号管理.ppt》由会员分享,可在线阅读,更多相关《Linux用户账号与组账号管理.ppt(63页珍藏版)》请在三一办公上搜索。

1、第7章 Linux用户账号与组群账号管理,用户账户和组群的管理是Linux系统工作中重要的一部分,而所谓的账号管理是指账号的添加、删除和修改、账号设置以及权限(Permissions)授予等问题。其中最困难的部分并不在于操作与设置的层次,而是如何建立一套合理又有灵活性的法则来满足企业的需求,这也是本章将要介绍的重点。,7.1 Linux系统用户账号的管理,7.1.1/etc/passwd文件7.1.2/etc/shadow文件7.1.3 用户账号的创建和维护,1、用户帐号:所谓的“用户”可以是实际的人员。每个用户帐号都包含一个惟一的识别码(User ID,UID)以及组群识别码(Group I

2、D,GID)。2、组群帐号:所谓的“组群”是一种逻辑性的单位,主要集合特定的用户,并授予所有组群成员文件相同的权限,如读取、写入、或运行。,7.1.1/etc/passwd文件,passwd文件中的记录是按如下方式组群织的:登录名:口令:用户标识号:组群标识号:用户名:用户主目录:命令解释程序1、登录名:即用户帐号,由root或具有相等权限的管理员所指定。2、密码:系统用口令来验证用户的合法性。3、用户标识号:Linux中的每个用户帐号都由一个惟一的识别号码,该号码就称为UID,它是一个数值,最大可达65535。4、组群标识号:这是当前用户的默认工作组群标识。5、用户名:User_name包含

3、有关用户的一些信息,如用户的真实姓名、联系电话和办公室住址等。6、用户主目录:该字段定义了个人用户的主目录,当用户登录后,他的shell将把目录作为用户的工作目录。7、命令解释程序:Shell是当用户登录系统时运行的程序名称,通常Shell程序的全路径名为/bin/bash,但是用户可以使用chsh命令来改变自己的登录Shell。,7.1.1/etc/passwd文件,列:passwd文件中的两条记录:root:x:0:0:root:/root:/bin/bashgo:x:500:500:/home/go:/bin/bash第一条记录描述了root账号。可以看到,登录名为root;口令字段为“

4、x”,表示真实口令被存放在/etc/shadows文件中;UID为0,因为系统认为UID为0的用户可以不受通常的安全限制;GID也为0,这是惯例,表示这是root组群。系统中很多文件都属于root账号和root组群;用户名为root;主目录为/root;默认的shell程序为bash.第二条记录描述了系统中一个普通的个人用户。其中,登录名为go;口令字段为“x”;UID为500;GID为500,表明go所在组群在/etc/group文件中编号为500;用户名字段为空,表示没有为该用户指定附加的描述信息;用户主目录为/home/go;默认的shell程序为bash。,7.1.2/etc/shad

5、ow文件,使用Shadow Passwd的功能又下面优点:将原本/etc/passwd文件中的加密密码移到/etc/shadow文件中,但该文件仅允许root读取,所以可提高安全性。可记录密码改变的时间。可以设置密码使用的时间,以避免用户的密码改变过于频繁。可以使用/etc/login.defs文件来设置安全性策略,如密码最小长度或密码最短使用时间。,7.1.3 用户账号的创建和维护,1.以文本模式对用户账号进行创建和维护 2.以图形界面对用户账号进行创建和维护,以文本模式对用户账号进行创建和维护,1、添加用户账号对系统而言,创建一个用户账号需要完成以下步骤:添加一个记录到/etc/passw

6、d文件。创建用户的主目录。在用户的主目录中设置用户的默认配置文件为了提高系统的利用率,并且避免因多个用户共用一个root账号而造成不必要的系统安全隐患,通常必须为新用户添加账户。在Linux系统中,添加用户只能由超级用户来完成,也就是说,只能由root使用useradd/adduser命令来完成该项工作。,以文本模式对用户账号进行创建和维护,在使用useradd或adduser命令添加用户账号前,建议先使用“finger”命令来检查将要添加的用户帐号是否存在,以避免账号名重复而失败。例:使用“finger”命令来查询现存账号及目前不存在账号的结果:rootns root#finger user

7、01Login:user01 Name:(null)Directory:/home/user01 Shell:/bin/bashNever logged in.No mail.No Plan.rootns root#finger user02Finger:user02:no such user.由以上结果可知,当前系统中已存在名为user01的账号,所以不要再添加该名称的账号,但是user02的名称尚未被使用,因此可以添加用户user02。,以文本模式对用户账号进行创建和维护,命令useradd的格式如下所示:Useradd 选项 用户登录名便如,需要创建一个用户账号user02,主目录为/h

8、ome/user02,登录时使用bash作为其shell程序。可以使用以下命令:rootns root#useradd-d/home/user02-s/bin/bash user02,以文本模式对用户账号进行创建和维护,2、修改用户账号添加用户帐号后,管理员有时需要改变账号的内容,此时可以使用“usermod”命令来进行账号内容的修改,其实用方法及参数与useradd命令很相似。假设要修改先前建立的User02账号信息,同时将用户的备注文字改为“Vice President”,而且主目录改为/root,则可以使用下面的命令:rootna1 root#usermod-c“Vice Preside

9、nt”-d/root User02,以文本模式对用户账号进行创建和维护,3、删除和停用用户账号 要删除已经存在的用户账号,必须从/etc/passwd文件中删除此用户的记录项,从/etc/group文件中删除提及的此用户,并且删除用户的主目录及其他由该用户创建或属于此用户的文件。这些工作可以使用userdel命令来完成。例如,可以使用以下命令删除用户账号user01:rootna1 root#userdel user01,以文本模式对用户账号进行创建和维护,4、用户密码管理 若要改变自己的使用密码,只要直接使用passwd命令即可。下面是使用“passwd”命令来改变自己密码的方法:alice

10、ns1 alice$passwd 不加任何参数Changing password for user aliceChanging password for alice(current)UNIX password:输入目前密码(显示器不显示密码)New passsrd:输入新的密码(显示器不显示密码)Retype new password:再次输入新的密码(显示器不显示密码)Passwrd:all authentication tokens updated successfully.密码修改成功,以图形界面对用户账号进行创建和维护,1、添加用户账号要添加新用户,点击添加用户按钮。一个如右图所示的窗

11、口就会出现。在适当的字段内键入新用户的用户名和全称。在口令和确认口令字段内键入口令。口令必须至少有六个字符。,以图形界面对用户账号进行创建和维护,2、修改用户账号要查看某个现存用户的属性,点击用户标签,从用户列表中选择该用户,然后在按钮菜单中点击属性(或者从下拉菜单中选择行动=属性)。一个类似右图的窗口就会出现。,7.2 Linux系统用户组群的管理,7.2.1 组群帐号/etc/group文件7.2.2 工作组群的管理,在进行账号管理时,使用“组群”为管理的基本单位。先将需要存入该项资料源的用户加入到同一个组群,然后在授予组群该资料的访问权限。这样,每个组群成员都可以拥有该项资源的权限,管理

12、员也可以节省日常维护的时间。,7.2.1 组群帐号/etc/group文件,类似于/etc/passwd文件,系统中的每个组群都对应/etc/group文件中一行记录。记录的各字段属性依次定义如下:组群名:口令:组群标识号:用户列表。,7.2.1 组群帐号/etc/group文件,下面介绍各个字段的含义。1、组群名(group_name):顾名思义,组群名就是工作组群的名字2、口令(passwd):组群的口令,通常都不使用或用“x”表示。允许不在这个组群中的其他用户用newgrp命令来访问属于这个组群的资源。3、组群标识号(GID):GID是系统用来区分不同组群的标识号,它在系统中是惟一的。在

13、/etc/passwd文件中,用户的组群标识号字段就是用这个数字来指定用户的默认组群。4、用户列表(user_list):用户列表是用“,”分隔的用户登录名集合,列出了这个组群的所有成员。,7.2.1 组群帐号/etc/group文件,在Linux系统中,root和bin都是管理组群。系统中很多文件都属于这两个组群。实际的应用中,口令字段是完全没有必要的。事实上,很多系统没有提供设置组群口令的工具。这是因为要使一个用户成为多个组群的成员,只需要把用户登录名加入到这些组群的用户列表字段中。用户可以使用group命令列出当前用户所属的所有组群的名称。,7.2.2 工作组群的管理,1、工作组群概述设

14、置了组群后,通过将用户划分到各个特定的组群中,就自动地使用户拥 该工作组群的权限。,7.2.2 工作组群的管理,2、添加组群账号(1)命令行操作 添加组群账户命令:groupadd 加组群账号的groupadd命令使用很容易。只要直接输入命令和组群名称即可。若要指定组群群识别码(GID),可以使用“-g”参数。例:rootns1 root#groupadd-g 600 test,7.2.2 工作组群的管理,2、添加组群账号(2)用户管理器要添加新用户组群,点击添加组群 按钮。一个类似下图的窗口就会出现。,7.2.2 工作组群的管理,3、修改组群群账号(1)命令行操作 修改组群账户命令:grou

15、pmod groupmod命令的格式如下:#groupmod-g,7.2.2 工作组群的管理,3、修改组群群账号(2)用户管理器要查看某一现存组群的属性,从组群列表中选择该组群,然后在按钮菜单中点击属性(或选择下拉菜单文件=属性)。一个类似右的窗口就会出现。,7.2.2 工作组群的管理,4、删除组群群账号删除组群命令为groupdel。使用此命令可以删除不需要的组群。groupdel命令的格式如下:#groupdel 同样,也可以在/etc/group文件中将对应组群的记录项删除,从而达到同样的目的。,7.3 添加大量用户,在平时可能管理员需要添加大量用户帐号的机会并不多,但是在一些比较特殊的

16、情况下,例如新成立的部门或新学期的新生帐号,就必须同时建立许多用户帐号。,在处理添加大量用户帐号时,一般使用下面的步骤:建立用户信息文件。其中必须包含所需的数据域位,同时这些字段必须符合/etc/passwd文件中字段的排列次序。运行shell script 逐栏读取信息。将读取的信息依次在/etc/passwd和/etc/shadow两个文件中建立记录。,1、创建批量用户的命令 newusers命令格式:newusers 文件名功能:成批添加用户。把文件内容重新定向添加到/etc/passwd文件中。chpasswd命令格式:chpasswd 文件名 功能:批量更新用户口令。把文件内容重新定

17、向添加到/etc/shadow文件中。,1、创建批量用户的命令 pwconv命令格式:pwconv功能:用于超级用户启用shadow加密。pwunconv命令格式:pwunconv功能:用于超级用户取消shadow加密,2、创建批量用户的步骤步骤1:编辑用户信息文件步骤2:运行/usr/sbin/newusers步骤3:运行/usr/sbin/pwunconv步骤4:建立密码文件步骤5:运行/usr/sbin/chpasswd步骤6:运行/usr/sbin/;wconv,1、编辑用户信息文件建立大量用户帐号,首先使用任何文件编辑器输入用户信息,这些用户信息字段必须符合/etc/passwd文件

18、中字段的排列次序。例:rootnsl root#vi/root/account.txtstudent1:x:601:601:/home/student1:/bin/bashstudent2:x:602:602:/home/student2:/bin/bashstudent3:x:603:603:/home/student3:/bin/bashstudent4:x:604:604:/home/student4:/bin/bash,2、运行/usr/sbin/newusers在/usr/sbin目录中,newusers的主要功能是以批处理文件来更新或建立用户帐号,其使用方法很简单。例:rootns

19、l root#newusers/root/account.txt,3、运行/usr/sbin/pwunconv/usr/sbin/pwunconv程序表示“password unconvert shadow password”的意思,也就是说它可以将/etc/shadow产生的shadow密码译码,然后回写到/etc/passwd中,同时也将/etc/shadow文件中的密码字段删除,来取消shadow password的功能。,4、建立密码文件按照每个用户名来建立对应的密码表,只是一个很简单的文本文件,主要支持稍后的/usr/sbin/chpasswd命令运行。例:rootnsl root#

20、vi/root/password.txtstudent1:lxniegh3student2:73h8sjk3student3:pqj37sestudent4:ka6h9dj7,5、运行/usr/sbin/chpasswd建立对应的密码表,还需要使用shell script将密码表中的密码导入到/etc/passwd文件中,在此使用/usr/sbin/chpasswd程序。例:rootns1 root#chpasswd/root/passwd.txt,6、运行/usr/sbin/;wconv在成功地将密码写入/etc/passwd文件后,由于所有的密码都是以明文的方式来显示,所以很容易对安全性产

21、生顾虑。因此,必须接着运行/usr/sbin/paconv程序,将密码编码为shadow password,并且写入/etc/shadow文件,例:rootns1 root#pwconvrootns1 root#cat/etc/passwdStudent1:x:601:601:/home/student1:/bin/bashStudent2:x:602:602:/home/student2:/bin/bashStudent3:x:603:603:/home/student3:/bin/bashStudent4:x:604:604:/home/student4:/bin/bash,7.4 赋予普

22、通用户特殊权限,在Linux系统中,管理员往往不止一人,若每位管理员都用root身份进行管理工作,根本无法弄清楚谁该做什么。所以最好的方式是:管理员(leader)当系统的root,然后创建一些普通用户,分配一部分系统管理工作给他们。现在已经有了可以实现这样的功能命令:sudo命令。,Sudo命令通过维护一个特权到用户名映射的数据库将特权分配给不同的用户,这些特权可由数据库中所列的一些不同的命令来识别。为了获得某一特权项,有资格的用户只需简单地在命令行输入sudo与命令名之后,按照提示再次输入口令(用户自己的口令,不是root用户口令)。下面以实例来介绍sudo的使用。,例:管理员需要允许ge

23、m用户在主机sun上执行reboot和shutdown命令,在/etc/sudoers中加入:gem sun=/usr/sbin/reboot,/usr/sbin/shutdown 注意:命令一定要使用绝对路径,以避免其他目录的同名命令被执行,从而造成安全隐患。然后保存退出,gem用户想执行reboot命令时,只要在提示符下运行下列命令:$sudo/usr/sbin/reboot输入正确的密码,就可以重启服务器了。,7.5 Linux系统安全管理,7.5.1 安全管理7.5.2 安全管理组群成7.5.3 用户口令的管理7.5.4 用户账号的管理7.5.5 管理帐号常用的命令,7.5.1 安全管

24、理,1、安全管理Linux系统安全管理包括多个要素,例如,普通用户的系统安全、超级用户的系统安全、文件系统的安全、进程安全以及网络安全等。只有以上各个要素协调配合才能真正地保证系统不易受到致命的打击。,7.5.1 安全管理,2、安全管理的目标 防止非法操作 数据保护 正确管理用户 保证系统的完整性 记账 系统保护,7.5.2 安全管理组群成,1、物理安全物理安全对于任何计算机都是非常重要的。一般来说,物理安全应该包括以下方面:保证放置计算机机房的安全,必要时应添加报警系统。同时系统提供备份方案,把备份好的软件放置在另一个安全地点。保证所有的通信设施都不会被非法人员临听。钥匙或信用卡识别设备、用

25、户口令钥匙分配、文件保护,备分域恢复方案等关键文件档资料要保存在安全的位置。,7.5.2 安全管理组群成,2、普通用户安全管理Linux系统管理员的职责之一是保证用户资料安全。其中一部分工作是由用户的管理部门来完成的。但作为系统管理员,有责任发现和报告系统的安全问题。系统管理员可以定期随机抽选一用户,将该用户的安全检查结果发送给他及其管理部门。此外,用户的管理部门应该强化安全意识,制定完善的安全管理规划。,7.5.2 安全管理组群成,3、超级用户安全管理超级用户在安全管理方面需要注意的事项如下:在一般情况下最好不使用root账号,应使用su命令进入普通用户账号。超级用户不要运行其他用户的程序。

26、经常改变root口令 精心地设置口令时效 不要把当前工作目录排在PATH路径表的前面,以避免“特洛伊木马”的入侵。,7.5.2 安全管理组群成,不要未退出系统就离开终端。建义将登录名root改成其他名称。注意检查不寻常的系统使用情况。保持系统文件安全的完整性。将磁盘的备份存放在安全的地方。确保所有登录账号都有用户口令 启动记账系统。,7.5.3 用户口令的管理,1、设置好的用户口令一个好的用户口令至少有6个字符。口令中不要包含个人信息,如生日、名字、门牌号码等。用户口令中最好有一些非字母(即数字、标点等)字符,最好便于记忆。,7.5.3 用户口令的管理,2、用户口令管理策略设置好的用户口令并不

27、意味着用户口令系统的安全,它只能使入侵者不能直截了当地闯入系统内。只有采用正确的用户口令管理策略,才能保证用户口令不会困为人为因素泄密。,7.5.3 用户口令的管理,3、用户口令时效由于用户口令的安全性随着时间的推而变弱,所以,经常改变用户口令有利于系统安全。Liunx提供了设置用户口令的时效机制,系统管理员可以通过修改/etc/shadow文件实现。如下例:,7.5.3 用户口令的管理,root:dJUQfur62wzeA:11289:0:99999:7:从上面的示例可以看到,对于root用户,加密口令为dJUQfur62wzeA,最后一次修改口令的时间距1970年1月1日有11289天,即

28、2000年11月7日。第四个字段为0,表示用户可以随时修改口令。第五个字段表示用户需在99999天后修改口令,也就是说无需修改口令。当我们将这行记录改为:root:dJUQfur62wzeA:11289:0:91:7:10:这表示用户可以随时修改口令,但必须至少在91天内修改一次;如果在84(91-7)天内不修改口令,系统将通知用户修改。如果不修改,则在101(91+10)天后,停用该用户账号。,7.5.3 用户口令的管理,4、安全的用户口令操作多数情况下,用户口令丢失都与用户误操作有关。为保证用户口令安全必须注意以下问题:不要将用户口令写下来。用户在输入口令时,应避免多人使用同一个账号。保证

29、用户一人一个口令,以避免多个使用同一个账号。不要重复使用同一口令。不要在不同系统上使用同一口令。不要通过网络或MODEM来传送口令。,7.5.4 用户账号的管理,Linux的每个用户对系统的安全都负有责任。保证系统有一个安全的/etc/passwd文件是十分必要的,维护该文件时应注意以下问题:尽量避免直接修改/etc/passwd文件。在用户可以容忍的情况下,尽量使用比较复杂的用户账号名。尽量将passwd文件中UID号为0的人数限制在一到两个人内。保证passwd文件中没有口令相同的用户账号。,7.5.4 用户账号的管理,保证passwd文件中每个用户的口令字段不为空。注意系统特殊用户使用的

30、shell字段,保证他们使用专用程序,而非一般用户的shell。除非在必要的情况下,最好不要使用组群口令。最好先为新用户提供rsh(restricted shell),让他们在受限的环境中使用系统。当一个账号长时间不用时,可通过记账机制发现该账号,并将该账号停用。,7.5.5 管理帐号常用的命令,1、显示自身的用户名whoami因为有时可以在Linux系统中更换身份,通常是以一般的用户身份登录,如果需要设置系统的某些内容,再以su命令切换到管理员的身份。直接输入”whosmi”命令可以显示当前登录的用户名,其作用与“id-un”命令相同。rootns1 root#whoamirootrootn

31、sl root#id unroot,7.5.5 管理帐号常用的命令,2、显示当前所有登录用户信息w运行“w”命令可以显示当前所有登录用户的信息,如用户名、登录时间、登录位置、系统启动到目前的时间以及过去1、5、10min内系统的平均负载程度。,7.5.5 管理帐号常用的命令,3、显示当前所有登录用户信息who与“w”命令的功能相似,都是用来显示当前所有登录用户的信息,但“who”命令只能显示用户名、使用的终端、登录时间以及登录地址4种信息。下面是本书提供的范例:NAME LINE TIME COMMENTRoot:0 Apr 3 15:04Root pts/1 Apr 3 15:38(:1.0

32、)Jack pts/0 Apr 3 15:49(ns2),7.5.5 管理帐号常用的命令,4、查找并显示用户信息fingerfinger命令运行用户名的查找,并且在查找后显示指定帐号的相关信息,如登录终端、电话、住址和主目录等。rootnsl root#finger-l aliceLogin:alice Name:(null)Directory:/home/alice Shell:bin/bashLast login Thu Apr 315:49(PST)on pts/0 from ns2No mail.No plan.,7.5.5 管理帐号常用的命令,5、改变finger命令的显示内容chf

33、n该命令用来改变finger命令显示的信息。如果除了用户名外并没有指定任何参数,则出现交互式的画面,询问的问题依次为:设置真实姓名、设置办公室住址、设置办公室电话、设置家中电话。rootns1 root#chfn carolineChanging finger information for caroline.Name:caroOffice:100 Happy st.TaipeiOffice Phone:21583654Home Phone:21542555Finger information changed,7.5.5 管理帐号常用的命令,6、传送信息至其他登录的用户write通过write命令可以发送实时信息到指定的登录用户或终端,输入后按Ctrl+c键表示信息结束,然后系统会将信息传送到指定的用户或终端。,7.6 小结,本章对Linux的用户账号与组群账号的管理进行了简单的介绍,重点放在Linux用户账号与组群账号的创建、修改和删除等管理方面,难点在于实际的操作过程。对初学者来说只有通过反复的练习操作来加深印象,从而提高在Linux操作系统下进行有效管理和使用的熟练性,来提高自己的操作能力。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号