centos系统之账号和组管理

8 篇文章 0 订阅
5 篇文章 0 订阅

 用户管理目标:

1、用户账号的作用

 

2、用户增、删、改、查

 

3、用户账号的相关数据文件

 

4、用户组的创建、用户的分组

 

用户账号的作用:

1、标识用户的身份,让每个用户有私有的文件夹(家目录),未授权时,每个人只能访问自己的文件。

 

2、每个用户远程管理服务器时,所做的操作,root管理员可查到。

 

Linux系统中的用户分为3类,即普通用户、窗机管理员用户、系统用户(程序用户)。

 

 

一、用户账户的相关数据文件:

1、/etc/passwd

保存用户名称、宿主目录、登录shell等信息,每一行对应一个用户 的账号记录。

 

用户信息的记录格式:

root:x:0:0:root:/root:/bin/bash

格式说明:以“:”作为分隔符,分隔成多个部分。

1)、用户名

2)、密码:x表示此用户需要用密码登录,如果想免密码登录,用vi修改此文件,将x删除即可

3)、用户的uid号

4)、用户的gid号

5)、用户的备注信息,如果在图形化界面时,是界面的显示名称

6)、用户的家目录(宿主目录)

7)、用户登录的shell环境

 

注:

uid用来区分不同用户的数字,表示该用户在本服务器中独一无二

gid用于区分不同用户组的数字,表示该用户组在本服务器中独一无二

 

uid和gid的联系:

在Linux下每个用户都至少属于一个组,也可以同时属于多个组。

 

 

2、/etc/shadow

保存用户的密码信息,只有root用户能读取。

 

用户的密码信息的记录格式:

root:$6$sNuBDGdoaIg9XXqq$j8THbca1kORqH85JL4o4qV5Rbbnw8TPZGsubkH9iR8cQZOBJVPN7AqnrZPX.Vk81y5IvOw.hZifvQThQvVX7h1::0:99999:7:::

 

格式说明:以“:”作为分隔符,分隔成多个部分。

1)、用户名

2)、加密后的密码

3)、最后密码修改的时间

4)、允许修改密码最小间隔时间

5)、允许修改密码最大间隔时间

6)、密码过期警告时间

7)、密码的宽限时间

8)、密码的失效时间,99999代表永不过期

9)、保留,暂时没有具体功能

 

二、用户账号的增、删、改,以及密码设置。

1、增(add):useradd

格式:useradd    [选项]   用户名

常用选项:

-u:指定UID号

-d:指定宿主目录,缺省(默认)为/home/用户名

-e:指定账号失效时间

-g:指定所属的基本组(后面跟组名或GID)

-G:指定所属的附加组(后面跟组名或GID)

 -M:不为用户建立并初始化宿主目录

-s:指定用户的登录shell(默认为/bin/bash,一般不用改,在建立非登录用户的时候可以指定为/sbin/nologin)

 

注: 注:这些选项都能分开用,不冲突的可以在建立用户的时候连着用。

 

例子:

添加用户stu01,指定UID为520,宿主目录为/opt/stu04,指定基本组为users(注:系统中本身就存在users这个组GID为100),附加组为root:

useradd -u 520 -d /opt/stu04 -g users  -G root stu01

 

 

2、删除(del):userdel

格式:userdel    -r  用户名

添加-r选项,宿主目录/用户邮件也一并删除。

 

3、改(modify):usermod

主要是对已存在的用户的属性进行更改,可以增加用户成员的所属附加组。

格式:usermod    [选项](选项可以有多个)  用户名

常用的选项:

-l :更改用户账号的登录名称

-L :锁定用户账户(注:用usermod –L锁定一个账户的时候可以用passwd–u直接解锁,但是用passwd –l锁定的账户,用usermod–U解锁的时间,需要解锁两次,因为,passwd –l锁定的账户密码前面有两个!)

-U :解锁用户账户

-u、-d、-e、-g、-G、-s :与useradd相同

 

4、密码设置:passwd  

为用户添加密码

格式:passwd   [选项]  用户名

常用选项:

-d :清空用户的密码,使之无需密码即可登录

-l :锁定用户账号

-S :查看用户账号的状态(是否被锁定)

-u :解锁用户账号

- - stdin:标准输入(比如管道)取密码

注:删除密码用passwd –d 而不能用echo “” | passwd - -stdin 用户名

 

5、针对用户的密码进行设定——chage

格式:chage   [选项]    用户名

常用选项:

-l :列出密码有效信息

-d:设置最近一次修改密码的时间(后面跟的是时间)

-E:设置账号什么时候过期(后面跟的是时间)

-m:设置密码最小使用天数 (后面跟的是天数)

