gpasswd

gpasswd指令用来管理组文件“/etc/group”和“/etc/gshadow”,每个组可以设置管理员、组员、密码。系统管理员可以使用-A选项定义组管理员,使用-M选项定义成员。他们拥有组管理员和成员的所有权利。由具有组名的组管理员调用的gpasswd只提示输入组的新密码。如果设置了密码,则成员仍然可以在没有密码的情况下使用newgrp(1),而非成员必须提供密码。

组密码是一个固有的安全问题,因为允许多个人知道密码。然而,群组是允许不同用户之间合作的有用工具。

警告,此工具仅对“/etc/group”和“/etc/gshadow”文件进行操作。因此,您不能更改任何NIS或LDAP组。这必须在相应的服务器上执行。

此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

 

1、语法

     gpasswd [选项]  group

 

2、选项列表

选项

说明

--help

显示帮助文档

--version

显示命令版本

-a | --add user

向组中添加用户

-d | --delete user

删除成员

-r | --remove-password

删除组密码

-R | --restrict

限制对命名组的访问。只允许组成员使用newgrp加入命名组。

-M |  --members user,...

向组添加多个成员

-A | --administrators user,..

设置组管理员

 

3、配置

下面“/etc/login.defs”中的配置变量更改了该工具的行为:

     ENCRYPT_METHOD(string),这定义了用于加密密码的系统默认加密算法(如果命令行上没有指定算法)。可用的算法有:DES(默认)、MD5、SHA256、SHA512。注意:此参数重写MD5_CRYPT_ENAB变量。

     MAX_MEMBERS_PER_GROUP(number),每个组条目的最大成员数。达到最大值时,在/etc/group中启动一个新的组条目(行)(具有相同的名称、相同的密码和相同的GID)。默认值为0,这意味着组中的成员数没有限制。此功能(拆分组)允许限制组文件中的行长度。这对于确保NIS组的行不大于1024个字符非常有用。如果你需要执行这样的限制,你可以使用25。注意:拆分组可能不支持所有的工具(即使在阴影工具集中)。除非你真的需要这个变量,否则你不应该使用它。

MD5_CRYPT_ENAB(boolean),指示是否必须使用基于MD5的算法加密密码。如果设置为“是”,新密码将使用基于MD5的算法进行加密,该算法与FreeBSD最新版本使用的算法兼容。它支持无限长度的密码和更长的盐字符串。如果您需要将加密密码复制到其他不了解新算法的系统,则设置为“否”。默认为否。该变量由ENCRYPT_METHOD变量或用于配置加密算法的任何命令行选项取代。不推荐这个变量。您应该使用ENCRYPT_METHOD。

     SHA_CRYPT_MIN_ROUNDS(number)、SHA_CRYPT_MAX_ROUNDS(number),当Encrypt_Method设置为SHA 256或SHA 512时,默认情况下这将定义加密算法使用的SHA轮数(当命令行上未指定轮数时)。有很多回合,这是比较困难的暴力强制密码。但是还要注意的是,需要更多的CPU资源来对用户进行身份验证。如果没有指定,libc将选择默认的回合数(5000)。数值必须在1000-999999999范围内。如果只设置了SHA_CRYPT_MIN_ROUNDS或SHA_CRYPT_MAX_ROUNDS中的一个,则将使用此值。如果SHA_CRYPT_MIN_ROUNDS>SHA_CRYPT_MAX_ROUNDS,则将使用最高值。

4、文件

     /etc/group,组账户信息。

     /etc/gshadow,安全组账户信息。

 

5、实例

1)将用户user01 添加到组weijie

[root@localhost david]# gpasswd -a user01 weijie         //向组添加用户

Adding user user01 to group weijie

[root@localhost david]# cat /etc/group                    //查看组信息,已经成功添加

weijie:x:501:user01

2)设置组管理员

[root@localhost david]# gpasswd -A weijie weijie          //设置管理员

[root@localhost david]# cat /etc/gshadow                  //查看组信息,管理员已经设置

 weijie:!:weijie:

Linux基础命令---管理组gpasswd的更多相关文章

  1. Linux基础命令---添加组groupadd、删除组groupdel

    groupadd 指定群组名称来建立新的群组账号,需要时可以从系统中取得新的群组值. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.SUSE.openSUSE.Fedora. ...

  2. Linux基础命令---验证组文件grpck

    grpck grpck指令可以验证组文件“/etc/group”和“/etc/gshadow”的完整性.检查的内容包括:正确的字段数.唯一有效的组名称.有效的组标识符.成员和管理员的有效列表.“/et ...

  3. 【Python之路】第一篇--Linux基础命令

    pwd 命令 查看”当前工作目录“的完整路径 pwd -P # 显示出实际路径,而非使用连接(link)路径:pwd显示的是连接路径 .   表示当前目录 ..  表示上级目录 /  表示根目录 ls ...

  4. Linux基础命令和文件权限

    Linux命令与文件权限 Linux基础命令   reboot  重启   cd         切换目录   cd ..     回到上一级目录   cd ~      回到主目录   cd /  ...

  5. [转帖]linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习)

    linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习) https://www.cnblogs.com/caozy/p/9261224.html 总结的挺好的 ...

  6. 第四节,Linux基础命令

    第四节,Linux基础命令 命令是系统操作员对系统传入的指令,传入指令后回车,系统接收到指令做出相应的行为 1.查看用户位于系统什么位置 [pmd]检查操作用户位于系统的什么位置 命令         ...

  7. linux基础命令一

    linux基础命令一 1.date命令 date命令介绍:显示或者设置系统日期 date命令的语法: 显示日期:date  [options...]  [+FORMAT] FORMAT:为显示日期的格 ...

  8. 常用的linux基础命令

    常用的linux基础命令 1.ls 显示目录属性 -l:(也可以简写成ll),列表显示权限等属性 -a:显示所有文件包括隐藏文件等 -d:只列出目录本身 2.chgrp 改变档案所属群组 eg:chg ...

  9. Linux基础命令回顾

    前言 说到linux基础命令,网上一搜一箩筐,想学也有很多教程,如果你不幸看到此篇文章,想看就认真看完,毕竟你点进来了不是嘛? 我每次写的文章都是为了分享自己的学习成果或重要知识点,希望能帮助更多的人 ...

随机推荐

  1. oracle中索引快速全扫描和索引全扫描的区别

    当进行index full scan的时候 oracle定位到索引的root block,然后到branch block(如果有的话),再定位到第一个leaf block, 然后根据leaf bloc ...

  2. 嵌入式Qt4.8.0支持ttf字库,并显示中文

    引言 最近在做QT项目发现中文没法显示,于是百度QT嵌入式显示中文,基本上提示的都是把ttf字库转换为QPF(QT专门支持二进制的),发现这个qpf本身制作就很麻烦,按照网上的做法实实在在来了一边,发 ...

  3. MATLAB中产生随机数的那些函数

    1.产生从imin~imax的m*n矩阵 randi([imin,imax],m,n); 2.产生1~n的无重复随机整数 randperm(n);

  4. 帝国cms修改栏目后文章列表的url错误怎么解决

    修改了某个栏目的目录地址,原本是/abc/,现在改成了/ab/,重新生成了栏目页面/ab/和文章页面/ab/*.html,但是栏目页的列表文章url还是/abc/*.html(正确的url应该是/ab ...

  5. AsyncStorage和Promise配合使用

    代码: AsyncStorage封装 import {AsyncStorage} from "react-native"; class DeviceStorage { //保存数据 ...

  6. OC UITextField只允许输入两位小数

    //只能输入两位小数 - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range r ...

  7. 运维自动化ansible基础

    云计算三种服务架构 IAAS: 不提供OS  只购买硬件(网络,存储,计算) PAAS: 提供硬件和OS和开发和运行环境  只需要开发应用软件 SAAS: 提供 硬件 os 软件   相当于直接购买软 ...

  8. Java元注解—— @Retention @Target @Document @Inherited

    java中元注解有四个: @Retention @Target @Document @Inherited: @Retention:注解的保留位置 @Retention(RetentionPolicy. ...

  9. Pro*C介绍

    内嵌SQL 概要 Pro*C语法 SQL 预处理指令 语句标号 宿主变量 基础 指针 结构 数组 指示器变量 数据类型同等化 动态SQL 事务 错误处理 SQLCA WHENEVER语句 Demo程序 ...

  10. 【LeetCode每天一题】Remove Nth Node From End of List(移除链表倒数第N个节点)

    Given a linked list, remove the n-th node from the end of list and return its head. Example:        ...