Linux之权限管理

Linux中一切皆文件,通过权限管理来限制文件的访问,修改删除

1、用户管理

查看用户,可以通过 cat /etc/passwd 来查看用户信息

[root@192 aa]# cat /etc/passwd


root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
libstoragemgmt:x:998:996:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
colord:x:997:995:User for colord:/var/lib/colord:/sbin/nologin
rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
saned:x:996:994:SANE scanner daemon user:/usr/share/sane:/sbin/nologin
saslauth:x:995:76:Saslauthd user:/run/saslauthd:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
setroubleshoot:x:994:991::/var/lib/setroubleshoot:/sbin/nologin
rtkit:x:172:172:RealtimeKit:/proc:/sbin/nologin
pulse:x:171:171:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
radvd:x:75:75:radvd user:/:/sbin/nologin
chrony:x:993:988::/var/lib/chrony:/sbin/nologin
unbound:x:992:987:Unbound DNS resolver:/etc/unbound:/sbin/nologin
qemu:x:107:107:qemu user:/:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
usbmuxd:x:113:113:usbmuxd user:/:/sbin/nologin
geoclue:x:991:985:User for geoclue:/var/lib/geoclue:/sbin/nologin
gluster:x:990:984:GlusterFS daemons:/run/gluster:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
gnome-initial-setup:x:989:983::/run/gnome-initial-setup/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
aaa:x:1000:1000:aaa:/home/aaa:/bin/bash

第一列:用户名

第二列:用户的密码,用x来代替

第三列:用户uid,root为0,1-499默认为系统账号,500-65535为用户可登录账号

第四列:用户gid,

第五列:账号的说明解释

第六列:用户的家目录文件夹

第七列:用户使用的shell,如果换成/sbin/nologin/就是默认没有登录环境的

1.1、添加用户

useradd [-mMnr][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s <shell>][-u <uid>][用户帐号]

参数功能
-c <备注>为这个用户添加备注,显示在/etc/passwd里面
-d <登入目录>指定用户登入时的起始目录
-D变更预设值
-e<有效期限> 指定帐号的有效期限。
-f<缓冲天数> 指定在密码过期后多少天即关闭该帐号。
-g<群组>指定用户所属的群组
-G<群组>指定用户所属的附加群组
-m指定用户的登入目录
-M 不要自动建立用户的登入目录
-n 取消建立以用户名称为名的群组
-r建立系统帐号。
-s<shell>指定用户登入后所使用的shell
-u<uid>指定用户ID
# 添加一般用户
useradd test

# 创建一个系统用户
useradd -r test

# 为新创建的用户指定home目录
useradd -d /home/myd test

# 为添加的用户指定相应的用户组
useradd -g root test

1.2、添加用户组

groupadd 选项 用户组

参数功能
-g GID指定新用户组的组标识号(GID)
-o一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
# 创建一个用户组
groupadd group1

# 创建一个用户组,并指定组id
groupadd -g 101 group1

1.3、用户权限修改

usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-l <帐号名称>][-s <shell>][-u <uid>][用户帐号]

参数  功能
-c<备注>修改用户帐号的备注文字
-d登入目录>修改用户登入时的目录
-e<有效期限>修改帐号的有效期限
-f<缓冲天数>修改在密码过期后多少天即关闭该帐号
-g<群组> 修改用户所属的群组
-G<群组>修改用户所属的附加群组
-l<帐号名称>修改用户帐号名称。
-L锁定用户密码,使密码无效
-s<shell>修改用户登入后所使用的shell
-u<uid>修改用户ID
-U解除密码锁定

# 锁定用户密码,禁止登录
usermod -L master

# 解除锁定,允许登录
usermod -U master

1.4、删除用户

userdel(选项)(参数)

参数功能
-f强制删除用户,即使现在该用户正在登录
-r删除用户的同时,删除与用户相关的所有文件

# 强制删除用户
userdel -f master

# 删除用户并删除相关文件
userdel -r master

1.5、删除用户组

groupdel [群组名称]

# 删除用户组
groupdel group1

1.6、修改密码

passwd [-k] [-l] [-u [-f]] [-d] [-S] [username]

