《Linux系统基础与应用实践》课件第5章 用户及用户组管理 .pptx

上传人(卖家):momomo 文档编号:8119776 上传时间:2024-12-03 格式:PPTX 页数:37 大小:500.89KB
下载 相关 举报
《Linux系统基础与应用实践》课件第5章 用户及用户组管理 .pptx_第1页
第1页 / 共37页
《Linux系统基础与应用实践》课件第5章 用户及用户组管理 .pptx_第2页
第2页 / 共37页
《Linux系统基础与应用实践》课件第5章 用户及用户组管理 .pptx_第3页
第3页 / 共37页
《Linux系统基础与应用实践》课件第5章 用户及用户组管理 .pptx_第4页
第4页 / 共37页
《Linux系统基础与应用实践》课件第5章 用户及用户组管理 .pptx_第5页
第5页 / 共37页
点击查看更多>>
资源描述

1、软件包管理05榆林职业技术学院 杨浩与应用实践1学习目标1.熟悉用户信息文件/etc/passwd、影子文件/etc/shadow、组信息文件etcgroup和组密码文件/etc/gshadow等用户配置文件的基本内容。2.熟练掌握用户管理命令的基本使用方法。3.熟练掌握useradd和passwd命令对系统其它文件影响。4.熟悉用户配置文件/etc/default/useradd和/etc/login.defs中参数的含义。5.熟练掌握用户组管理命令的基本用法。本章学习目标25.1 用户配置文件3 源码包就是通常所说的源代码包,如脚本安装包就是源码包,由于源码包开放源代码,所以任何用户都可以

2、根据需要修改、优化源代码,也可以自由选择所需功能。源码包安装过程很容易报错,一旦报错,就需要通过分析源代码的方法来解决,由于新手一般不具备必要的Linux知识基础和编程技巧,所以很难解决。不过,源码包的卸载非常方便(把安装目录删了即可,不会留下任何垃圾文件),虽然如此,现在也很少使用源码包了。二进制包是Linux默认包,是源码包经过编译后的可执行程序包,即通常所说的RPM(Red-Hat Package Manager,red-hat软件包管理器)包。二进制包执行速度很快,但是不能对程序进行修改。对二进制包管理的非常简单,包的安装、升级、查询以及卸载非常方便,只需执行几条命令即可。小知识:Wi

3、ndow软件都不能在Linux系统上运行,所以基于Window系统的病毒对Linux系统没有任何威胁,所以所有的基于Window的应用,要在Linux上实现,必须专门开发。/etc/passwd文件记录了系统中所有用户的信息,通过编辑该文件可以对用户进行管理。执行如下命令,查看文件内容:rootlocalhost/#cat/etc/passwd n 执行结果如下:1 root:x:0:0:root:/root:/bin/bash 2 bin:x:1:1:bin:/bin:/sbin/nologin Linux中所有用户的信息都会记录到相应的配置文件中,系统通过对文件内容的查看、配置来实现对用户

4、或用户组的管理,所以熟悉用户配置文件的结构及主要字段的含义非常有助于对用户和用户组的管理。45.1.1 用户信息文件/etc/passwd 3 daemon:x:2:2:daemon:/sbin:/sbin/nologin 4 adm:x:3:4:adm:/var/adm:/sbin/nologin 17 saslauth:x:499:76:Saslauthd user:/var/empty/saslauth:/sbin/nologin 18 postfix:x:89:89:/var/spool/postfix:/sbin/nologin 19 sshd:x:74:74:Privilege-s

5、eparated SSH:/var/empty/sshd:/sbin/nologin 20 yh:x:500:500:/home/yh:/bin/bash 以上是当前Liunx系统中/etc/passwd文件的全部内容,每一行记录一个用户条目,可以看出当前Linux共有20个条目,即20用户。每个条目由7个字段(属性)来描述,字段之间用“:”分割。5.1 用户配置文件 下面以第一行为例来介绍各个字段的含义:第1个字段:用户名称,第一行记录的是root管理员用户信息。第2个字段:密码标志。一般都表示为“x”,表示该用户已经设置了密码,“x”不能省略,因为省略后,系统会认为该用户没有密码,这样用户

