04用户和组的相关配置文件总结

1、用户

个人理解的是,给使用者一个在系统中使用的身份,即用户。

用户分两种:管理员和普通用户。

而每一个用户都有一些属性,每一个属性都是用冒号分割开来。配置文件存储在【/etc/passwd】中。

例如,sarash:x:507:508::/home/sarash:/bin/nologin

他们分别是,用户名,密码,ID号,主组ID号,注释,家目录,默认登录shell

用户名是用来登录的账号,密码位置并没有存储真正的密码在这里,只是一个占位符。如果的确想要看到密码存储结果,可以使用命令:pwunconv。

其中 pwconv, pwunconv, grpconv, grpunconv – convert to and from shadow passwords and groups 就是用户密码隐藏 显示 组密码隐藏显示的命令

 增加用户的常用命令是:

 useradd [options] login

-u UID: [UID_MIN, UID_MAX]定义在/etc/login.defs

-o 配合-u 选项,不检查UID的唯一性

-g GID:指明用户所属基本组,可为组名,也可以GID

-c "COMMENT":用户的注释信息

-d HOME_DIR:以指定的路径(不存在)为家目录

-s SHELL: 指明用户的默认shell程序  在/etc/shells文件中有系统可用shell

-G GROUP1[,GROUP2,…]:为用户指明附加组,组必须事先存在

-N 不创建私用组做主组,使用users组做主组

-r: 创建系统用户CentOS 6: ID<500,CentOS 7: ID<1000

 userdel [options] LOGIN

       -f, –force 删除用户的主目录和邮箱,即使用户登录中,或者邮箱公用

       -r   删除用户家目录及邮箱

【注意】:在新建服务型用户的时候(例如MySQL),由于这些用户不需要登录(/bin/nologin),也不需要家目录,所以定义成系统用户最好。可以防止恶意的登录。

一般来说, 1~99 会保留给系统预设的帐号,另外 100~499 则保留给一些服务来使用。centos7 就加倍。

#cat 【/etc/default/useradd】  用户配置信息

# useradd defaults file –新增用户时的默认信息

GROUP=100 –user组的组ID

HOME=/home –默认家目录路径

INACTIVE=-1 –宽限期?

EXPIRE= –口令有效期?

SHELL=/bin/bash –默认shell

SKEL=/etc/skel –默认配置信息文件

CREATE_MAIL_SPOOL=yes –是否创建邮箱

2、密码

#cat 【/etc/shadow】

root:$6$f3B1B1NC$zybHBGqE/SWMtRVk8iqVz.WP.JC/kmBDajcPc4JFcwsPZS/RvsJqJDTZMGtH7CSs5guC40DqXWegF7zRY/x7M1:17089:0:99999:7:::

该配置文件中以":"分割,分别代表:用户名,密码,上一次修改时间,两次修改密码相隔最短时天数,两次修改密码最长天数,提前多少天提示用户修改密码,口令过期几天后禁用,用户过期日期–从1970年算起,最后是保留字段

对于密码位置的解释:

$6$:这个6 表是加密方式。1:MD5 5:SHA-256 6:SHA-512(常见)更改加密算法 authconfig–passalgo=sha256 –update

$f3B1B1NC$:这就是salt,盐。加密的时候,根据用户的密码,加上这串字符,组成了独一无二的密码显示格式。

$第三串字符$:加密后的字符。用户登录时 ,加密格式+salt+输入密码=密码字符串。 单向,不能逆算。得出的字符串相同才能登录。

1、如果密码为空,则该用户在登录时,无须输入密码即可登录,这在做一些测试的时候可以用到。

2、如果密码为!+密码,表示该用户已经被锁定了。

3、!! 如果是两个叹号,表示该用户还没有设置密码,或者说用户的密码已经过期。

4、*,在服务用户那边有些是星号【,。。。好像是不需要密码,网上暂时没找到解释,节约时间先留下】

对于【/etc/login.defs】 这个文件配置信息如下

MAIL_DIR /var/spool/mail  –邮件目录

PASS_MAX_DAYS 99999  –密码最长使用天数 99999 相当于无限大

PASS_MIN_DAYS 0      –密码最小禁止修改的时间,即在这个时间内禁止密码再次修改

PASS_MIN_LEN 5     –密码最小长度

PASS_WARN_AGE 7  –密码过期前多少天开始给予提醒

UID_MIN  500 –用户新建最小ID号

UID_MAX 60000 –用户新建最大ID号

GID_MIN  500 –用户组新建最小ID号

GID_MAX 60000 –用户组新建最大ID号

CREATE_HOME yes       –默认是否创建家目录

UMASK           077  在家目录新建文件的权限umusk值

USERGROUPS_ENAB yes   –删除用户时 如果用户组没有用户是否删除用户组

ENCRYPT_METHOD SHA512 –加密格式

