管理用户账号和组账号

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了管理用户账号和组账号相关的知识,希望对你有一定的参考价值。

管理用户账号和组账号






  • 普通用户改密码,设置复杂密码,只能改自己(不用带用户名)


  • root用户执行su命令切换不需要密码验证,普通用户切换需要密码验证。







  • 要在root用户下更改,否则报错


  • 删除用户





















  • 查看用户信息


  • 可以用ID命令判断用户的存在


  • 查看用户属于那些组


  • 查看用户登录信息




实战练习:

  • 1、添加三个用户usr1, usr2, usr3
  • 2、添加用户usr4, 同时指定其主组为usr1, uid为2014, 并验证用户创建是否正确


  • 3、添加用户usr5, 家目录为/tmp/usr5, 附加组为usr2,usr3



  • 4、 修改usr4的附加组为usr2, usr3, 注意验证


  • 5、修改usr1的shell为非登录shell



  • 6、彻底删除usr5用户,连同usr5家目录一并删除


  • 7、为用户usr1设置密码redhat,输入的密码不会显示到屏幕上。


设置目录或文件的权限




  • 目录和文件的归属(标准权限)



  • ACL权限


  • 设置权限



  • ACL设置后有+显示


  • 继承


  • default:就是显示继承已经建立完成,测试一下继承


知识点总结:

管理用户账号和组账号

  • 一、添加、修改、删除用户账户 1、useradd命令,添加用户账户。 2、passwd命令,为用户账号设置密码。 注:普通用户也可以使用passwd命令,但只能更改自己的密码,密码要求有一定的复杂性 3、su命令,切换用户,#su - benet 只允许特定用户使用su命令 要做到这一点,编辑插入式验证模块为(PAM)配置文件/etc/pam.d/su 在文本编辑器中打开该文件,取消注释:#auth required pam_wheel.so use_uid 将用户添加到名为wheel的特殊管理组  usermod -a -G wheel username 4、usermod命令,修改用户账户 5、userdel命令,删除用户账号
  • 二、用户初始化配置文件 添加一个新的用户账号后,useradd命令会在用户的宿主目录中建立一些初始配置文件。这些文件来自于账号模板目录/etc/skel,基本上都是隐藏文件, 主要的用户初始配置文件 ~/.bash_profile:用户每次登录时执行 局部配置文件 /etc/profile全局配置文件 ~/.bashrc:每次进入新的Bash环境时执行(当然也包括登录系统) ~/.bash_logout:用户每次退出登录时执行
  • 三、组账号管理 用户和组的关系: 组中可以没有用户、 也可以有一个或者多个用户。 用户只有一个主要组(基本组),可以同时属于多个组,但是除了主要组以外的其他组称为附属组。 1、组账号文件 /etc/group:保存组帐号基本信息 /etc/gshadow:保存组帐号的密码信息(但很少使用到) 2、添加、修改、删除组账户 groupadd命令:添加组账号 命令选项: -a:向组内添加一个用户 -d:从组内删除一个用户成员 -M:定义组成员列表,以逗号分隔 groupdel:删除组账号 格式:groupdel组帐号名
  • 四、查看账号信息 id:查询用户身份标识 groups:查询用户所属的组 finger:查询用户帐号的详细信息

设置目录和文件权限

  • 一、“-rw-r--r--” 第一个字母表示文件类型,后面分成三段,分别表示属主,属组,其他用户权限。用u,g, o表示a表示所有。 r 可读 ;w 可写 ;x 可执行 ;- 无权限 r、w、x、- 权限字符还可分别表示为8进制数字4、2、1、0
  • 二、设置和文件目录权限 1、使用chmod命令设置文件或目录的权限时,基本的命令格式如下: 格式1:chmod [ugoa] [+-=] [rwx] 文件或目录... 2、格式2:chmodnnn 文件或目录... 说明:nnn为需要设置的具体权限值,如755、644等 3、格式3:chmod [选项] --reference=参考文件 文件...

ACL权限

  • 1、ACL允许你给任何的用户或用户组设置任何文件/目录的访问权限。 可以针对用户来设置权限 可以针对用户组来设置权限 子文件/目录继承父目录的权限
  • 2、我们可以使用setfacl和getfacl命令来设置或查看文件/目录的acl权限。 setfacl命令,用来设置文件或目录的acl权限 命令格式及常用选项: setfacl [-bkRd] [-m|-x acl参数] 文件/目录名 -m :配置后面的 acl 参数给文件/目录使用,不可与 -x 合用; -x :删除后续的 acl 参数,不可与 -m 合用; -b :移除所有的 ACL 配置参数; -k :移除默认的 ACL 参数; -R :递归配置 acl; -d :配置“默认 acl 参数”,只对目录有效,在该目录新建的数据会引用此默认值; getfacl命令,查看文件或目录的acl权限 命令格式: getfacl 文件/目录名