6、就只能本地登录,而不能远程登录。这里不会显示用户密码,而是保存在/etc/shadow文件中。早期的Linux版本中,用户密码就放在第二个字段中,但不是明文,而是密文。无论如何,由于每个用户都对/ect/passwd文件有读权限,所以每个用户都能看到所有用户的密文密码,感兴趣的用户就有可能对其他用户的密文密码实施暴力破解,为了安全起见,就把用户加密后的密文存放在了/etc/shadow目录下,该文件只有root用户具有操作权限,其他用户没有任何权限。55.1.1 用户信息文件/etc/passwd 第3个字段:UID(用户ID)。0:表示超级用户,1499:表示系统用户(伪用户),500655

7、35:表示普通用户。第一行的UID值是“0”,说明root是超级用户。例5.1 把普通用户yh更改为超级用户。首先,执行如下命令,进入文件/etc/passwd的编辑模式:rootlocalhost/#vi/etc/passwd 然后,把用户yh的UID修改为“0”,然后保存退出即可。第4个字段:GID(用户初始组ID)。创建新用户时,系统默认将其加入与用户名相同的用户组,这个组就是该用户的初始组,一个用户只能有一个初始组,为了方便管理,一般不建议修改用户的初始组。5.1 用户配置文件小知识:判断某个用户是不是超级用户,是通过UID来判断的,也就是说,如果某个用户的UID是“0”,那他就是超级

8、用户,而并不是说root就一定是超级用户。对特定用户而言,除了初始组外,还有一个组叫附加组,一个用户只能有一个初始组,但可以同时加入到多个附加组并拥有相应组的权限。第5个字段:用户说明(系统管理员为了方便管理,而为用户做的备注信息,可以省略)第6个字段:家目录(用户的初始登录位置,系统管理员在添加新用户时就自动在/home目录下添加一个和用户名相同的目录,这个目录就是用户的家目录。如用户root 的家目录是/root/,在第二十行中,普通用户yh的家目录是/home/yh/)。第7个字段:登录之后的Shell。Shell就是Linux的命令解释器。超级用户和普通用户的Shell通常都是/bin

9、/bash,系统用户的Shell通常是/sbin/nologin。65.1.1 用户信息文件/etc/passwd 注意,登录shell为/sbin/nologin的用户是不能登录系统的,所以一般不要修改用户的登录Shell,一旦修改错误,就会导致该用户不能登录。例5.2 通过修改文件/etc/passwd,禁止用户yh登录。首先执行如下命令,进入/etc/passwd文件的编辑模式:rootlocalhost/#vi/etc/passwd 将用户yh的Shell改为/sbin/nologin后保存退出即可。这时执行下面的操作,切换到yh用户的时候就会报错。rootlocalhost/#su

10、yh 提示错误信息为:This account is currently not available.以上是对/etc/passwd文件结构及其字段的简要介绍,可使用rootlocalhost#man 5 passwd命令查阅更多帮助信息。5.1 用户配置文件 所有用户的密码以密文的方式记录在/etc/shadow文件中,该文件的权限是“000”,除了超级用户外,任何用户不可读、不可写、不可执行。下面介绍/etc/shadow文件结构和字段含义。执行如下命令,查看文件内容:rootlocalhost/#cat/etc/shadow n 执行结果如下:1 root:$6$NRPBdS3442kt

11、btLp$cW/yDkgwcVpccxJ.VRd2CV4 3sybdsfCGzP5ZP6VHxx2r lBEWscLOMbblytA5Joe4PM6zwq0S6 vR8GRuX02F1v1:17722:0:99999:7:2 bin:*:15980:0:99999:7:3 daemon:*:15980:0:99999:7:75.1.2 影子文件/etc/shadow 20 yh:$6$J0Nsmwog$Pqm3LG6H7XggKvn8eZmeMa3l/OVe3Ffjq7qKROdj4VDMw9IAX2 E4jwb HBB25I5eHFzY67Eym 572AJiZFAZLkl0:17724:0