用法:usermod [选项] 登录(用户名)

选项:

  -c, –comment 注释            GECOS 字段的新值

  -d, –home HOME_DIR           用户的新主目录

  -e, –expiredate EXPIRE_DATE  设定帐户过期的日期为 EXPIRE_DATE

  -f, –inactive INACTIVE       过期 INACTIVE 天数后,设定密码为失效状态

  -g, –gid GROUP               强制使用 GROUP 为新主组

  -G, –groups GROUPS           新的附加组列表 GROUPS

  -a, –append GROUP            将用户追加至上边 -G 中提到的附加组中,

                                并不从其它组中删除此用户

  -l, –login LOGIN             新的登录名称

  -L, –lock                    锁定用户帐号

  -m, –move-home               将家目录内容移至新位置 (仅于 -d 一起使用)

  -o, –non-unique              允许使用重复的(非唯一的) UID

  -p, –password PASSWORD       将加密过的密码 (PASSWORD) 设为新密码

  -R, –root CHROOT_DIR         chroot 到的目录

  -s, –shell SHELL             该用户帐号的新登录 shell

  -u, –uid UID                 用户帐号的新 UID

  -U, –unlock                  解锁用户帐号

  -Z, –selinux-user  SEUSER       用户账户的新 SELinux 用户映射

3、用户组

具有某种共同特征的用户集合起来就是用户组(Group)。用户组(Group)配置文件主要有 /etc/group和/etc/gshadow

cat【/etc/group】

root:x:0:gentoo

users:x:100:

/etc/group 的内容包括用户组(Group)、用户组口令、GID及该用户组所包含的用户(User),每个用户组一条记录;格式如下:

group_name:passwd:GID:user_list   用户组的GID如同UID,系统组在500或者1000以下。

4、用户组密码

对于大型服务器,针对很多用户和组,定制一些关系结构比较复杂的权限模型,设置用户组密码是极有必要的。比如我们不想让一些非用户组成员永久拥有用户组的权限和特性,这时我们可以通过密码验证的方式来让某些用户临时拥有一些用户组特性,这时就要用到用户组密码;

cat【/etc/gshadow】

格式如下:

groupname:password:admin,admin,…:member,member,…

密码位置如果为!或者为空表示无须密码,或者尚未设置密码。

–joker的部落阁

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

赞 (0)
jokerjoker
上一篇 2016-10-24 20:47
下一篇 2016-10-24 22:04

相关推荐

  • 学习笔记–文本处理工具

    Linux下有很多文本处理工具,本文将介绍几款比较常用的文本处理工具,比如对文本查看的工具:cat和less,文本截取工具:head和tail,按列抽取文本工具:cut,按关键字查询文本工具:grep,下面将具体介绍各种工具的使用。 1、文本查看命令cat 用法: cat [OPTION]… [FILE]… cat命令一次性…

    Linux干货 2016-08-07
  • Hello World 集中营

    编程的人应该都知道什么是Hello World。这是一个最简单的程序,其只在屏幕上输出“Hello World”字样,这通常是初学者的在学习编程时的第一个示例。把打印出 “Hello World” 作为第一个范例程序,现在已经成为编程语言学习的传统。“Hello World”起源于Brian Kernighan 和Dennis MacAlistair Rit…

    2016-05-17
  • 计算机的组成及其功能。

    一、计算机的组成及其功能。 计算机,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。 1、运算器(Arithmetical and Logical Unit):计算机中执行各种算术和逻辑运算操作的部件。运算器的基本操作包括加、减、乘、除四则运算,与…

    Linux干货 2016-10-30
  • 马哥教育网络班21期第8周课程练习

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 网桥也叫桥接器,是连接两个局域网的一种存储/转发设备,用来连接不同网段。 集线器称为“Hub”,主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上。 二层交换机工作于OSI模型的第2层(数据链路层),可识别数据包中的MAC地址信…

    Linux干货 2016-09-19
  • linux系统上的特殊权限SUID,SGID,STICKY

    特殊权限:SUID SGID STICKY     linux的安全上下文:     1.进程以用户的身份运行,进程是发起此用户的代理,因此以此用户的身份和权限完成所有的操作。     2.权限匹配模型:     1)判断进程的属主,是否以被访问的文件属主。如果是,则应用属主权限…

    Linux干货 2016-08-05
  • 第二十一周作业

    1、回顾并详细总结MySQL的存储引擎、索引; 常用存储引擎的对比: 特点 MyISAM InnoDB MEMORY MERGE NDB 存储限制 有 64TB 有 没有 有 事务安全 支持 锁机制 表锁 行锁 表锁 表锁 行锁 B树索引 支持 支持 支持 支持 支持 哈希索引 支持 全文索引 支持 集群索引 支持 数据缓存 支持 支持 支持 索引缓存 支持…

    2017-07-19