-M:设置密码最大使用天数(后面跟的是天数)

-I:设置密码过期后,再过几天不改密码,到期将失效(后面跟的是天数)

-W:设置过期前几天警告改密码(后面跟的是天数)

 

三、用户组

用户组分为基本组(私有组)和附加组(公共组)

  

1、用户组的相关数据文件——/etc/group

 

组信息的记录格式:

bin:x:1:

 

格式:  组名:组密码:组gid号:组成员

 

2、用户组的相关密码信息文件——cat /etc/gshadow

 

3、组的增(add)——groupadd

格式:groupadd   [选项]   组名

 

常用选项:

-g :指定gid号

 

4、组的删(del)——groupdel

格式:groupdel   [选项]  组名

 

5、组密码设置——gpasswd

 可以实现给组设置密码、添加和删除成员、设置组管理员

格式:gpasswd   [选项]   组名

 

常用的选项:

-a:向某个组里添加一个用户

例子:gpasswd  -a  lq  test    #在test组中添加lq用户。

 

-A:给某个组设置管理员

例子:gpasswd   -A  lq,li   test   #给test设置2个管理员

 

-d:从某个组删除用户  

例子:gpasswd   -d   lq   test   #从test组中删除lq用户

 

-M:给某个组重新设置成员名单,会替换原名单

例子:gpasswd  -M  lq,li,zhang    test   # 给root组重新设置成员名单lq、li、zhang,会替换原名单

 

四、查询用户账号和用户组

1、id

查看该账户的用户名及用户所属组等信息

格式:id     用户名

 

2、groups

查看用户所属组

格式:  groups 用户名

注:“:”左边是基本组,右边是附加组。

 

3、finger

查看用户的详细信息

格式:finger    用户名

注:默认没有安装finger工具

可以从上图看到root的详细信息。

 

4、w(who)  

查询已登录主机的用户信息。

 

 

 

 

五、创建用户的文件默认参数。

1、用户和组的策略配置文件——/etc/login.defs

文件内容详解:

MAIL_DIR /var/spool/mail   用户邮件的主目录

 

PASS_MAX_DAYS 99999   密码的最大修改间隔时间

 

PASS_MIN_DAYS 0        密码的最小修改间隔时间

 

PASS_MIN_LEN 5       密码的最小长度

 

PASS_WARN_AGE 7    密码过期的警告时间

 

UID_MIN                  1000       普通用户uid的最小值

 

UID_MAX                 60000      普通用户uid的最大值

 

SYS_UID_MIN               201       系统用户uid的最小值(用useradd  -r 创建的是系统用户)

 

SYS_UID_MAX               999      系统用户uid的最大值

 

注:Linux用户账号分为管理员(root)、普通用户(1000~60000)、系统用户(201~999)。而uid从1~200为保留号。

 

GID_MIN                  1000     普通组的gid最小值

 

GID_MAX                 60000    普通组的gid最大值

 

SYS_GID_MIN               201      系统组的gid最小值

 

SYS_GID_MAX               999     系统组的gid最大值

 

CREATE_HOME yes        启用创建用户家目录

 

UMASK           077      普通用户的权限掩码,实际umask值为022。

 

USERGROUPS_ENAB    yes     允许删除用户的同时删除用户的组,前提是组中没有成员存在

 

ENCRYPT_METHOD    SHA512   指定密码加密算法为SHA512算法。

 

2、创建新用户的默认设置文件—— /etc/default/useradd

# useradd defaults file

GROUP=100   //只有当用useradd  -N   lucy 创建用户时未创建同名的组时,这个新用户才会在100组中HOME=/home   用户家目录的基目录(小区)

 

INACTIVE=-1   // 密码永远不失效(不禁用)

 

EXPIRE=        //密码的过期时间,默认为空

 

SHELL=/bin/bash    //指定新建用户的shell为/bin/bash

 

SKEL=/etc/skel       //新建用户的宿主目录模板为/etc/skel

 

CREATE_MAIL_SPOOL=yes    //是否创建用户的邮件文件

 

在新建一个用户的时候,宿主目录里面的内容就是将skel拷贝过去,然后放到/home目录下并改名为新建的用户名

 

3、全局配置文件~/.bash_profile、~/.bashrc和~/.bash_logout

注:可以在用户的宿主目录下使用ls -a查看。

~/.bash_profile:每次登录时执行(开机启动,但只有在开机启动时启动一次)

~/.bashrc :每次进入新的Bash环境时执行(开机启动,优先执行,范围更广)

~/.bash_logout:每次退出登录时执行(关机、退出执行)

以上都是只会影响自己。

 

要想影响所有用户,在以下文件中配置:

/etc/profile  

/etc/bashrc  

 

 

 

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值