12、:99999:7:21 yh1:!:17724:0:99999:7:以上是当前Linux系统中/etc/shadow文件的全部内容,该文件与/etc/passwd文件相对应,共有21个条目,每一行记录一条用户信息,每条用户信息由九个字段(属性)来描述,字段之间用“:”分割:第一个字段:用户名,与/etc/passwd文件的第一个字段含义相同。第二个字段:经过加密的用户密码(使用SHA512散列加密算法),伪用户的密码字段显示的是“*”或“!”,表示不能登录系统,这也是前述伪用户不能登录系统的原因。5.1 用户配置文件小知识:如果要阻止某个用户登录系统,可以将其密码字段的值修改为“*”或“!”或

13、以“*”或“!”开头的字符串。注意:把密码串修改为“*”或“!”或以“*”或“!”开头的字符串后,虽然不能再终端登录,但可以用su命令将当前root用户切换为该用户。第三个字段:密码的最后一次修改日期(Linux系统用时间戳来表示)。注意,该值为1970年1月1日以后的第n天,表示在该天以后的第n天修改的密码。第四个字段:两次密码修改的最小时间间隔,默认值为0,表示在任何时候都可以修改,若为非零数,则必须在规定天数之后才能修改密码。例如:若该值为5,则用户在前次修改密码的5天之后才能修改密码。85.1.2 影子文件/etc/shadow 第五个字段:两次密码修改的最大时间间隔,过期不修改就会失

14、效,默认值是99999天。如果要强制用户经常修改密码,可以将密码的有效期设置为较小的值,这样密码即将过期时,系统会提示用户修改密码。第六个字段:密码到期前的警告天数,与第五个字段配合使用。例如:假如某用户的第五个字段值为90,第六个字段值为10,则系统会在第80天开始提醒用户修改密码,而且每次登录都会提醒。第七个字段:密码过期后的宽限天数,与第五个字段配合使用。如果该值为空或0,表示密码到期后,立即停止用户登录;如果该值为-1,不管第五个字段的值是多少,表示密码永不过期;如果为其它数字,表示密码到期后还可以沿用的天数。5.1 用户配置文件 第八个字段:账号失效时间(用基于1970年1月1日的时

15、间戳表示),该时间戳无视前面的任何字段的值,只要失效时间到,密码立即失效。95.1.2 影子文件/etc/shadow 第九个字段:保留,用作其它用处。以上就是对/etc/shadow文件内容的有关介绍,该文件保存了系统中全部用户的密码,在系统运维中要谨慎对待。例5.3 假设某用户的密码修改时间为17700,可用如下命令将其转换为对应的日期:rootlocalhost home#date-d 1970-01-01 17700 days 执行结果为:2018年 06月 18日 星期一 00:00:00 CST 可知,时间戳17700对应的日期是2018年 06月 18日 星期一。例5.4 要把y

16、h用户的密码有效期修改为2019-01-01,可用如下命令将其转换为对应的时间戳:rootlocalhost home#echo$($(date-date=2019-01-01+%s)/86400+1)执行结果为:17897 可知,2019-01-01对应的时间戳为17897。5.1 用户配置文件小知识:日期和时间转换方法:u 把时间转换为日期:如1970年1月1日后的18000天是哪一天:可以通过执行如下命令获得对于的日期:date d“1970-01-01 18000 days”u 把日期转换为时间戳:如把2018年4月13日转换为时间戳是多少(1天=86400秒),可以用如下命令获得:e

17、cho$($(date-date=”2018-03-13”+%s)/86400+1)注意:“+%s”前必须有空格。第八个字段:账号失效时间(用基于1970年1月1日的时间戳表示),该时间戳无视前面的任何字段的值,只要失效时间到,密码立即失效。105.1.2 影子文件/etc/shadow 第九个字段:保留,用作其它用处。以上就是对/etc/shadow文件内容的有关介绍,该文件保存了系统中全部用户的密码,在系统运维中要谨慎对待。例5.3 假设某用户的密码修改时间为17700,可用如下命令将其转换为对应的日期:rootlocalhost home#date-d 1970-01-01 17700

