浅谈用户和组相关配置文件

用户、组和权限的管理

Linux如何像Windows系统那样,可以不输入密码直接进入图形界面?那么如何如何自动登录图形界面呢?这就要用到编辑配置文件:

nano  /etc/gdm/custom.cof  ,在里面加上  

automaticLoginEnable=true

automaticLogin=root

退出之后重启系统会自动登录图形界面

上述的操作不可能自发的进行下去,还需要靠用户来进行操作。用户也就是user:拥有tokenidentity等权限令牌。Linux用户身份的识别,即为用户(username)的id号,用UID来表示;系统的管理员默认为:rootID=0;但是ID=0就一定是管理员,而root并不一定是管理员,系统给予管理员的定义是ID=0(也就是一个看身份证来判别,而不是看脸识别)。至于普通用户的UID1-65535

    在默认情况下系统用户UID1-499CentOS6);1-999CentOS7);这些ID是给系统中的一些进程,程序来使用的 ,对守护进程获取资源进行权限分配。

而普通的登录用户UID500+CentOS6),1000+CentOS7

group:组也有自己的id,即所谓的groupname/GID,组中的用户可以继承组的权限(加入组织,对里面的统一授权,获取执行或者其他权限)

    注意: Windows不允许组和用户重名,linux可以

每个用户在创建的时候必然有一个组,这个组就是主组,并且只有一个(和windows一样),而在主组中又有给组分配的id

  管理员组GIDroot0

    系统组GID1-4991-999  普通组:500+1000+

Linux组的类别

   用户的主组:有且仅有一个,若组名同用户名,且只包含一个用户则是私有组

   用户的附加组(辅助组):一个用户可以属于0或多个辅助组(身兼数职)

   命令:getent  group  查看用户组的信息 getent passwd USER只看用户信息

      getent gshadow 查看用户组的密码信息