参数功能
-d删除密码
-f强迫用户下次登录时必须修改口令
-w口令要到期提前警告的天数
-k更新只能发送在过期之后
-l停止账号使用
-S显示密码信息
-u启用已被停止的账户
-x指定口令最长存活期
-g修改群组密码
-i 口令过期后多少天停用账户
# 查看用户密码情况
[root@192 aa]# passwd -S master
master PS 2024-06-10 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)

# 删除密码
[root@192 aa]# passwd -d master
清除用户的密码 master。
passwd: 操作成功

# 修改密码
[root@192 aa]# passwd master
更改用户 master 的密码 。
新的 密码:
无效的密码: 密码未通过字典检查 - 过于简单化/系统化
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

2、文件基本权限

Linux 系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。

为了保护系统的安全性,Linux 系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。

在 Linux 中我们通常使用以下两个命令来修改文件或目录的所属用户与权限:

  • chown (change owner) : 修改所属用户与组。
  • chmod (change mode) : 修改用户的权限。

在 Linux 中我们可以使用 ll 或者 ls –l 命令来显示一个文件的属性以及文件所属的用户和组,如:

[root@192 aa]# ls -l
总用量 16
drwxr-xr-x. 3 root root   18 6月   5 23:35 a
-rw-r--r--. 1 root root 1901 6月   5 21:56 file1
-rw-r--r--. 1 root root   74 6月   5 21:51 file2
-rw-r--r--. 1 root root   86 6月   5 22:49 file5
drwxr-xr-x. 2 root root   45 6月   5 23:33 test
-rw-r--r--. 1 root root  918 6月   5 23:35 t.zip

实例中,bin 文件的第一个属性用 d 表示。d 在 Linux 中代表该文件是一个目录文件。

在 Linux 中第一个字符代表这个文件是目录、文件或链接文件等等。

  • 当为 d 则是目录
  • 当为 - 则是文件;
  • 若是 l 则表示为链接文档(link file);
  • 若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
  • 若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。

接下来的字符中,以三个为一组,且均为 rwx 的三个参数的组合。其中, r 代表可读(read)、 w 代表可写(write)、 x 代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号 - 而已。

每个文件的属性由左边第一部分的 10 个字符来确定(如下图)。

从左至右用 0-9 这些数字来表示。

第 0 位确定文件类型,第 1-3 位确定属主(该文件的所有者)拥有该文件的权限。

第4-6位确定属组(所有者的同组用户)拥有该文件的权限,第7-9位确定其他用户拥有该文件的权限。

其中,第 1、4、7 位表示读权限,如果用 r 字符表示,则有读权限,如果用 - 字符表示,则没有读权限;

第 2、5、8 位表示写权限,如果用 w 字符表示,则有写权限,如果用 - 字符表示没有写权限;第 3、6、9 位表示可执行权限,如果用 x 字符表示,则有执行权限,如果用 - 字符表示,则没有执行权限。

# 修改文件的用户和用户组
chown master.master test.log

# 修改文件的权限
chmod 777 test.log

3、sudo权限

Linux sudo命令以系统管理者的身份执行指令,也就是说,经由 sudo 所执行的指令就好像是 root 亲自执行。

使用权限:在 /etc/sudoers 中有出现的使用者。

sudo [-选项]

参数

功能

-V显示版本编号
-h会显示版本编号及指令的使用方式说明
-l显示出自己(执行 sudo 的使用者)的权限
-v因为 sudo 在第一次执行时或是在 N 分钟内没有执行(N 预设为五)会问密码,这个参数是重新做一次确认,如果超过 N 分钟,也会问密码
-k将会强迫使用者在下一次执行 sudo 时问密码(不论有没有超过 N 分钟)
-b将要执行的指令放在背景执行
-pprompt 可以更改问密码的提示语,其中 %u 会代换为使用者的帐号名称, %h 会显示主机名称
-uusername/#uid 不加此参数,代表要以 root 的身份执行指令,而加了此参数,可以以 username 的身份执行指令(#uid 为该 username 的使用者号码)
-s执行环境变数中的 SHELL 所指定的 shell ,或是 /etc/passwd 里所指定的 shell
-H将环境变数中的 HOME (家目录)指定为要变更身份的使用者家目录(如不加 -u 参数就是系统管理者 root )

  • 25
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

半两风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值