目录
用户账号和组账号概述
Linux基于用户身份对资源访问进行控制
●用户帐号
超级用户、普通用户、程序用户
●组帐号
基本组(私有组)附加组(公共组)●UID和GID
-
UID (User IDentity,用户标识号)
-
GID (Group lDentify,组标识号)
超级用户: root 用户是Linux操作系统中默认的超级用户账号,对本主机拥有至高无上的权限,类似于windows操作系统中的 Administrator 用户。只有当进行系统管理、维护任务时,才建议使用root 用户登录系统,日常事务处理建议只使用普通用户账号。root 拥有对系统的最高的管理权限 ID=0 0代表系统管理员 (id root)
普通用户:普通用户账号需要由 root 用户或其他管理员用户创建,拥有的权限受到一定限制,一般只在用户自己的宿主目录中拥有完整权限系统用户UID:1-999 (centos7版本)1-499(centos6版本)UID:即每个用户的身份标示,类似于每个人的身份证号码.
程序用户:在安装Linux操作系统及部分应用程序时,会添加一些特定的低权限用户账号,这些用户一般不允许登录到系统,而仅用于维持系统或某个程序的正常运行,如 bin、daemon、ftp、mail等为用户一般不会用来登录系统的,它主要是用于维持某个服务的正常运行.如: ftp,apache
UID:即每个用户的身份标示,类似于每个人的身份证号码.管理员组: root,0
普通组:GID
系统组:1-499 ( centos6) , 1-999 ( CENTOS7 )
普通组:500+ ( Centos6) , 1000+ (CENTOS7 )
组账号
基本组:基于某种特定联系(如都需要访问 FTP 服务)将多个用户集合在一起,即构成一个用户组,表示该组内所有用户的账号称为组账号。每一个用户账号至少属于一个组,这个组称为该用户的基本组(或私有组);就是说我创建一个用户会生成一个自己组
附加组:若该用户同时还包含在其他的组中,则这些组称为该用户的附加组(或公共组),该用户身兼数职
例如,用户 zhangsan是技术部的员工,与部门内的其他同事同属 于基本组tech,后来因工作安排需要,公司将 zhangsan加入邮件管理员组mailadm,则此时用户 zhangsan同时属于tech、mailadm组,tech组是其基本组账号,而mailadm组是其附加组账号。 对组账号设置的权限将适用于组内的每一个用户账号。
简说: 用户和组的关系 用户是员工,组是职位,员工可以兼职多个岗位 总有一个最重要的身份 主要组和附加组
主要组必须要一个组有且唯一 附加组可有可无有可以有多个 默认行为当你创建一个新用户时会自动创建一个和之同名的主组
用户账号文件/etc/passwd
保存用户名称、宿主目录、登陆Shell等基本信息
-
文件位置:/etc/passwd 每一行对应一个用户的帐号记录
tail /etc/passwd 查看日志文件信息
head -2 /etc/passwd 查看前两行日志文件信息
passwd文件账号记录详细说明
root: x:0:0: root: / root: / bin / bash详解如下: root:用户名,用户名仪是为了方便用户记忆。Linux系统是通过UID来识别用户身份,分配用户权限。x:表示此用户设有密码,但不是真正的密码,真正的密码保存在/etc/shadow文件 Linux系统把真正的加密密码串放置在/etc/shadow文件中,此文件只有root用户可以浏览和操作,最大限度地保证了密码的安全。 补充: 注意!! !,虽然"x"并不表示真正的密码,但也不能删除,如果删除了 ":",那么系统会认为这个用户没有密码,从而导致只输入用户名而不用输入密码就可以登陆(只能在使用无密码登录,远程是不可以)。
cat /etc/passwd 查看passwd文件
cat /etc/shadow 查看密码影子文件
0:用户账号的UID号。 0:所属基本组账号的GID号 root:描述性信息,此字段只是用来解释这个用户的意义而已/root:宿主目录,即该用户登录后所在的默认工作目录 注:通常称为用户的主(家)目录。例如: root主目录为/root,普通用户odysee的主目录为/home/odysee/bin/bash录 shell等信息,用户完成登录后使用的 /etc/ shadow(影子文件)
/bin/bash 就是登陆用户之后能操作的命令
用户账号文件/etc/shadow
保存用户的密码、账号有效期等信息
● 文件位置:letc/shadow 每一行对应一个用户的密码记录
我们称之为影子文件
/ etc/ shadow文件只有root 用户拥有读权限,其他用户没有任何权限,这样就保证了用户密码的安全性 和/etc/passwd文件一样,文件中每行代表一个用户,同样使用": " 作为分隔符,不同之处在于,每行用户信息被划分为9个字段
head -2 /etc/shadow
第一列:账户名
第二列:存放真正加密的密码,采用SHA512散列算法,更加安全加密原来用MD5或DES !!和*表示没有密码不能登陆,新创建用户也是!!,如果密码前面显示双感叹号表示该账户被锁定了
第三列:上一次修改密码的时间,从1970年1月1日开始算的,因为1970年是linux的诞生日,date -d"1970-01-01 18983days"可以查看哪一天改过
第四列:多久之后才可以修改密码,如果是0,则密码可以随时修改最小修改间隔时间,也就是说 该字段规定了从第三个字段(最后一次修改密码的日期)起,多长时间之内不能修改密码,如果是0则随时修改密码,如果是10 则代表密码修改后10天之内不能再次修改密码,此字段是为了针对某些人频繁更改账号密码而设计的。
第五列:密码有效期,默认99999,表示永久生效
第六列:密码到期前的第几天发出告警信息,默认是7天,每次登录系统都会向该账户发出"修改密码”的警告信息
第七列:密码过期的宽限天数,过期后的几天还是可以登陆的,如果过了宽限天数,系统将不再让此账户登陆,也不会提示账户过期,是完全禁用 比如说,此字段规定的宽限天数是10,则代表密码过期10天后失效;如果是0则代表密码过期后立即失效;如果是-1则代表密码永远不会失效
第八列:账号失效时间,使用自―1970年1月1日以来的总天数作为账户的失效时间
第九列:保留,未使用
chage命令
chage命令:用来修改帐号和密码的有效期限,针对目前系统已经存在的用户chage[选项]用户名
-m:密码可更改的最小天数。为零时 代表任何时候都可以