Linux常用命令账号和组管理

Linux常用命令(五)账号和组管理

 

一、管理用户账号

 

1、用户账号的分类

超级用户:root用户是Linux系统中默认的超级用户账号,对本主机拥有最大的权限,类似于Windows         系统中的Administrator用户。

普通用户:普通用户账号需要由root用户或其他管理员用户创建;拥有的权限收到一定限制,一般只                        在用户自己的宿主目录中拥有完整权限。

程序用户:在安装linux系统及部分应用程序时,会添加一些特定的低权限用户账号,这些用户一般                        不允许登录到系统,而仅用于维持系统或某个程序的正常运行。

 

2、组账号

基础某种特定联系将多个用户集合在一起,即构成一个用户组,用于表示该组内所有用户的账号称为组账号。每一个用户账号至少属于一个组,这个组称为该用户的基本组(或私有组);若该用户同时还包括在其他的组中,则这些组称为该用户的附加组(或公共组)。

 

3UIDGID

Linux系统中的每一个用户账号都有一个数字形式的身份标记,称为UID,对于系统核心来说,UID作为区分用户的基本依据,每个用户的UID号应该是唯一的。root用户账号的UID号为固定值0,而程序用户账号的UID号默认为1~499,普通用户使用的UID号默认为500~60000

 

二、用户账号管理

 

1、用户账号文件

与用户账号相关的配置文件主要有两个,分别是/etc/passwd/etc/shadow

 

1.1)、passwd文件

passwd文件主要保存用户名称、宿主目录、登录Shell等基本信息。在配置文件中,每一行对应一个用户账号,不用的配置项之间使用冒号“:”进行分隔。

技术分享

passwd文件的每一行内容中,包含了七个用冒号“:”分隔的配置字段,从左到右各个配置字段的含义分别如下所述。


■第1字段:用户账号的名称,也是登录系统时使用的识别名称。

■第2字段:经过加密的用户密码字串,或者密码占位符“x”。

■第3字段:用户账号的UID号。

■第4字段:所属基本组账号的GID号。

■第5字段:用户全名,可填写与用户相关的说明信息。

■第6字段:宿主目录,即该用户登录后所在的默认工作目录。

■第7字段:登录Shell等信息,用户完成登录后使用的Shell


所有用户都可以访问passwd文件中的内容,但是只有root用户才能进行更改。

 

1.2)、shadow文件中的配置行格式

shadow文件又被称为“影子文件”,其中保存有各用户账号的密码信息,因此对shadow文件的访问应该进行严格限制。默认只有root用户能够读取文件中的内容,而不允许直接编辑该文件中的内容。

技术分享

■第1字段:用户账号名称

■第2字段:使用MD5加密的密码字符串信息,当为“*”或“!!”时表示此用户不能登录到系统。若                        该字段内容为空,则该用户无需密码即可登录系统。

■第3字段:上次修改密码的时间,表示从19700101日算起到最近一次修改密码时,间隔的天数。

■第4字段:密码的最短有效天数,自本次修改密码后,必须至少经过该天数才能再次修改密码。默认                        值为0,表示不进行限制。

■第5字段:密码的最长有效天数,自本次修改密码后,经过该天数以后必须再次修改密码。默认值                          为99999,表示不进行限制。

■第6字段:提前多少天警告用户口令将过期,默认值为7

■第7字段:密码过期之后多少天内禁用此用户。

■第8字段:账号失效时间,此字段指定了用户作废的天数(从19700101日起计算),默认值为                          空,表示账号永久可用。

■第9字段:保留字段,目前没有特定的用途。

 

2、添加、修改、删除用户账号

 

2.1)、useradd命令——添加用户账号

useradd  [选项]  用户名

使用useradd命令添加用户账号时主要完成以下几项任务。

 /etc/passwd文件和/etc/shadow文件的末尾增加该用户账号的记录。

 若未明确指定用户的宿主目录,则在/home目录下自动创建与该用户账号同名的宿主目录,并在该            目录中建立用户的各种初始配置文件。

