UNPKG

2.89 kBMarkdownView Raw
1chage
2===
3
4修改帐号和密码的有效期限
5
6## 补充说明
7
8**chage命令** 是用来修改帐号和密码的有效期限。
9
10### 语法
11
12```shell
13chage [选项] 用户名
14```
15
16### 选项
17
18```shell
19-m:密码可更改的最小天数。为零时代表任何时候都可以更改密码。
20-M:密码保持有效的最大天数。
21-w:用户密码到期前,提前收到警告信息的天数。
22-E:帐号到期的日期。过了这天,此帐号将不可用。
23-d:上一次更改的日期。
24-I:停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。
25-l:例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。
26```
27
28### 实例
29
30可以编辑`/etc/login.defs`来设定几个参数,以后设置口令默认就按照参数设定为准:
31
32```shell
33PASS_MAX_DAYS 99999
34PASS_MIN_DAYS 0
35PASS_MIN_LEN 5
36PASS_WARN_AGE 7
37```
38
39当然在`/etc/default/useradd`可以找到如下2个参数进行设置:
40
41```shell
42# useradd defaults file
43GROUP=100
44HOME=/home
45INACTIVE=-1
46EXPIRE=
47SHELL=/bin/bash
48SKEL=/etc/skel
49CREATE_MAIL_SPOOL=yes
50```
51
52通过修改配置文件,能对之后新建用户起作用,而目前系统已经存在的用户,则直接用chage来配置。
53
54我的服务器root帐户密码策略信息如下:
55
56```shell
57chage -l root
58
59最近一次密码修改时间 : 3月 12, 2013
60密码过期时间 :从不
61密码失效时间 :从不
62帐户过期时间 :从不
63两次改变密码之间相距的最小天数 :0
64两次改变密码之间相距的最大天数 :99999
65在密码过期之前警告的天数 :7
66```
67
68我可以通过如下命令修改我的密码过期时间:
69
70```shell
71chage -M 60 root
72chage -l root
73
74最近一次密码修改时间 : 3月 12, 2013
75密码过期时间 : 5月 11, 2013
76密码失效时间 :从不
77帐户过期时间 :从不
78两次改变密码之间相距的最小天数 :0
79两次改变密码之间相距的最大天数 :60
80在密码过期之前警告的天数 :9
81```
82
83然后通过如下命令设置密码失效时间:
84
85```shell
86chage -I 5 root
87chage -l root
88
89最近一次密码修改时间 : 3月 12, 2013
90密码过期时间 : 5月 11, 2013
91密码失效时间 : 5月 16, 2013
92帐户过期时间 :从不
93两次改变密码之间相距的最小天数 :0
94两次改变密码之间相距的最大天数 :60
95在密码过期之前警告的天数 :9
96```
97
98从上述命令可以看到,在密码过期后5天,密码自动失效,这个用户将无法登陆系统了。
99
100