18、days 执行结果为:2018年 06月 18日 星期一 00:00:00 CST 可知,时间戳17700对应的日期是2018年 06月 18日 星期一。例5.4 要把yh用户的密码有效期修改为2019-01-01,可用如下命令将其转换为对应的时间戳:rootlocalhost home#echo$($(date-date=2019-01-01+%s)/86400+1)执行结果为:17897 可知,2019-01-01对应的时间戳为17897。5.1 用户配置文件小知识:日期和时间转换方法:u 把时间转换为日期:如1970年1月1日后的18000天是哪一天:可以通过执行如下命令获得对于的日期:

19、date d“1970-01-01 18000 days”u 把日期转换为时间戳:如把2018年4月13日转换为时间戳是多少(1天=86400秒),可以用如下命令获得:echo$($(date-date=”2018-03-13”+%s)/86400+1)注意:“+%s”前必须有空格。1组信息文件/etc/group 类似于/etc/passwd文件记录了当前Linux系统的所有用户信息,/etc/group文件记录了当前Linux系统的所有用户组的信息,系统每新增一个用户,同时就创建一个与该用户同名的用户组,作为该用户的初始组,并把新增的用户组记录到该文件中。下面介绍/etc/group文件结

20、构及其字段(属性)含义:执行如下命令,查看/etc/group文件内容:rootlocalhost/#cat-n/etc/group115.1.3 组信息文件/etc/group和组密码文件/etc/gshadow执行结果如下:1 root:x:0:2 bin:x:1:bin,daemon 3 daemon:x:2:bin,daemon 4 sys:x:3:bin,adm 5 adm:x:4:adm,daemon 6 tty:x:5:7 disk:x:6:8 lp:x:7:daemon 9 mem:x:8:35 yh:x:500:36 yh1:x:501:5.1 用户配置文件 可知,当前Lin

21、ux系统共有36个用户组,每个组由四个字段来描述,各字段的含义如下:第一个字段:组名。类似于/etc/passwd中的用户名。第二个字段:组密码标志,类似用户密码标志方法,但一般都不设置组密码。第三个字段:组号(GID),类似用户ID(UID)的分类方法,如GID为0,表示root用户组,等等。第四个字段:组中附加用户。如在第三个用户组中有两个附件用户,分别是bin,daemon。125.1.3 组信息文件/etc/group和组密码文件/etc/gshadow 2组密码文件/etc/gshadow 该文件是用来记录系统中各用户组的密码的,但是一般情况下不会给用户组设置密码,所以该文件在实际中

22、用处很少,这里不再多讲。该文件的每个条目记录一个用户组密码,由四个字段组成,各字段含义如下所述。第一个字段:组名 第二个字段:组密码 第三个字段:组管理员用户名 第四个字段:组中附加用户5.1 用户配置文件 用户家目录就是用户登录的初始位置,用户在自己的家目录下默认具有读、写和执行所有权限。普通用户和超级用户的家目录不同,普通用户的家目录是/home/用户名/,该目录在添加该用户的时候自动建立,该用户就是该目录的所有者,该目录的所属组就是与用户同名的用户组,即该用户的初始组,用户对该目录的操作权限是700。例5.5 可用如下命令将当前用户切换为yh普通用户,然后查看该用户家目录的相关信息:ro

23、otlocalhost#su yhyhlocalhost root$cd/homeyhlocalhost home$ls-ld yh135.2.1 用户家目录 执行结果如下:drwx-.2 yh yh 4096 7月 13 07:11 yh 可以看出,用户yh对家目录yh具有rwx权限,用户组和其他用户对该目录没有任何权限,该目录所属的用户组是yh,即用户yh的初始组。超级用户的家目录是/root/,该目录的所有者和所属用户组分别是与其同名的root用户和root用户组。该目录的权限是550,但是,该权限对root没有任何作用,不管文件权限设置为何值,对超级用户root没有任何作用,超级用户永

24、远具有所有权限。5.2 用户其它文件 例5.6 可用如下命令以长格式方式显示超级用户root家目录的相关信息:rootlocalhost#cd.rootlocalhost/#ls-ld/root 执行结果如下:dr-xr-x-.2 root root 4096 7月 12 10:19/root 可知,超级用户家目录/root的权限是550,所有者是root用户,所属组是root用户组。145.2.1 用户家目录 例5.7 把普通用户yh更改为为超级用户后,其家目录有什么变化?分析:由前所述,只要把普通用户yh的用户ID改为0,即可使其变成超级用户(通过 vim/etc/passwd命令修改UI

