新增使用者是用 script 比直接编辑 /etc/passwd / /etc/shadow 档或使用像 Slackware 的 adduser 程式还要好。
需要更多 useradd 资讯请参照线上操作手册。
usermod
usermod 程式是用在修改使用者资讯。它的参数使用和 useradd 程式类似。
如果你要更新 fred 的 shell,你要作下列步骤:
usermod -s /bin/tcsh fred
现在 fred 的 /etc/passwd 档将变成:
fred:*:505:100:Fred Flintstone:/home/fred:/bin/tcsh
如果要使 fred 的帐号到期日为 09/15/97:
usermod -e 09/15/97 fred
现在 fred 在 /etc/shadow 的栏位变成:
fred:J0C.WDR1amIt6:9559:0:60:0:0:10119:0
需要更多 usermod 资讯请参照线上操作手册。
userdel
userdel 用在删除使用者,使用方法为:
userdel -r username
-r 参数可以将该使用者根目录全部移除。位在期待目录的档案则需手动移除。
如果你只是要简单的锁住帐号而没有要删除它,建议你使用 passwd 指令。
7.2 passwd 指令和 passwd 老化
passwd 指令很明显使用在改变密码,除此之外,可由 root 使用在:
Lock 和 unlock 帐号 (-l and -u)
设定密码合法的最大天数 (-x)
设定密码改变间的最小天数 (-n)
设定密码到期的警告天数 (-w)
设定在帐号未被锁死密码到期後的警告天数 (-i)
允许查询帐号资讯 (-S)
举例说明,如果要锁死 fred 帐号:
passwd -S fred
fred P 03/04/96 0 60 0 0
这表示 fred 的密码是有效的,它在 03/04/96 被修改且任何时间都可被修改, fred 将不会收到警告且帐号将不会因密码到期而关闭。
这表示如果 fred 在密码到期後签入,它将被要求用一个新密码签入。
如果我们决定要警告 fred 在密码过期前 14 天,且让它的帐号在到期後14天警告,我们需要作下列步骤:
passwd -w14 -i14 fred
现在 fred 改变为:
fred P 03/04/96 0 60 14 14
需要更多 passwd 资讯请参照线上操作手册。
7.3 login.defs 档
/etc/login 档是对 login 程式的 configuration file 且 对 Shadow Suite。
/etc/login 包含从预设值密码改变的驱动设定。
/etc/login.defs 档是一个很好的文件档,然而仍有些事情要注意:
It contains flags that can be turned on or off that determine the amount of logging that takes place.
It contains pointers to other configuration files.
It contains defaults assignments for things like password aging.
跟去上述你可以发现这是一个重要档,且你应该确认目前设定及你将对你系统的设定内容。
7.4 群组密码
/etc/groups 档包括允许是用者存取群组之密码。 如果你定义 SHADOWGRP 在 /usr/src/shadow-YYMMDD/config.h 档将开启该功能。
如果你定义该常数且编译它,你需建立一个 /etc/gshadow 档来保存群组密码和群组管理者资讯。
当你建立 /etc/shadow。你使用一个呼叫程式叫做 pwconv,该程式不会建立 /etc/gshadow 档,但是这没关系,只要你自行建立即可。
为了建立起始 /etc/gshadow 档要执行下列步骤:
touch /etc/gshadow
chown root.root /etc/gshadow
chmod 700 /etc/gshadow
每次你建立一个新群组,它们会被加到 /etc/group 和 /etc/gshadow 档。如果你透过新增或移除使用者来修改群组或改变群组密码,/etc/gshadow 档都将被改变。
groups, groupadd, groupmod, 和 groupdel 程式是用来供应 Shadow Suite 部分可以变更群组。
/etc/group 档格式如下:
groupname:!:GID:member,member,...
其中:
groupname
The name of the group
!
The field that normally holds the password, but that is now relocated to the /etc/gshadow file.
GID
The numerical group ID number
member
List of group members
/etc/gshadow 档格式如下:
groupname:password:admin,admin,...:member,member,...
其中:
groupname
The name of the group
password
The encoded group password.
admin
List of group administrators
member
List of group members
gpasswd 指令是用在新增或移除管理者和群组成员。 root 或其他在群组管理者人员可新增或移除群组成员。
群组密码可以透过 passwd 指令改变,需透过 root 或在该群组管理者有权限的帐号方可修改。
Despite the fact that there is not currently a manual page for gpasswd, typing gpasswd without any parameters gives a listing of options. It's fairly easy to grasp how it all works once you understand the file formats and the concepts.
7.5 检查程式一致性
pwck
pwck 程式提供在 /etc/passwd 和 /etc/shadow 档的一致性检查。它将检查每个使用者名称且依照下列步骤确认:
the correct number of fields
unique user name
valid user and group identifier
valid primary group
valid home directory