首页 > 系统相关 >Linux用户和组管理

Linux用户和组管理

时间:2022-12-28 11:59:02浏览次数:38  
标签:管理 sudo 用户 指定 密码 Linux 修改 root

相关系统文件

/etc/passwd # 保存用户信息的文件
/etc/shadow # 保存用户密码相关信息的文件
/etc/group # 保存组信息的文件
/etc/gshadow # 保存组密码相关信息的文件

用户管理

查看 / 切换用户

whoami        # 查看当前用户是谁
id root       # id命令,查看指定用户信息,结果:uid:用户标识;gid:组标识,用户的主组;groups:用户所属组信息
su yunwei     # su命令,切换到指定用户

useradd -- 添加用户

添加用户的操作只有root能操作

# 语法
useradd 选项 选项的参数 用户名

# 选项
-c:加上备注文字,备注文字保存在passwd的备注栏中。
-d:指定用户登入时的启始目录。
-e:指定账号的有效期限,缺省表示永久有效。
-f:指定在密码过期后多少天即关闭该账号。
-g:指定用户所属的群组。
-G:指定用户所属的附加群组。
-m:自动建立用户的登入目录。
-M:不要自动建立用户的登入目录。
-n:取消建立以用户名称为名的群组。
-r:建立系统账号。
-u:指定用户ID号。
-s:指定用户登入后所使用的shell。
# 区分的两种shell
/bin/bash:可登录shell,如果用户的shell是这个,那么该用户可以登录到系统中
/sbin/nologin:非登录shell,如果用户的shell是这个,那么该用户是不允许登录到系统的

userdel -- 删除用户

# 语法
userdel [-r] [用户帐号]
# 如不加-r 选项删除的时候不会删除用户的家目录和邮箱

passwd -- 修改密码

# 语法,不加选项参数直接passwd则是修改当前用户密码,普通用户只能使用 passwd 命令修改自己的密码,而不能修改其他用户的密码。
passwd [选项] [参数]

# 选项
-d:删除密码,仅有系统管理者才能使用,被删除密码的用户登录无需密码;
-f:强制用户下次登录时必须修改口令;
-l:锁住密码,被锁住密码的用户无法修改密码;
-u:解开已上锁的帐号;
-s:列出用户密码的状态,仅有系统管理者才能使用(虽然没啥用,不过可以看到上次更改密码的日期);
--stdin:可以将通过管道符输出的数据作为用户的密码,主要在批量添加用户时使用。
# 示例
echo 123456 | passwd --stdin tom

usermod -- 修改用户

# 选项
-G:修改用户的附属组,不管用户原来的附属组如何,直接覆盖
-g:修改用户的主要组
-a:一般和-G联合使用,追加附属组
-u:修改用户的uid
-d:修改用户的家目录
-s:修改用户的shell
-L : 锁定用户帐号
-U : 解锁帐号

用户组管理

groupadd -- 添加组

# 语法
groupadd 选项 选项的参数 组名
# 选项
-g:添加组时,指定gid是多少
-r:创建系统组

groupmod -- 修改组

# 选项
-g:指定gid
-n:修改组名
# 示例
groupmod -g 1888 组名
groupmod -n 新组名 组名

groupdel -- 删除组

不能够删除用户的主要组,能够删除用户的附属组

# 语法
groupdel [群组名称]

gpasswd -- 组管理

给组加密码:可以让知道组密码的人,临时的切换到该组中,能够使用该组的资源。

# 选项
-A:指定用户为组管理员,示例:gpasswd -A 用户 组名
-a:向组中添加成员(管理员可用),示例:$ gpasswd -a 用户 组名
-d:将用户从组中删除,示例:gpasswd -d sha groups
# 给组设置密码
gpasswd 组名

sudo

Linux sudo命令以系统管理者的身份执行指令,也就是说,经由 sudo 所执行的指令就好像是 root 亲自执行。
比如说ubuntu,默认不让root远程登录,只能普通用户远程登录,这个普通用户使用sudo就能获得root权限。
但是centos经root创建的普通用户默认是没有sodu权限的,需要修改sudo配置文件(root身份)。

# 修改sudo配置文件,修改示例参考下方
visudo        # 自带命令,等同于vi /etc/sudoers

# 查看自己sudo权限
sudo -l

# 指定用户执行命令
sudo -u userb ls -l

# 以root权限执行上一条命令
sudo !!