25、D)。完成上述修改后,我们执行如下命令观察发生的变化:rootlocalhost home#su yhrootlocalhost home#ls-ld yh#虽然切换成了yh用户,但显示的是root用户 显示结果为:drwx-.2 500 yh 4096 7月 13 07:11 yh#第三个字段不在显示所有者的用户名,而是显示的用户yh的UID5.2 用户其它文件rootlocalhost home#su rootrootlocalhost home#su yh#yh用户和root用户之间相互切换时,不再要求输入相应密码rootlocalhost home#who#虽然切换成了yh用户,但查看

26、当前登录用户时,显示的都是root用户登录 执行结果:root tty1 2018-07-10 10:06root pts/0 2018-07-10 10:32(192.168.250.2)155.2.1 用户家目录 再以yh用户身份远程登录系统:rootlocalhost#pwd#同样发现命令提示符是超级用户命令提示符“#”,而不是普通用户命令提示符“$”执行结果:/home/yh#yh用户的家目录依然是/home/yh 可见,将普通用户yh的UID修改为超级用户的UID后,只是将其的权限修改为了超级用户root的权限,其家目录没变,仍然是/home/yh。5.2 用户其它文件 每个用户都有

27、一个邮箱,在创建用户时自动创建,该邮箱只是用户的客户端,要转发邮件,需要借助邮件服务器。用户邮箱通常为:/var/spool/mail/用户名(注意:这是邮箱文件,而不是目录)。例5.8 当前系统中有哪些用户邮箱?这些邮箱文件的所属组是什么?执行如下命令显示邮箱列表:rootlocalhost/#ls-l/var/spool/mail/165.2.2 用户的邮箱执行结果为:-rw-.1 root mail 601 7月 13 23:44 root-rw-rw-.1 yh mail 595 7月 13 23:30 yh-rw-rw-.1 yh1 mail 0 7月 12 22:42 yh1 可见

28、,当前系统中有root、yh和yh1三个用户邮箱,它们都属于普通文件类型,它们的所属组都是mail,其中root用户和yh用户邮箱中有邮件(邮箱大小不为0),用mail命令可以查看自己邮箱中的邮件。5.2 用户其它文件 保存用户模板文档的目录为/etc/skel,其中保存了.bash_logout,.bash_profile,.bashrc等文档模板。当创建新用户的时候自动从/ect/skel目录中拷贝该目录下所有的文档模板到用户的家目录。175.2.3 用户模板目录 例5.9 可用如下命令查看yh用户家目录下的所有文档模板:rootlocalhost skel#ls-la/home/yh/.

29、*执行结果为:-rw-.1 yh yh 3 7月 13 07:11/home/yh/.bash_history-rw-r-r-.1 yh yh 18 7月 18 2013/home/yh/.bash_logout-rw-r-r-.1 yh yh 176 7月 18 2013/home/yh/.bash_profile-rw-r-r-.1 yh yh 124 7月 18 2013/home/yh/.bashrc 可见,用户yh家目录下有四个文件模板。5.2 用户其它文件小知识:如果用户有特殊需求,需要在创建用户的时候自动添加特定的文档模板,可以先在/etc/skel目录下创建相应的文件模板,那么

30、在新增用户时就会自动将该文件模板复制到新用户的家目录下。useradd命令的完整目录是/usr/sbin/,只有超级用户才有权限执行该命令,其功能是新增一个用户。命令格式:rootlocalhost#useradd 选项 用户名185.3.1 创建新用户命令useradd和密码设置命令passwd 选项说明:-u 手工指定用户的UID,默认是50065535之间的数,-d 手工指定用户的家目录,默认家目录是/home/用户名/-c 手工指定用户的说明信息-g 手工指定用户的初始组,默认初始组是创建该用户时,自动创建的与用户名同名的用户组。-G 手工指定用户的附加组-s 手工指定用户的登录she