Linux 用户和组的主要配置文件:

  /etc/passwd(文本文件):用户及其属性信息(名称、UID主组ID

 cat /etc/passwd

浅谈用户和组相关配置文件

上面的root:x:0:0:,mage,110,119:/root:/bin/bash,分别对应下面的:

    用户帐号名称:密码:UID:主组GID:描述信息(用chfn可以修改描述信息,finger可以看描述信息):家目录:shell类型(chsh –s /bin/csh 用户名,可以该用户的shellcsh  ,也可改为系统账号nologin

注意:若把其中用户ID改为0root改成其他,那这个用户就成为管理员,但是没有管理员的话系统就无法启动了(没有用户ID0

插入查帮助的命令:比如说查passwd ,用man就要知道查帮助的章节,而用whatis  passwd可以查passwd的章节,在用man就可以查到passwd的相关信息。

  /etc/group:组及其属性信息

cat /etc/group

浅谈用户和组相关配置文件

上面的bin:x:1:bin,daemon,gentoo,分别对应下面的:

用户的主组名:主组的密码:主组的GID号:附加组的所有成员(可以用      groupmems  -l  -g  GROUPNAME,来查看组的其他成员;groups USERNAME 查询用户属于什么附加组;id USERNAME也可以查看用户的ID信息)

   /etc/shadow:用户密码及其相关属性

cat /etc/shadow

浅谈用户和组相关配置文件

上面的natasha:$6$pCnil/79r2d/$wm8vNDPbg2.FKXepRjvgKvEy7JKJJeCsY9uHxuC/QvPa6p4Bj9f/rhkEUGsmlltsKpQnMlVANt8sE2SU25auN.:17096:0:99999:7:::,分别对应下面的:

      用户的帐号名称:用户密码:最近更改密码的日期:密码不可被更改的天数:密码的使用期限:密码需要更改期限前的警告天数:密码过期后的宽限天数:帐号失效日期:保留用以更新的。可以把下图作为参考

浅谈用户和组相关配置文件

注意:后面关于密码的天数都是相对于最近更改密码的日期,密码是乱码,$6表示sha512加密算法  $1表示md5加密算法已经被破解了 $5表示sha256的加密算法,因为加盐了,所以即便是相同的密码也显示密码项的乱码不同。

其中的!!表示禁止登录(可以用usermod –U USERNAME来解锁,去掉!,默认为!!,如果只有一个!,可能用户误打误撞的解锁了;usermod –L USERNAME来锁定用户)

  /etc/gshadow:组密码及其相关属性

cat /etc/gshadow

浅谈用户和组相关配置文件

上面的admins:!::natasha,harry分别对应下面的:

    用户组的名称:用户组密码:用户主组GID:辅助组

命令:pwunconv:密码不转换,早期可以看到用户密码的加密乱码状态

        Pwconv:密码转换,以x的方式显现

cat /etc/default/useradd 

浅谈用户和组相关配置文件

可以显现默认家目录;默认口令有效期;过期后口令的宽限期;默认的shell类型;默认创建邮箱(邮箱是一个文本文件);默认skel,创建用户时默认家目录下创建的文件是从/etc/skel 下拷贝过来的)

注意:有复制/etc/skel 下的所有配置文件的话不能用 cp  -r /etc/skel/.* .  (因为.*包含..这样的结果就会是把/etc/下的所有文件都复制过来了,所以要用cp  -r /etc/skel/.[^.]* .复制。

用户和组的管理命令

   useradd adduser的指向文件(链接文件) 【选项】 用户帐号名

-u:指定UID 可以为0 ,也可拥有root权限,登录拿着管理员的令牌(ID=0),只要没注销就有root权限 

-s :后接shell的实际文件,如/bin/bash ;/bin/csh ,改变shell类型 

-c:描述信息,用双引号,可用finger USERNAME查看描述信息。

-g group1:把新增用户加入group1组,这个group1也就成了用户的主组

-d dir1 E :把新增用户的家目录指定在dir1(原不存在的)中;

-G GROUP1,GROUP2…:用户加入到自己的辅助组GROUP1,GROUP2…

给服务用一般用useradd –s /sbin/nologin (默认不登陆) –r(给服务的系统帐号)服务名

   usermod 【选项】 用户帐号名

-u #:更改用户UID#

-g group1:把新增用户加入group1组,这个group1也就成了用户的主组

-G GROUP1:更改辅助组为GROUP1  -aG GROUP2:增加一个辅助组  -G “”:清空家目录

-d dir1 –m:把用户家目录指定为dir1(原不存在),并把家目录里的数据一同复制到dir1

-l NEWNAME OLDNAME:仅更改为新名字;

-L:锁定用户,在/etc/shadow密码栏增加! -U:解锁用户,把/etc/shadow密码栏!拿掉;

   userdel不删除用户的家目录和邮箱

-r:删除用户的家目录和邮箱

组帐号维护命令

   groupadd

-g GID:指定用户的组ID   -r:创建系统组<500

   groupmod

-n GROUPNAME:改新名字  -g GID:指定新的GID

   groupdel  删除组

简单应用:由于系统更新需要把用户帐号迁移到一个新的主机,如何批量创建帐号?

如从67 :只要是/etc/passwd的文件格式定义,就只需使用newuser user.txt来创建,但是创建的user.txt 中用户的密码是随机生成的,需要自己修改;批量修改口令nano  p.txt 编辑对应 |(管道)chpasswd  这样批量改密码,这样也就自己创建了家目录,但是没有/etc/skel拷贝过来的配置文件,需要自己配置。

   su切换账户的方式:

    su USERNAME:非登录式交换,即不会读取目标用户的配置文件,不改变当前工作目录;  su – USERNAME:登录式交换,会读取用户的配置文件,切换至家目录,完全切换。

  passwd修改自己的密码

-l:锁定用户  -u解锁用户  -e强制用户下次登录修改密码;

  newgrp GROUP1临时切换主组GROUP1,但是创建的文件的主组是GROUP1,即使是登出后,登出后恢复主组。如果用户本不属于此组,则需要密码(口令为空直接不能进去)

  gpasswd

-a User GROUP:将User添加到指定组中

-d User GROUP:将User从指定组中删除

-A User1User2…设置有管理权限的用户列表

其它命令

  chage 【选项】帐号名; 可以更改/etc/shadow的最长时间,最短时间,警告时间的选项

   -l:列出帐号的详细密码参数

   -d:最近一次更改密码的时间 ,格式 YYYY-MM-DD  

-m:密码的最短保留天数

   -M:密码的最长使用天数

  -W:密码过期前的警告天数

  -I(大ai):密码的失效日期

  -E:账户失效日期 ,格式 YYYY-MM-DD

  vigr =vi  /etc/group,修改组的相关属性

  vipw=vi  /etc/passwd,修改用户的相关属性

  pwck:检查用户的相关属性是否有问题

  grpck:检查组的相关属性是否有问题

原创文章,作者:lyx,如若转载,请注明出处:http://www.178linux.com/53859

(0)
lyxlyx
上一篇 2016-10-23 20:17
下一篇 2016-10-23 21:35

相关推荐

  • Linux发展及简单命令

    一 计算机的组成及其功能 冯·诺依曼提出的计算机体系结构:计算机由控制器、运算器、存储器、输入设备、输出设备五部分组成。 二 Linux的发行版 Linux发行版主要有三个分支:Debian、Slackware、Redhat。 (1)Debian:(以社区的方式运作) Ubuntu:基于Debian开发的开源Linux操作系统,主要针对桌面和服务器; Lin…

    2018-03-02
  • 第十一周作业

    第十一周作业 1、详细描述一次加密通讯的过程,结合图示最佳 第一阶段:ClientHello: 支持的协议版本,比如tls 1.2; 客户端生成一个随机数,稍后用户生成“会话密钥” 支持的加密算法,比如AES、3DES、RSA; 支持的压缩算法; 第二阶段:ServerHello 确认使用的加密通信协议版本,比如tls 1.2; 服务器端生成一个随机数,稍后…

    2017-10-29
  • N22网络班第一周作业

    1、 描述计算机的组成及其功能。 运算器、控制器、存储器、输入设备、输出设备 运算器、控制器 :cpu 运算和逻辑计算 存储器:缓存和保存数据 输入设备、输出设备:用户和计算机交互设备和界面 2、 按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。 Slackware系列: suse   opensuse debian系列: ubun…

    Linux干货 2016-08-15
  • 基于Keepalived构建高可用集群配置实例(HA Cluster)

    什么是集群 简单的讲集群(cluster)就是一组计算机,它们作为一个整体向用户提供一组网络资源。这些单个的计算机系统就是集群的节点(node)。一个理想的集群是,用户从来不会意识到集群系统底层的节点,在他/她们看来,集群是一个系统,而非多个计算机系统。并且集群系统的管理员可以随意增加和删改集群系统的节点。 关于更详细的高可用集群我们在后面再做详解…

    Linux干货 2016-11-03
  • 文件管理相关

     rename:对文件重命名     rename [options] expression replacement file        示例:          # rename -v cut.exe cut.exe3 cut.exe…

    Linux干货 2017-02-25
  • Raspberry pi设置自动拨号,搭建无线路由环境

    Raspberry pi设置自动拨号,搭建无线路由环境 前言  raspberry pi(树莓派), 是一款针对电脑业余爱好者、教师、小学生以及小型企业等用户的迷你电脑,由于可以烧录Linux操作系统,因此可以衍生出各种各样的使用途径,诸如控制版,爬虫机器,个人vps,门禁系统…..本文主要介绍如何在raspberry pi上面完成pppoe拨号上…

    2017-03-28

评论列表(1条)

  • N24_Jerry
    N24_Jerry 2016-10-25 09:42

    师哥写的不错,师弟佩服得五体投地