• chage
    • 补充说明
      • 语法
      • 选项
      • 实例

    chage

    修改帐号和密码的有效期限

    补充说明

    chage命令 是用来修改帐号和密码的有效期限。

    语法

    1. chage [选项] 用户名

    选项

    1. -m:密码可更改的最小天数。为零时代表任何时候都可以更改密码。
    2. -M:密码保持有效的最大天数。
    3. -w:用户密码到期前,提前收到警告信息的天数。
    4. -E:帐号到期的日期。过了这天,此帐号将不可用。
    5. -d:上一次更改的日期。
    6. -i:停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。
    7. -l:例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。

    实例

    可以编辑/etc/login.defs来设定几个参数,以后设置口令默认就按照参数设定为准:

    1. PASS_MAX_DAYS 99999
    2. PASS_MIN_DAYS 0
    3. PASS_MIN_LEN 5
    4. PASS_WARN_AGE 7

    当然在/etc/default/useradd可以找到如下2个参数进行设置:

    1. # useradd defaults file
    2. GROUP=100
    3. HOME=/home
    4. INACTIVE=-1
    5. EXPIRE=
    6. SHELL=/bin/bash
    7. SKEL=/etc/skel
    8. CREATE_MAIL_SPOOL=yes

    通过修改配置文件,能对之后新建用户起作用,而目前系统已经存在的用户,则直接用chage来配置。

    我的服务器root帐户密码策略信息如下:

    1. [root@linuxde ~]# chage -l root
    2. 最近一次密码修改时间 3 12, 2013
    3. 密码过期时间 :从不
    4. 密码失效时间 :从不
    5. 帐户过期时间 :从不
    6. 两次改变密码之间相距的最小天数 0
    7. 两次改变密码之间相距的最大天数 99999
    8. 在密码过期之前警告的天数 7

    我可以通过如下命令修改我的密码过期时间:

    1. [root@linuxde ~]# chage -M 60 root
    2. [root@linuxde ~]# chage -l root
    3. 最近一次密码修改时间 3 12, 2013
    4. 密码过期时间 5 11, 2013
    5. 密码失效时间 :从不
    6. 帐户过期时间 :从不
    7. 两次改变密码之间相距的最小天数 0
    8. 两次改变密码之间相距的最大天数 60
    9. 在密码过期之前警告的天数 9

    然后通过如下命令设置密码失效时间:

    1. [root@linuxde ~]# chage -I 5 root
    2. [root@linuxde ~]# chage -l root
    3. 最近一次密码修改时间 3 12, 2013
    4. 密码过期时间 5 11, 2013
    5. 密码失效时间 5 16, 2013
    6. 帐户过期时间 :从不
    7. 两次改变密码之间相距的最小天数 0
    8. 两次改变密码之间相距的最大天数 60
    9. 在密码过期之前警告的天数 9

    从上述命令可以看到,在密码过期后5天,密码自动失效,这个用户将无法登陆系统了。