■     若没有明确指定用户所属的组,则自动创建与该用户账号同名的基本组账号,组账号的记录信息将          保存到/etc/group/etc/gshadow文件中。

 

useradd命令中几个常见选项。

–u:指定用户的UID号,要求该UID号码未被其他用户使用。

–d:指定用户的宿主目录位置(当与-M一起使用时,不生效)。

–e:指定用户的账户失效时间,可使用“年--日”的日期格式。

–g:指定用户的基本组名(或使用GID号)

–G:指定用户的附加组名(或使用GID号)

–M:不建立宿主目录,即使/etc/login.defs系统配置中已设定要建立宿主目录。

–s:指定用户的登录Shell

 

2.2)、passwd命令——为用户账号设置密码

      通过useradd命令新增用户账号以后,还需要为其设置一个密码才能够正常使用。使用passwd命令可以设置或修改密码,root用户有权管理其他账号的密码。例如为zhangsan设置密码,密码要输两遍,第二遍是确认,要和第一遍一样。

技术分享


   这里由于设置的密码为123,所以提示“无效的密码:过短,过于简单”但是没关系,密码已经设置成功了。正常情况密码还是应该设置的复杂一点。

      使用passwd命令除了可以修改账号的密码之外,还能够对用户账号进行锁定、解锁,或者也可以将用户的密码设置为空(无需密码即可登录)。常用选项如下:

–d:清空指定用户的密码,仅使用用户名即可登录系统。

–l:锁定用户账户。

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

–u:解锁用户账户。

 

2.3)、usermod命令——修改用户账号属性

对于系统中已经存在的用户账号,可以使用usermod命令重新设置各种属性。常用参数如下:

–u:修改用户的UID号。

–d:修改用户的宿主目录位置。

–e:修改用户的账户失效时间,格式“年—月—日”

–g:修改用户的基本组名(或使用GID号)

–G:修改用户的附加组名(或是用GID号)

–s:指定用户的登录Shell

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

–L:锁定用户账户。

–U:解锁用户账户。

若要修改已有账号的宿主目录,需要先将该账号原有的宿主目录转移到新的位置,然后再通过usermod命令设置新的宿主目录位置。例如,执行以下操作可以将zhangsan用户的宿主目录由/home/zhangsan转移至/zhangsan

技术分享

注意:zhangsan账号不能处于登录状态。


2.4)、userdel命令——删除用户账号

格式为

技术分享

结合“-r”选项可同时删除宿主目录。

 

3.用户账号的初始配置文件

添加一个新的用户账号后,useradd命令会在该用户的宿主目录中建立一些初始配置文件。这些文件来自于账号模板目录“/etc/skel,基本上都是影藏文件,较常用的初始配置文件有:

.bashrc_profile:文件中的命令将在该用户每次登录时被执行。

.bash_logout:文件中的命令将在用户每次退出登陆时执行。

.bashrc:文件中的命令会在每次加载“/bin/Bash”程序时(当然也包括登陆系统)执行。

 

三、组账号管理

 

1、组账号文件

与组账号相关的配置文件也有两个,分别是“/etc/group”、“/etc/gpasswd”。前者用于保存组账号的名称、GID号、组成员等基本信息,后者用于保存组账号的加密密码字串等信息(很少用)

 

2、添加、删除、修改组账号

 

2.1)、groupadd命令——添加组账号

需要指定GID号时,可以使用“-g”选项

 

2.2)、grpasswd命令——添加、设置、删除组成员

–a:添加一个组成员(用户写前边,组写后边)

–d:删除组中的某一个成员

–M:一次性添加多个用户到一个组里边。

 

2.3)、groupdel命令——删除组账号

      当系统中的某个组账号已经不再使用时,可以使用groupdel命令将该组账号删除。


四、查询账号信息

1groups命令——查询用户账号所属的组

使用groups命令可以查看指定的用户账号属于那些组。

技术分享


2id——查询用户账号的身份标识

使用id命令可以快速查看指定用户账号的UIDGID等标识信息。

技术分享


3w命令——查询当前主机的用户登录情况

使用w命令可以查询当前主机中的用户登录情况,列出登录账号名称、所在终端、登录时间、来源地点等信息。

技术分享

本文出自 “侯良金” 博客,请务必保留此出处http://houliangjin.blog.51cto.com/13112910/1964209

以上是关于管理用户账号和组账号的主要内容,如果未能解决你的问题,请参考以下文章

Linux账号权限管理

账号和权限管理

账号和权限管理

Linux账号和权限管理

Linux中的账号权限管理

账户和权限管理