31、ll,默认是/bin/bash 在实际创建新用户的过程中,我们一般不使用这些选项,而是使用系统缺省设置。5.3 用户管理命令1创建新用户命令useradd passwd命令的完整路径是/usr/bin,任何用户都可以使用该命令,普通用户只能修改自己的密码,而超级用户可以修改所有用户的密码,设置密码要符合密码规则,但root用户具有最高权限,可以不受密码规则制约,但普通用设置密码必须遵守密码规则,否则不能成功设置密码。新增用户后必须要为其设置密码,否则该用户不能登录系统。命令格式:rootlocalhost#passwd 选项 用户名195.3.1 创建新用户命令useradd和密码设置命令pa

32、sswd 常用选项说明:无选项 设置用户密码。-d 删除用户密码,只有超级用户才能使用。-S 查询用户密码的密码状态。只有超级用户才能使用。-l 暂时锁定用户。只有超级用户才能使用。-u 解锁用户。只有超级用户才能使用。-stdin 可以接收管道输出作为用户密码,一般用来批量修改用户密码。5.3 用户管理命令2设置用户密码passwd 例5.10 可用如下命令创建新用户yhao并为其设置密码:rootlocalhost home#useradd yhaorootlocalhost home#passwd yhao 接下来系统会提示用户为yhao输入新密码并重新输入以确认,如果密码过于简单,不遵

33、守密码规则,会向用户提示密码过于简单等消息,但由于是root用户执行修改密码操作,所以可以强制修改。205.3.1 创建新用户命令useradd和密码设置命令passwd 例5.11 下列命令演示了将当前登录用户切换到yhao后的密码修改过程:rootlocalhost home#su yhao#切换到yhao用户yhaolocalhost home$passwd yhao passwd:只有根用户才能指定用户名称。#系统提示:错误命令格式yhaolocalhost home$passwd 接下来是交互式设置密码的过程:最后,由于用户没有严格遵守密码规则,多次重复超过服务器设置的最多重试次数,

34、所以密码设置失败。所以普通用户设置密码要严格遵守密码规则。5.3 用户管理命令2设置用户密码passwd小知识:普通用户修改密码和root修改密码格式不同,只要执行“rootlocalhost#passwd”(注意:passwd后不跟任何参数)命令,然后按提示分别输入旧密码、新密码、重新输入密码即可。例5.12 可用如下命令显示用户yhao的密码信息:yhaolocalhost home$su root#切换到root用户,只有root用户才能执行该命令rootlocalhost home#passwd-S yhao 执行结果如下:yhao PS 2018-07-14 0 99999 7-1(

35、密码已设置,使用 SHA512 加密。)215.3.1 创建新用户命令useradd和密码设置命令passwd 本例中,显示结果由7个字段来描述,并且最后括号中做了进一步的说明。第一个字段用来指定用户名,第二个字段用来显示密码状态(“PS”表示已设置密码,“LK”表示密码锁定,“NP”表示无密码),第三个字段显示上次修改密码的日期,第四个字段显示两次密码修改的最小时间间隔,第五个字段显示密码有效期,第六个字段表示密码到期前的警告天数,第七个字段表示密码失效时间。5.3 用户管理命令2设置用户密码passwd 例5.13 可用如下命令锁定用户yhao:rootlocalhost home#pas

36、swd-l yhao#锁定用户 执行结果如下:锁定用户 yhao 的密码。passwd:操作成功 rootlocalhost home#passwd-S yhao#显示密码状态执行结果如下:yhao LK 2018-07-14 0 99999 7-1(密码已被锁定。)225.3.1 创建新用户命令useradd和密码设置命令passwd 其中,第二个字段值为“LK”,说明密码已被锁定。执行如下命令,即可查看密码密文:rootlocalhost home#grep yhao/etc/shadow 执行结果为:yhao:!$6$oj6m82Sc$PmyUXnJ69pJT1QudCFOgllNv/8

37、JCuK3UfitYr8d2fFdwHaJBW/nEvKAe9wQMdMBqYPpS1zn7zIW37wki5yb9O/:17726:0:99999:7:原来锁定yhao用户,实质上就是在shadow文件中,将用户名为yhao的密文密码前添加了“!”,所以也可以用vim编辑器来修改/etc/shadow文件的相应用户的密文密码,来实现用户锁定或解锁。5.3 用户管理命令2设置用户密码passwd 例5.14可用如下命令解锁用户yhao:rootlocalhost home#passwd-u yhao#解锁yhao 执行结果如下:解锁用户 yhao 的密码。passwd:操作成功rootloca

