linux--用户、组、权限

芝士年糕
• 阅读 421

最近在学习linux,租了一台VPS,需要多用户,刚好查了资料,顺便整理了一下,如果有需要服务器的话,可以后台私信我 说到用户组权限,可以想像成windows操作系统一样,同样都是基于用户身份来控制对资源的访问,每个用户账户都有唯一的用户名与密码,只是个别细节方面存在一些差异。 系统用户文件 系统文件路径: /etc/passwd 用户信息文件 /etc/shadow 用户密码文件 1、创建用户 格式如下: useradd [选项] 用户名 -u 指定用户的uid -g 指定用户的基本组 -G 指定附属组,可以有多个, 但是这些附属组必须是系统内已经存在的 -c 指定描述 -d 指定家目录 -M 不建立家目录 -s 指定shell -e 指定用户过期时间, 日期 -f 指定用户过期时间, 天数 2、修改用户权限 针对已有用户修改属性(和创建用户相同),格式如下: usermod [选项] 用户名 -u 指定用户的uid -g 指定用户的基本组 -G 指定附属组,可以有多个, 但是这些附属组必须是系统内已经存在的 -c 指定描述 -d 指定家目录 -M 不建立家目录 -s 指定shell -e 指定用户过期时间, 日期 -f 指定用户过期时间, 天数 3、设置密码 格式如下: passwd [选项] 用户名 选项如下: -l 锁定 -u 解锁 -d 清空 例:无交互创建密码(适用于脚本) echo "密码" | passwd --stdin 用户名 4、删除用户 userdel [选项] 用户名 -r 删除宿主目录 5、文件内容详解 以/etc/passwd用户信息文件、/etc/shadow用户密码文件为例,以“冒号”为分隔符。 使用命令查看root用户 head -1 /etc/passwd root:x:0:0:root:/root:/bin/bash 用户名:密码占位符:UID:GID:描述信息:家目录:登录shell 使用命令查看zhangsan用户密码文件

tail -1 /etc/shadow zhangsan:1nPiR1mec91adasdasw222:18463:0:99999:7:::

1)用户名 2)加密后的密码 3)上一次密码修改时间(单位是天,是距离1970年1月1日 多少天) 4)密码最小生存周期 单位:天 0表示随时可以修改密码;2表示两天内不能修改 5)密码最大生存周期 单位:天,密码使用的最长时间 6)密码到期前几天开始警告 7)密码过期之后到账户失效之前的时间限制 密码过期之后还可以用几天 8)账户过期时间 9)保留列 6、查看用户ID id 用户名 系统组文件 与用户文件一样都是以冒号分隔。 head -1 /etc/group root :x:0: 组名:密码占位符:GID:用户列表 1、创建组 格式如下: groupadd [选项] 组名 选项如下: -g 指定gid 2、修改组 格式如下: groupmod [选项] 组名 3、删除组 格式如下: groupdel 组名 4、管理组成员 添加成员到组 gpasswd -a 用户名 组名 删除组内成员 gpasswd -d 用户名 组名 批量添加成员到组 gpasswd -M 用户1,用户2 组名 系统文件权限 文件权限可用数字表示 可读 可写 可执行

r w x 4 2 1 [root@localhost ~]# ll test.txt -rw-r--r--. 1 root root 0 8月 21 18:27 test.txt

第一栏代表这个文件的类型与权限 。 第一个字符代表这个文件是“目录、文件或链接文件等等”: [ d ]则是目录,例如上表文件名为“.config”的那一行; [ - ]则是文件,例如上表文件名为“initial-setup-ks.cfg”那一行; [ l ]则表示为链接文件(link file); [ b ]则表示为设备文件里面的可供储存的周边设备(可随机存取设备); [ c ]则表示为设备文件里面的序列埠设备,例如键盘、鼠标(一次性读取设备) 。 接下来的rwx权限字符,以三个为一组: 第一组为“文件拥有者可具备的权限”; 第二组为“加入此群组之帐号的权限”; 第三组为“非本人且没有加入本群组之其他帐号的权限。 第二栏表示有多少文件名链接到此节点。 第三栏表示这个文件(或目录)的“拥有者账号”。 第四栏表示这个文件的所属群组。 第五栏表示这个文件的容量大小,默认单位是Bytes(字节)。 第六栏表示这个文件的创建日期或者是最近修改日期。 第七栏为这个文件的文件名。 系统文件权限属组 1、修改文件的属组 chgrp 组名 文件或目录名 2、修改文件归属者 下面命令可以只设置属主也可以同时设置属组。 格式如下: chown 属主[:[属组]] 文件或目录名 例:如果只想设置属组可以执行下面命令(单独设置属主就不需要加冒号了)。 chown :属组 文件或目录名 3、修改文件权限 格式如下: chmod [ugoa][+-=][rwx] 文件或目录 例1:设置文件属主拥有全部权限,属组可读,其他人没有任何权限。

[root@localhost ~]# chmod 740 test.txt [root@localhost ~]# ll -d test.txt -rwxr-----. 1 root root 0 8月 21 18:27 test.txt

例2:根据例1的权限,同组成员添加可执行权限。

[root@localhost ~]# chmod g+x test.txt [root@localhost ~]# ll -d test.txt -rwxr-x---. 1 root root 0 8月 21 18:27 test.txt

