5.管好用户

Posted WY_记录

tags:

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

1.查看用户

UID 是确认用户权限的标识,每个用户的 UID 必须是唯一的,通过修改/etc/passwd 文件,可修改任何用户的 UID 的值

id [用户名]
查看某个指定用户的 UID,其初始用户组的 GID,以及它所从属的其他用户组,如果不指定用户名,则是查看调用者的相关信息

finger 用户名
查询用户相关信息的,比如用户名(登录名)、家目录、登录 SHELL 类型等等

2.切换用户

su [选项] [用户名]
在不退出当前登录的情况下,临时切换用户身份。
选项:? - 或者-l 在切换用户的同时切换到相应用户的登录环境,包括家目录,SHELL 定义等。
root 向普通用户切换不需要密码,而普通用户切换到其它任何用户都需要密码验证

3.创建,修改,删除用户

useradd [选项] 用户名
为系统添加一个新用户,只有根用户可以。
选项:
? -c :后面接一个字符串,是对本用户的一些描述,也可以视为用户全名。
? -u :后面接一个数字。指定一个特定的 UID 给这个用户,该值必须唯一,不可相同,数值不可为负;
? -g :后面接的用户组名就是我们上面提到的初始用户组;
? -G :后面接的用户组名则是这个用户还要加入的其余用户组;
? -M :不建立用户家目录(虚拟用户默认值) ;
? -m :建立用户家目录 (普通用户默认值) ;
? -d :指定某个目录成为家目录,而不使用默认值;
? -r :建立一个系统虚拟用户;
? -e :后面接一个日期,格式为『YYYY-MM-DD』,指定这个用户失效的日期;
? -f :指定密码是否会失效。0 为立刻失效, -1 为永远不会失效(密码只会过期而强制在登入时重新指定而已)

password 用户名

密码不可见,只有根用户才能设定别的用户的密码

 

usermod [选项] 用户名
修改当前系统里存在的某个用户的用户设置。
选项:
? 其中-c /-d /-e /-f /-g /-G /-s /-u 选项:与 groupadd 同名选项意义类同 ;
? -l :后面跟用户名,修改用户名称;
? -L :暂时将用户锁住,让他无法登录;
? -U :解锁用户。

usermod 不允许改变正在线上的用户名和用户 UID。当 usermod 用来改变用户名和 UID, 必须确认这名用户没在系统上执行任何程序

userdel [选项] 用户名
删除当前系统里某个用户。
选项:
? -r:表示在删除用户的同时,一并把用户的家目录及本地邮件存储的目录或文件也一同删除。

请不要轻易用-r 参数;他会删除用户的同时删除用户所有的文件和目录,切记先删除用户,在确认后再手动删除用户目录;
不允许删除正在线上的用户。

 

4.创建,修改,删除用户组

groupadd [选项] 用户组名
为系统添加一个新用户组。
选项:
? -g :后面接一个数字 ,用来给用户组指定一个 GID,该值必须唯一,不可相同,数值不可为负;

    -r :建立一个系统虚拟用户组。

groupmod [选项] 用户组名
修改用户组。
选项:
? -g :后面接一个数字 ,修改组的 GID;

? -n :修改组的名称。
? -p :修改组的密码。

 

groupdel 用户名
删除当前系统里某个用户组。

在删除用户组的时候请万分小心,因为这有可能涉及到其它和这个用户组相关的用户;
你无法删除一个用户组,除非没有任何一个用户将这个用户作为主用户组(primary group),也即前面所提到的初始用户组(initialgroup)。

 

5.让渡用户权限

sudo 命令有以下特点:
? sudo 命令能够限制指定用户在指定主机上运行某些命令。
? sudo 命令可以提供日志,忠实地记录每个用户使用 sudo 命令做了些什么,并且能将日志传到中心主机或者日志服务器。
? sudo 命令为系统管理员提供配置文件,允许系统管理员集中地管理用户的使用权限和使用的主机。它默认的存放位置是/etc/sudoers。
? sudo 命令使用时间戳文件来完成类似“检票”的系统。当用户执行 sudo 命令并且输入密码后,用户获得了一张默认存活期为 5 分钟的“入场券”(默认值可以在编译的时候改变)。超时以后,用户必须重新输入密码

A)  修改/etc/sudoers  文件

一开始系统默认仅有 root 可以执行 sudo 命令,我们需要通过修改/etc/sudoers 文件来让别的用户也能够执行 sudo 命令:

用 vi /etc/sudoers 打开/etc/sudoers 文件

root ALL=(ALL) ALL #找到这一行

第一字段:可以使用sudu命令的用户

第二字段:登陆用户的来源主机名

第三字段:可让渡权限的用户列表

第四字段:用户可使用的命令列表

表示:root用户可以在任意主机登录,以任意用户身份执行任意命令

在这行之后添加,例如:

intern01 ALL=(ALL) ALL #添加这行  #表示 intern01 用户可以在任何地方(远程终端)登录,以任意用户身份执行任何命令