38、lhost home#passwd-S yhao#显示密码状态235.3.1 创建新用户命令useradd和密码设置命令passwd 执行结果如下:yhao PS 2018-07-14 0 99999 7-1(密码已设置,使用 SHA512 加密。)执行如下命令:rootlocalhost home#grep yhao/etc/shadow 执行结果如下:yhao:$6$oj6m82Sc$PmyUXnJ69pJT1QudCFOgllNv/8JCuK3UfitYr8d2fFdwHaJBW/nEvKAe9wQMdMBqYPpS1zn7zIW37wki5yb9O/:17726:0:99999:7:可

39、以看出密文前的“!”消失了。5.3 用户管理命令2设置用户密码passwd 例5.15 可用如下命令删除用户yhao的密码:rootlocalhost home#passwd-d yhao#删除密码 执行结果如下:清除用户的密码 yhao。passwd:操作成功rootlocalhost home#passwd-S yhao#显示密码状态245.3.1 创建新用户命令useradd和密码设置命令passwd 执行结果如下:yhao NP 2018-07-14 0 99999 7-1(密码为空。)第二个字段值为“NP”,表示密码为空。执行如下命令:rootlocalhost home#grep

40、yhao/etc/shadow 显示结果如下:yhao:17726:0:99999:7:可以看出影子文件/etc/shadow的密文位为空,说明密码被清空了。5.3 用户管理命令2设置用户密码passwd 例5.16 某信息服务提供商要定期对服务器的root密码进行修改,但是服务器数量庞大,手工修改需要浪费很多时间和精力,请设计一条命令,将这条命令作为每台服务器的定时任务,以自动完成服务器密码定时修改任务。255.3.1 创建新用户命令useradd和密码设置命令passwd 分析:passwd的命令选项“-stdin”(注意:是两个“-”),可以接收管道输出,所以利用管道命令可以设计这样一条

41、命令:“echo 新密码|passwd root-stdin”然后把该命令写入shell程序文件,让服务器定期执行该程序即可。该命令也可以交互执行。例如:rootlocalhost home#echo 123456|passwd-stdin root 执行结果为:更改用户 root 的密码。passwd:所有的身份验证令牌已经成功更新。这样就把root的密码修改为“123456”了。5.3 用户管理命令2设置用户密码passwd 在创建新用户的同时,系统会自动执行以下操作:(1)在/etc/passwd文件中新增一个条目记录新增的用户信息(修改用户密码也会影响该文件);(2)在/etc/sha

42、dow文件中新增一个条目记录新增用户的密码信息(修改用户密码也会影响该文件);(3)同时创建与用户同名的用户组,作为该用户的初始组,并在/etc/group文件中新增一个条目来记录该组的信息;265.3.1 创建新用户命令useradd和密码设置命令passwd(4)在/etc/gshadow文件中新增一个条目,记录新建组(初始组)的密码信息;(5)自动创建用户家目录/home/用户名;(6)将/etc/skel目录下的模板文档自动复制到用户家目录;(7)自动建立与用户同名的用户邮箱/var/spool/mail/用户名(如果启用);系统在执行上述7个操作时,需要一些默认设置作为参数值,这些默

43、认值记录在/etc/default/useradd文件和/etc/login.edfs文件中。5.3 用户管理命令2用户配置文件/etc/default/useradd和/etc/login.edfs 可用vim命令编辑/etc/default/useradd,下面查看该文件的内容:rootlocalhost skel#cat/etc/default/useradd执行结果如下:GROUP=100HOME=/homeINACTIVE=-1EXPIRE=SHELL=/bin/bashSKEL=/etc/skelCREATE_MAIL_SPOOL=yes275.3.1 创建新用户命令useradd