打开配置文件直接拉到最下面
image

配置文件修改示例,添加一个用户,指定sudo权限

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
yunwei  ALL=(root)      NOPASSWD:ALL,!/sbin/shutdown,!/sbin/init,!/bin/rm -rf /,!/sbin/reboot

解释说明:

  1. 第一个字段yunwei指定的是用户:可以是用户名,也可以是别名。每个用户设置一行,多个用户设置多行。
  2. 第二个字段ALL指定的是用户所在的主机:可以是ip,也可以是主机名,表示该sudo设置只在该主机上生效,ALL表示在所有主机上都生效,一般都指定为"ALL"表示所有的主机,不管文件拷到那里都可以用。比如:10.1.1.1=...则表示只在当前主机生效。
  3. 第三个字段(root)括号里指定的也是用户:指定以什么用户身份执行sudo,即使用sudo后可以享有所有root账号下的权限。如果要排除个别用户,可以在括号内设置,比如ALL=(ALL,!oracle,!pos)。这里用root也就是演示一下,如果用ALL,sudo可以使用-u选项指定其它用户的权限执行命令。
  4. 第四个字段ALL指定的是执行的命令,NOPASSWD: ALL表示使用sudo的不需要输入密码并且拥有全部权限,多个权限用逗号分隔,拒绝的权限前加上感叹号。
  5. 也可以授权给一个用户组 %admin ALL=(ALL) ALL # 表示admin组里的所有成员可以在任何主机上以任何用户身份执行任何命令

标签:管理,sudo,用户,指定,密码,Linux,修改,root
From: https://www.cnblogs.com/tandabao/p/17009803.html

相关文章

  • Linux文件权限管理
    文件属性的第一列,由10个字符组成,第1个字符是文件类型,之后9个字符每3个为1组,每组里的字符代表权限。这3组称之为ugo权限,就是划分文件对应所属分组的权限。u:--user......
  • Linux文件查找查看
    文件类型区分即文件权限的第一个,如:-rw-r--r--,则该文件属于普通文件-普通文件d目录c字符设备文件,终端就是一个典型b......
  • 绩效管理的定义、周期和流程改进
    绩效管理被确定为经理和员工之间为实际组织目标而进行的持续沟通和反馈的过程。传统而言,绩效管理一直是一种完全基于事后诸葛亮的解决方案。但组织文化正在演变为一种由技......
  • linux下,pipe的容量的讨论与查看(转)
    原文:https://blog.51cto.com/momo462/18258521、pipe的容量2.6标准版本的linux内核,pipe缓冲区是64KB,尽管命令ulimit-a看到管道大小8块,缓冲区的大小不是4k,因为内核动......
  • 在 Linux 上微调 Nginx 获得最佳性能的 8 种方法
    转载来自:Linux迷链接:https://www.linuxmi.com/linux-nginx-performance.htmlNGINX是一种流行的、免费的开源Web服务器。默认的NGINX配置足以让Web服务器正常工作。......
  • Linux C printf无法输出到nohup.out文件上
    使用nohup./bin/out&后台运行程序时,发现cout可以输出到nohup.out文件里,但是printf不行;联想是不是缓冲区未满不输出导致: 但我有加"\n";  ????这个原因就不清楚了;然后......
  • linux环境下安装、卸载python3
    超实用安装python31.下载安装包:wgethttps://www.python.org/ftp/python/3.7.1/Python-3.7.1.tar.xz 2.解压:tar-xvJf Python-3.7.1.tar.xz3.进入到解压好的文件夹......
  • JAVA代码审计_若依管理系统
    若依管理系统代码审计该项目使用Mybatis作为数据库持久化框架。全局搜索${、关注xxxmapper.xml文件寻找SQL注入。1)后台角色管理处SQL注入漏洞点“SysRoleMapper.x......
  • 计讯物联5G物联网智能网关助力充电桩运维管理更加高效
    随着中国“碳达峰、碳中和”发展目标的提出,新能源汽车渗透率的不断提升,充电桩基础设施建设也随之全面提速。计讯物联聚焦国家政策热点,洞悉行业最新风向,将充电桩、智能电网......
  • linux 查看cpu信息
    查看cpu信息lscpu 查看系统盘与数据盘系统盘就像Windows的C盘,在linux中一般有a的参与,可通过df-l来查看如:   可以看到根路径/都是位于系统盘。而/root,/home......