4、文件acl (1)查看acl getfacl 文件名 (2)设置acl 格式如下: setfacl [选项] 文件名 选项如下: -m u:用户名:rwx 文件名 单独赋予zhangsan权限 -x u:用户名 删除acl条目 -b 清空acl (3)查看文件隐藏文件 lsattr [文件名] (4)更改文件隐藏权限 格式如下: chattr [选项] 文件名 选项如下: +i 锁定文件 +a 设置文件仅追加 系统文件特殊权限 1、SetUID 当一个具有执行权限的文件设置SetUID权限后,用户执行这个文件时将以文件所有者的身份执行。 权限数字为4644——前面的4代表suid,后面表示用户组其他人权限。 格式如下:

ls -l /usr/bin/passwd chmod u-s /usr/bin/passwd 去除s权限 chmod u+s /usr/bin/passwd 添加s权限

2、SetGID 基本与SetUID相同,GID为设置所属组的特殊权限,可针对目录设置。 权限数字为2644——前面的2代表guid,后面表示用户组其他人权限。 格式如下:

ls -l /usr/bin/passwdls -l /usr/bin/locate chmod g-s /usr/bin/locate 去除g权限 chmod g+s /usr/bin/locate 添加g权限

3、SBIT 粘滞位:只对目录有效,用户不能删除不属于自己的文件。 权限数字为1755——前面的1代表sbit,后面表示用户组其他人权限。 格式如下:

chmod [ugo]+t /目录

点赞
收藏
评论区
推荐文章
Stella981 Stella981
3年前
Keycloak 基本功能
Keycloak是一个致力于解决应用和服务身份验证与访问管理的开源工具。可以通过简单的配置达到保护应用和服务的目的。用户管理你的应用不需要开发登录模块,验证用户和保存用户。Keycloak开发了用户管理,登录,注册,密码策略,安全问题,二步验证,密码重置等功能。登录,注册界面所需字段都是可配置,可自定义的。用户角色,权限管理功能,用户组功能。用户
Wesley13 Wesley13
3年前
Ubuntu账户管理
Ubuntu账户:Ubuntu有三类账户:超级用户、普通用户以及系统用户。每一个用户在ubuntu中都必须拥有一种账户,在Ubuntu中,/etc/passwd用来保存每个账户的信息。实际密码保存在/etc/shadow中。/etc/passwd文件每行基本格式:username:password:uid:gid:ge
Stella981 Stella981
3年前
CentOS用户、用户组、文件权限、目录概念
一:用户与用户组    Linux是一个多用户操作系统,那么如何保证安全性和隐私性呢?即我拥有的东西我只想让我授权的别的用户看到,而不是谁都可以进我家翻箱倒柜随便来?先了解几个概念之后、就会慢慢了解Linux如何实现。    1、文件拥有者        Linux下所有的东西都是文件、不管是具体文件还是目录。
Stella981 Stella981
3年前
Linux操作系统用户安全设置(转)
今天为大家介绍介绍Linux操作系统下用户安全问题!下面就为大家例出了几项,希望对您的Linux系统有所帮助。1.口令安全UNIX系统中的/etc/passwd文件含有全部系统需要知道的关于每个用户的信息(加密后的口令也可能存于/etc/shadow文件中)。/etc/passwd中包含有用户的登录名,经过加密的口令,用户号,用户组号
Stella981 Stella981
3年前
Linux下的用户管理,kali更换源,xshell
Linux下的用户管理用户信息保存/etc/passwd,一般用户都有读的权限真正的用户:修改密码,可以登录伪用户:应用程序在运行时会以某种权限来运行,并使用程序名来表示该程序,并存在/etc/passwd文件中,伪用户不可以直接登录pentest(用户名):x(密码):1000(UID):1000(GID):pentest,,,(
Stella981 Stella981
3年前
Linux文件属性查询与管理
一、Linux文件角色Linux为了方便对文件针对不同用户做权限控制,针对文件定义了三种角色:文件所有者(owner)、用户组(group)和其他人(others)。二、文件权限  r:读权限w:写权限x:执行权限三、Linux文件属性  Linux查看文件属
Stella981 Stella981
3年前
Linux用户管理
Linux用户管理用户管理配置文件 用户信息文件:/etc/passwd                                 用户名,密码位,UID(用户标识号),GID(缺省组织标识号),注释性描述(例如存放用户全名等信息),宿主目录(用户登陆系统后的缺省目录),命令解释器(用户使用的Shell,默认为bash
Stella981 Stella981
3年前
Linux 创建用户 用户组 用户权限
首先你要有个root账号然后才能做下面几条操作:useraddusername  创建用户usernamepasswduser\_pwd    给已创建的用户username设置密码关于useradd的某些参数:\uUID:指定UID,这个UID必须是大于等于500,并没有其他用户占用的UID\gGID/GR
胖大海 胖大海
2年前
Linux 用户管理
用户配置文件/etc/passwd用户的家目录普通用户:/home/用户名/,所有者和所属组都是此用户,权限是700。超级用户:/root/,所有者和所属组都是root用户,权限是550。用户管理命令useradd\修改用户密码passwd 用户名删除用户userdel 用户名    删除用户userdel r 用户名  连同家目录一起删
一份前端够用的 Linux 命令
Linux系统是一种多用户系统,它将文件访问者身份分为三种:文件所有者(Owner)当创建一个用户的时候,Linux会为该用户创建一个主目录,路径为/home/,我们可以使用cd,快捷进入主目录。如果你想放一个私密文件,就可以放在自己的主目录里,然后设置只能自己查看。群组(Group)每个用户都有一个用户组,方便多人操作的时候,为一群人分配权限。当