
通过编辑/etc/login.defs,你可以指定几个参数,来设置口令实效的默认设定:
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_WARN_AGE 7
当设置口令时效的天数为99999时,实际上相当于关闭了口令时效。一个更明智的设定一般是60天——每2个月强制更改一次密码。
PASS_MIN_DAYS参数则设定了在本次密码修改后,下次允许更改密码之前所需的最少天数。PASS_WARN_AGE的设定则指明了在口令失效前多少天开始通知用户更改密码(一般在用户刚刚登陆系统时就会收到警告通知)。
你也会编辑/etc/default/useradd文件,寻找INACTIVE和EXPIRE两个关键词:
INACTIVE=14EXPIRE=这会指明在口令失效后多久时间内,如果口令没有进行更改,则将账户更改为失效状态。在本例中,这个时间是14天。而EXPIRE的设置则用于为所有新用户设定一个密码失效的明确时间(具体格式为“年份-月份-日期”)。
显然,上述这些设定更改之后,只能影响到新建立的用户。要想修改目前已存在的用户具体设置,需要使用chage工具。
# chage -M 60 joe
这条命令将设置用户joe的PASS_MAX_DAYS为60,并修改对应的shadow文件。
你可以使用chage -l的选项,列出当前的账户时效情况,而使用-m选项是设置PASS_MIN_DAYS, 用-W则是设置PASS_WARN_AGE,等等。chage工具可以让你修改特定账户的所有密码时效状态。
注意,chage仅仅适用于本地系统的账户,如果你在使用一个类似LDAP这样的认证系统时,该工具会失效。如果你在使用LDAP作为认证,而你又打算使用chage,那么,哪怕仅仅是试图列出用户密码的时效信息,你也会发现chage根本不起作用。
制定一项策略,定义多长时间一个密码必须进行更改,然后强制执行该策略,是非常不错的一个做法。在解雇了某个雇员后,口令时效策略会保证该雇员不可能在被解雇3个月后发现他的口令依然可用。即使系统管理员忽略了删除他的帐号,该帐号也会因密码时效策略而被自动锁定。当然源码天空
,这一点并不能成为不及时删除该雇员帐号的理由,但是这个策略的确提供了一层额外的安全防护,尤其是在过去常常忽视及时清理帐号的情况下。
valid_lft forever正确使用期限为永久perfered_lft forever 优先使用期限为永久qdisc 数据包排队规则 为noqueuestate up 网络接口开启group default 接口组默认Linux 维持多个人使用同一个用户登录系统, Windows 在修改组策略的情况下,也可以多个使用同一个用户登录
远程连接Linux的方式:SSH协议
远程连接Windows的方式:RDP协议
安卓手机(Linux系统):root 刷机,使用root用户登录系统
Usage:id [选项] [用户名]
# id ,查看当前登录的用户信息
-u:查看用户的uid
-g:查看用户的gid
-G:查看用户的属组
[root@localhost ~]# id
uid=0(root) gid=0(root) 组=0(root)
[root@localhost ~]# id qiandao
uid=1001(qiandao) gid=1001(qiandao) 组=1001(qiandao)
[root@localhost ~]# id -g cls
1001
[root@localhost ~]# id -u cls
666
[root@localhost ~]# id -G cls
1001
[root@localhost ~]# id
uid=0(root) 用户id
gid=0(root) 用户组的id
组=0(root)
在系统中,不认识root,qiandao,zls
0:超级用户
uid=1001(qiandao)
gid=1001(qiandao)
groups=1001(qiandao)
[root@localhost ~]# ll /etc/passwd
-rw-r--r-- 1 root root 916 3⽉ 30 10:26 /etc/passwd
[root@localhost ~]# cat /etc/passwd
用户名 密码占位符 uid gid 注释信息 用户家目录 用户登录shell
root: x: 0: 0: root: /root: /bin/bash
cls: x: 666: 1001: : /home/cls: /bin/bash
wutenglan:x:777:1001:武藤兰老师是个好老师: /home/wutenglan:/bin/bash
[root@localhost ~]# ll /etc/shadow
---------- 1 root root 1088 3⽉ 30 10:50 /etc/shadow
[root@localhost ~]# cat /etc/shadow
qiandao :!! :18351 :0:99999:7:::
第一列:用户名
第二列:密码,!! 和 * 表示没有密码
第三列:上一次修改用户密码的时间(从1970年开始)/天
第四列:密码最少使用的天数(0 是 无限制)
第五列:密码过期天数 99999天
第六列:在密码过期的前7天,提示需要修改密码了,你的密码还有7天要过期了
第七列:密码过期后N天,强制提示修改密码
第⼋列:账户的失效时间,从1970年开始计算
第九列:保留
root:$6$iM1LuZaUuwyZrIg.$2X2Upu4KHmQoD1hzKHCzsmJqxPri9PlVDm5MYw/XdQsYgRpJaL
Iy1xWw0aDXLPePZNAcNRmfrYJrJgb6dmbu/.::0:99999:7:::
增
useradd
adduser
Usage:useradd [选项] [用户名]
默认情况下,在创建⽤户的时候,会创建一个和用户同名的组,并且把该用户加入该组
[root@localhost ~]# useradd zls
-u:(uid)指定uid
-g:(gid)指定gid,也可以指定组名
-G:(Group)指定附加组,如果加入多个附加组则用 逗号隔开
-M:不创建家目录
-s:(shell)指定登录的shell
-c:(comment)添加注释
-d:(directory)指定用户的家目录
-r:帮我们创建一个uid范围是201-999的系统用户,不创建家目录
userdel
Usage:userdel [选项] [用户名]
默认情况下,在删除用户的同时会把同名的用户组也删除,但是如果组内有其他用户,则不会删除组,
只删除用户
-r:删除用户的同时,删除用户的家目录,和用户的其他 邮件目录... (删除净)
usermod
Usage:usermod [选项] [用户名]
-u:修改uid
-g:修改gid
-G:修改附加组
-a:配合-G,在修改附加组的时候,起到追加效果(append)
-m:修改(迁移)家目录,必须配合 -d
-d:指定修改后的家目录
-s:修改登录的shell
-c:修改注释
-l:修改登录的用户名
-L:锁定用户(封号)
-U:解锁用户(解封)
id
whoami
1.什么是用户?
能够正常登录系统的,可以管理系统还有可以管理系统中的进程或者程序
02.Linux与windows系统的用户有什么区别?
linux 支持多用户同时登录
windows 默认不支持多用户同时登录
03.使用什么命令可以查看用户是否存在?
[root@oldboy ~]# id oldboy
[root@oldboy ~]# who
[root@oldboy ~]# whoami
root
04.跟用户相关的配置文件都有哪些?分别存放的是什么?
用户存放的信息文件 /etc/passwd
用户存放的密码文件 /etc/shadow
用户组信息文件 /etc/group
05./etc/passwd文件以':' 为分割符, 分为7个字段,请说明一下每个字段的具体含义?
字段名称 注释说明
1.用户名称 //用户的账号名称
2.密码占位符 //存放账户的口令,暂用x表示,密码保存在/etc/shadow
3.用户的UID //用户标识号
4.用户基本组GID //组标识号
5.用户注释 //用户详细信息
6.用户家目录 //root家目录是/root普通用户家目录存在/home/username(可自定义)
7.用户登录Shell //用户登录Linux使用的shell #cat /etc/shells
06./etc/shadow文件以':' 为分割符, 分为9个字段,请说明一下每个字段的具体含义?
字段名称 注释说明
1.用户登陆名 //用户的账号名称
2.加密后的密码 //用户密码,这是加密过的口令(未设密码时为!!)
3.最近一次密码更改时间 //从1970年到最近一次更改密码时间之间过了多少天
4.密码最少使用几天 //密码最少使用几天才可以更改密码(0表示无限制)
5.密码最长使用几天 //密码使用多少天需要修改密码(默认99999永不过期)
6.密码到期前警告期限 //密码过期前多少天提醒用户更改密码(默认过期提前7天警告)
7.密码到期后保持活动的天数 //在此期限内, 用户依然可以登陆系统并更改密码, 指定天数过后, 账户被锁定
8.账户到期时间 //从1970年起,账户在这个日期前可使用,到期后失效。
9.标志 //保留
07.什么是用户的UID?
用户的标识符 它和用户一一对应关系
User Identification 的缩写
08.不同的用户对应UID号范围是多少?
0 超级用户
1-200 系统用户
201-999 系统用户 (不需要登录)
1000+ 普通用户
09.新建用户user1、user2,用户user2不允许登陆到系统中。
[root@oldboy ~]# useradd user1
[root@oldboy ~]# useradd user2 -s /sbin/nologin
10.创建普通用户oldboy,其ID号为789
[root@oldboy ~]# useradd -u 789 oldboy
[root@oldboy ~]# id oldboy
uid=789(oldboy) gid=1003(oldboy) groups=1003(oldboy)
11.创建虚拟用户test,其ID号为666
[root@oldboy ~]# useradd -u 666 -s /sbin/nologin test
12.修改oldboy用户的ID号,修改为777
[root@oldboy ~]# usermod -u 777 oldboy
[root@oldboy ~]# id oldboy
uid=777(oldboy) gid=1003(oldboy) groups=1003(oldboy)
13.修改用户test的命令解释器,使其可以登录到系统。
[root@oldboy ~]# usermod -s /bin/sh test
[root@oldboy ~]# su - test
Last login: Tue Mar 31 15:09:39 CST 2020 on pts/3
[test@oldboy ~]# whoami
test
14.删除用户user1.不删除其家目录。
[root@oldboy ~]# userdel user1
[root@oldboy ~]# ll /home/
total 0
drwx------ 3 oldboy oldboy 78 Mar 31 15:06 oldboy
drwx------ 3 test test 99 Mar 31 15:16 test
drwx------ 3 1001 1001 78 Mar 31 15:04 user1
drwx------ 3 user2 user2 78 Mar 31 15:05 user2
drwx------ 3 www www 78 Jan 1 2021 www
15.删除用户user2,不保留其家目录。
[root@oldboy ~]# userdel -r user2
16.给oldboy用户创建一个密码为123,并尝试登录(两种方法实现)
[root@oldboy ~]# passwd oldboy
[root@oldboy ~]# echo "123" |passwd --stdin oldboy
17批量创建10个用户,前缀是你的姓,后缀为数字序列,比如qian1等。
大佬的方法
# sed 后项引用
# | xargs
# awk
[root@oldboy ~]# cat aa.sh
#!/bin/bash
read -p "请输入你的用户名 " ming
read -p "请输入这个用户名创建的次数 " shu
for i in `seq $shu`
do
useradd $ming$i
done
小弟的方法
for
[root@oldboy ~]# for i in `seq 10`do useradd qian$idone
18.默认情况下管理员创建了一个用户,就会在()目录下创建一个用户主目录
/home
19.如何检查系统中存在oldboy用户,并且显示用户id信息
[root@oldboy ~]# id oldboy
uid=777(oldboy) gid=1003(oldboy) groups=1003(oldboy)
20.创建gid为666,名字为www的用户组
[root@oldboy ~]# groupadd -g 666 www
21.创建uid为666,gid为666,名字为www的用户
[root@oldboy ~]# useradd -u 666 -g 666 www
[root@oldboy ~]# useradd -u 666 -g 666 www
useradd: group '666' does not exist
22.创建uid为888,注释信息为"虚拟用户",不创建家目录,不能登录系统,名字为oldboyedu的用户
[root@oldboy ~]# useradd -u 888 -c "虚拟用户" -M -s /sbin/nologin oldboyedu
23.假设公司研发部的用户yanfa和dev属于组yf,财务部的用户caiwu和money属于组cw,根据要求创建用户及组。
[root@oldboy ~]# groupadd yf
[root@oldboy ~]# groupadd cw
[root@oldboy ~]# useradd yanfa -g yf
[root@oldboy ~]# useradd dev -g yf
[root@oldboy ~]# useradd caiwu -g cw
[root@oldboy ~]# useradd money -g cw
[root@oldboy ~]# id yanfa
uid=1021(yanfa) gid=1024(yf) groups=1024(yf)
[root@oldboy ~]# id caiwu
uid=1023(caiwu) gid=1025(cw) groups=1025(cw)
24.报如下错误是什么原因,并怎么解决
(1)
[root@oldboy ~]# id qzg
id: qzg: no such user
没有这个用户
(2)
[root@oldboy ~]# useradd aaa -s /sbin/nologin
useradd: group aaa exists - if you want to add this user to that group, use -g.
aaa用户组已经存在
(3)
[root@oldboy ~]# su - qzg1
This account is currently not available.
这个用户无法登录系统
25.oldboy8用户的用户名修改成oldboy888
[root@oldboy ~]# usermod -l oldboy888 oldboy8
26.创建zls用户,指定UID5001,基本组students 附加组sa,dba 注释信息:one newB user, 登陆的shell:/bin/bash
曾导博客上的题
27.linux系统存放所有用户密码信息的文件是?
/etc/shadow
28.存放用户账户信息的配置文件是?
[root@oldboy ~]# ll /etc/default/useradd
-rw-r--r--. 1 root root 119 Nov 5 2016 /etc/default/useradd
[root@oldboy ~]# ll /etc/login.defs
-rw-r--r--. 1 root root 2028 Nov 5 2016 /etc/login.defs
/etc/passwd
29.建自己姓名全拼用户,UID5000,基本组students,附加组sa,注释信息:2020 new student,登陆shell:/bin/bash
[root@oldboy ~]# groupadd students
[root@oldboy ~]# groupadd sa
[root@oldboy ~]# useradd -u 5000 -g students -G sa -c "2020 new student" -s /bin/bash qianzhigang
[root@oldboy ~]# cat /etc/passwd|tail -1
qianzhigang:x:5000:1027:2020 new student:/home/qianzhigang:/bin/bash
[root@oldboy ~]# id qianzhigang
uid=5000(qianzhigang) gid=1027(students) groups=1027(students),1028(sa)
30.建用户useroldboy,附加组bin和root,默认shell为/bin/bash,注释信息"user1_info"
[root@oldboy ~]# useradd -G bin,root -c "user1_info" -s /bin/bash useroldboy
[root@oldboy ~]# id useroldboy
uid=5001(useroldboy) gid=5001(useroldboy) groups=5001(useroldboy),0(root),1(bin)
31.新建一个用户jack,指定uid为330
[root@oldboy ~]# useradd -u 330 jack
(1)修改jack的uid为666,用户名改为jacky
[root@oldboy ~]# usermod -u 666 jack
[root@oldboy ~]# id jack
uid=666(jack) gid=5002(jack) groups=5002(jack)
[root@oldboy ~]# usermod -l jacky jack
[root@oldboy ~]# id jacky
uid=666(jacky) gid=5002(jack) groups=5002(jack)
(2)把jacky的密码设置为123
passwd jacky
[root@oldboy ~]# echo "123"| passwd --stdin jacky
(3)切换控制台,用jacky帐户登录系统
[root@oldboy ~]# su - jacky
[jacky@oldboy ~]#
(4)换回控制台,用命令将jacky锁定,验证jacky能否再次登录系统,解锁后再次尝试能否登录系统
[root@oldboy ~]# usermod -L jacky
[root@oldboy ~]# usermod -U jacky
32.迁移jacky用户的家目录到/tmp/jacky
[root@oldboy ~]# usermod -md /tmp/jacky jacky
33.批量创建10个用户,用户名为oldboy1 oldboy2 oldboy3 .... oldboy10
[root@oldboy ~]# for i in `seq 10`do useradd oldboy$idone
[root@oldboy ~]# echo kkk{1..10}|xargs -n1|sed -r 's#(.*)#useradd \1#g'|bash
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)