| CHGPASSWD(8) | System Management Commands | CHGPASSWD(8) |
名称
chgpasswd - 批量更新组密码
大纲
chgpasswd [options]
描述
The chgpasswd command reads a list of group name and password pairs from standard input and uses this information to update a set of existing groups. Each line is of the format:
group_name:password
By default the supplied password must be in clear-text, and is encrypted by chgpasswd.
The default encryption algorithm can be defined for the system with the ENCRYPT_METHOD variable of /etc/login.defs, and can be overwritten with the -e or -c options.
此命令一般用于需要一次创建很多用户的大型系统。
选项
The options which apply to the chgpasswd command are:
-c, --crypt-method
The available methods are SHA256, SHA512, YESCRYPT and NONE if your libc supports these methods.
-e, --encrypted
-h, --help
-R, --root CHROOT_DIR
-s, --sha-rounds
You can only use this option with crypt method: SHA256 SHA512 YESCRYPT
By default, the number of rounds for SHA256 or SHA512 is defined by the SHA_CRYPT_MIN_ROUNDS and SHA_CRYPT_MAX_ROUNDS variables in /etc/login.defs.
A minimal value of 1000 and a maximal value of 999,999,999 will be enforced for SHA256 and SHA512. The default number of rounds is 5000.
By default, the number of rounds for YESCRYPT is defined by the YESCRYPT_COST_FACTOR in /etc/login.defs.
A minimal value of 1 and a maximal value of 11 will be enforced for YESCRYPT. The default number of rounds is 5.
CAVEATS
记住要设置权限或者掩码来阻止其它用户对未加密文件的读取。
您需要确保你吗和加密方法符合系统的密码策略。
配置文件
The following configuration variables in /etc/login.defs change the behavior of this tool:
ENCRYPT_METHOD (string)
It can take one of these values: SHA256, SHA512 (default), YESCRYPT. See crypt(5) for recommendations.
Note: this only affects the generation of group passwords. The generation of user passwords is done by PAM and subject to the PAM configuration. It is recommended to set this variable consistently with the PAM configuration.
History: This variable is used by other programs, which may still default to unsafe algorithms such as DES. To avoid using unsafe algorithms, the variable should always be specified.
MAX_MEMBERS_PER_GROUP (number)
默认值是 0,意味着组中的成员数没有限制。
此功能(分割组)允许限制组文件中的行长度。这对于确保 NIS 组的行比长于 1024 字符。
如果要强制这个限制,可以使用 25。
注意:分割组可能不受所有工具的支持(甚至在 Shadow 工具集中)。您不应该使用这个变量,除非真的需要。
SHA_CRYPT_MIN_ROUNDS (number), SHA_CRYPT_MAX_ROUNDS (number)
With a lot of rounds, it is more difficult to brute force the password. But note also that more CPU resources will be needed to authenticate users.
If not specified, the libc will choose the default number of rounds (5000), which is orders of magnitude too low for modern hardware.
值必须在 1000 - 999,999,999 之间。
If only one of the SHA_CRYPT_MIN_ROUNDS or SHA_CRYPT_MAX_ROUNDS values is set, then this value will be used.
If SHA_CRYPT_MIN_ROUNDS > SHA_CRYPT_MAX_ROUNDS, the highest value will be used.
Note: this only affect the generation of group passwords. The generation of user passwords is done by PAM and subject to the PAM configuration. It is recommended to set this variable consistently with the PAM configuration.
YESCRYPT_COST_FACTOR (number)
With a high cost factor, it is more difficult to brute force the password. But note also that more CPU resources will be needed to authenticate users.
The value must be inside the 1-11 range.
Note: this only affect the generation of group passwords. The generation of user passwords is done by PAM and subject to the PAM configuration. It is recommended to set this variable consistently with the PAM configuration.
文件
/etc/group
/etc/gshadow
/etc/login.defs
参见
| 2026-07-30 | shadow-utils 4.20.0 |