sudo –u root passwd intern02  #以 root 身份执行 passwd 命令,可以省略 –u 选项,命令是默认转换为 root 身份的

intern01 localhost=(root) /sbin/shutdown -h -5#表示 intern01 用户可以在本地登录,以 root 用户身份执行/sbin/shutdown -5 now 这个命令,命令得以绝对路径的方式指定

按用户组指定:%group_p  192.168.56.130=(root) /sbin/shutdown -h -5#表示从属于 group_p 用户组的 用户可以在 192.168.56.130 主机上登录,以 root 用户身份执行/sbin/shutdown -5 now 这个命令

免除用户输入自己密码的步骤:%group_p  192.168.56.130=(root) NOPASSWD:/sbin/shutdown -h -5

 

6.用户配置文件

A ) /etc/passwd是系统识别用户的一个文件

在/etc/passwd 中,每一行都表示的是一个用户的信息;一行有 7 个字段;每个字段用:号分割
第一字段:用户名
第二字段:密码;其实密码已被映射到/etc/shadow 文件中;
第三字段:UID ;请参看本文的 UID 的解说;
第四字段:GID;请参看本文的 GID 的解说;
第五字段:用户名全称,这是可选的,可以不设置
第六字段:用户的家目录所在位置;
第七字段:用户所用 SHELL 的类型

B )/etc/shadow 文件是/etc/passwd 的影子文件,这个文件并不由/etc/passwd 而产生的,这两个文件是应该是对应互补的;
shadow 内容包括用户及被加密的密码以及其它/etc/passwd 不能包括的信息,比如用户的有效期限等;这个文件只有 root 权限可以读取和操作
/etc/shadow 文件的内容包括 9 个段位,每个段位之间用:号分割

第一字段:用户名(也被称之为登录名)
第二字段:被加密的密码,如果有的用户在此字段中是 *或!,表示这个用户不能登录系统,也可以看作是虚拟用户,不过虚拟用户和真实用户都是相对的,系统管理员随时可以对任何用户操作;
第三字段:表示上次更改口令的天数(距 1970 年 01 月 01 日)
第四字段:禁用两次口令修改之间最小天数的功能,设置为 0
第五字段:两次修改口令间隔最多的天数,;这个值如果在添加用户时没有指定的话,是通过/etc/login.defs 来获取默认值,PASS_MAX_DAYS 99999;可以查看/etc/login.defs 来查看,具体的值;
第六字段:提前多少天警告用户口令将过期;当用户登录系统后,系统登录程序提醒用户口令将要作废;如果是系统默认值,是在添加用户时由/etc/login.defs 文件定义中获取,在 PASS_WARN_AGE 中定义
第七字段:在口令过期之后多少天禁用此用户;此字段表示用户口令作废多少天后,系统会禁用此用户,也就是说系统会不能再让此用户登录,也不会提示用户过期,是完全禁用;此字段是空的,表示禁用这个功能;
第八字段:用户过期日期;此字段指定了用户作废的天数(从 1970 年的 1月 1 日开始的天数),如果这个字段的值为空,帐号永久可用;
第九字段:保留字段,目前为空,以备将来 Linux 发展之用;

C )/etc/group 文件是用户组的配置文件

内容包括用户和用户组,并且能显示出用户是归属哪个用户组或哪几个用户组,因为一个用户可以归属一个或多个不同的用户组;同一用户组的用户之间具有相似的特征。
/etc/group 中的每条记录分四个字段:
第一字段:用户组名称;
第二字段:用户组密码;x 是密码段,表示没有设置密码
第三字段:GID
第四字段:用户列表,每个用户之间用,号分割;本字段可以为空;如果字段为空表示用户组为 GID 的用户名;通过/etc/passwd查看
查看一个用户组所拥有的用户,可以通过对比/etc/passwd 和/etc/group 来得到

D ) /etc/gshadow是/etc/group 的加密文件,比如用户组(Group)管理密码就是存放在这个文件;/etc/gshadow 和/etc/group 是互补的两个文件;

/etc/gshadow 的 的 4  个字段,每个用户组独占一行

第一字段:用户组名
第二 字段:用户组的密码,!或空为无密码
第三字段:用户组管理者,可为空;
第四字段:用户组所拥有的成员,然后还要对照一下/etc/group 和/etc/passwd 查看是否还有其它用户,一般默认添加的用户,有时同时也会创建用户组和用户名同名称


 

 

 








?

 

以上是关于5.管好用户的主要内容,如果未能解决你的问题,请参考以下文章

Linux系统管理_主题02 :管好文件_2.2 列出文件和文件属性_chmod_ls

如何帮用户管好云账本?阿里云数据库助力收钱吧!

如何帮用户管好云账本?阿里云数据库助力收钱吧 | 甲子光年

管好超时才能做好异步

跟着Google学Android —— 3.1 管好Activity的生命周期

给25岁-35岁人提个醒:职场最关键的10年,管好这5件事