44、和密码设置命令passwd5.3 用户管理命令2用户配置文件/etc/default/useradd和/etc/login.edfs表5.1/etc/default/useradd文件各参数默认值及含义参数参数默认值默认值含义含义GROUP100用户默认组,GID为100的组是users用户组,由系统自动生成,只有这个组存在时才能执行改名操作。如果把users组删除,在执行useradd命令时就会发出类似“users:x:100:”不存在的错误提示。如果把该值改为其他用户组的UID,也是可以的,但必须保证该用户组是存在的。HOME/home普通用户的家目录位置,新建用户时,由此获得用户的默认家

45、目录INACTIVE-1密码过期宽限天数(与影子文件/etc/shadow中的第7个字段相对应),“-1”表示密码永不过期EXPIRE 密码失效时间(与影子文件/etc/shadow中的第8个字段相对应),缺省值为不启用该设置SHELL/bin/bash默认shell(与文件/etc/passwd中的第7个字段相对应)SKEL/etc/skel用户模板文件存放目录,新建用户时,从这里复制模板文件到用户家目录CREATE_MAKL_SPOOLyes是否在创建用户的同时,为用户创建邮箱。可以用vim命令编辑/etc/login.edfs文件,下面查看该文件的内容:rootlocalhost hom

46、e#grep#/etc/login.defs 执行结果如下:(正则表达式“#”,过滤掉了注释行)MAIL_DIR /var/spool/mailPASS_MAX_DAYS 99999PASS_MIN_DAYS 0PASS_MIN_LEN 5PASS_WARN_AGE 7UID_MIN 500285.3.1 创建新用户命令useradd和密码设置命令passwd5.3 用户管理命令2用户配置文件/etc/default/useradd和/etc/login.edfsUID_MAX 60000GID_MIN 500GID_MAX 60000CREATE_HOME yesUMASK 077USERG

47、ROUPS_ENAB yesENCRYPT_METHOD SHA512295.3.1 创建新用户命令useradd和密码设置命令passwd5.3 用户管理命令2用户配置文件/etc/default/useradd和/etc/login.edfs 可见,可以通过修改/etc/default/useradd和/etc/login.defs两个用户配置文件,可以影响useradd和passwd两个命令的执行结果,进而影响到/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow等四个文件的内容。表5.2/etc/login.defs文件各参数默认值及含义参数默

48、认值说明MAIL_DIR/var/spool/mail创建新用户的同时为其创建的邮箱的位置PASS_MAX_DAYS99999密码有效期(与影子文件/etc/shadow中的第5个字段相对应)PASS_MIN_DAYS0密码修改间隔(与影子文件/etc/shadow中的第4个字段相对应)PASS_MIN_len5密码最小5位(注意现在按PAM 规则执行8位密码)PASS_WARN_AGE7密码到期警告(与影子文件/etc/shadow中的第6个字段相对应)UID_MIN500普通用户最小ID,新建用户时使用UID_MAX60000普通用户最大ID,新建用户时使用GID_MIN500普通用户组最

49、小IDGID_MAX60000普通用户组最大IDGREATE_HOMEYES是否创建用户家目录UMASK077默认用户权限掩码USERGROUPS_ENAByes是否使用MD5加密ENCRYPT_METHODSHA512加密算法为SHA512,为用户设置密码时使用,按该算法加密后放入/etc/shadow文件中305.3.2 删除用户命令userdel5.3 用户管理命令 usermod的完整路径是/usr/sbin,只有root用户才有权限执行,其功能是修改用户账号、登录目录所属群组、账号有效时间等属性。命令格式:rootlocalhost#usermod 选项 用户名 命令userdel的

50、完整路径/usr/sbin,只有root用户有权限执行,其功能是删除指定用户。命令格式:rootlocalhost#userdel 选项 用户名 选项说明:-f 强制删除用户,即使用户当前已登录系统。-r 删除用户的同时删除与用户相关的所有文件(家目录及其中的文件)例5.17 可用如下命令删除用户aa及其家目录(包括家目录中的所有文件),而不管用户aa是否登录系统:rootlocalhost home#userdel-fr aa5.3.3 修改用户信息命令usermod和修改用户密码状态命令chage1修改用户信息命令usermod315.3 用户管理命令-l 修改用户帐号名称,对应于/etc

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

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(《Linux系统基础与应用实践》课件第5章 用户及用户组管理 .pptx)为本站会员(momomo)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|