Linux权限管理之基本权限

Linux权限管理之基本权限,第1张

(Linux权限管理之基本权限-慕课网 http://www.imooc.com/learn/481 )

一、文件基本权限

1、基本权限的修改

-rw-r--r--

- 文件类型(- 文件 d 目录 l 软链接文件)

rw- u所有者

r-- g所属组

r-- o其他人

r 读

w 写

x 执行

chmod命令

chmod [选项] 模式 文件名

- 选项

-R 递归

- 模式

[ugoa] [+-=] [rwx]

[mode=421]

chmod u+x cangls.av

chmod g+w o+w furong.av

chmod a=rwx fengjie.av

#创建新文件

[root@localhost ~]# touch cangls.av

[root@localhost ~]# ll

#所有者添加执行权限

[root@localhost ~]# chmod u+x cangls.av

[root@localhost ~]# ll

#所属组和其他人添加写权限

[root@localhost ~]# chmod g+w,o+w cangls.av

[root@localhost ~]# ll

#所有者减去执行权限,所属组和其他人减去写权限

[root@localhost ~]# chmod u-x,g-w,o-w cangls.av

[root@localhost ~]# ll

#所有者添加读写执行权限,所属组添加读写权限

[root@localhost ~]# chmod u=rwx,g=rw cangls.av

[root@localhost ~]# ll

#所有人赋予读写权限

[root@localhost ~]# chmod a=rw cangls.av

[root@localhost ~]# ll

r ----4

w ----2

x ----1

rwxr-xr-x

7 5 5

#所有者赋予读写执行权限,所属组和其他人赋予读执行权限

[root@localhost ~]# chmod 755 cangls.av

[root@localhost ~]# ll

#改为普通文件权限

[root@localhost ~]# chmod 644 cangls.av

[root@localhost ~]# ll

777(文件最高权限)

644(普通文件权限)

755(所有者赋予读写执行权限,所属组和其他人赋予读执行权限)

r:读取文件的内容(cat more head tail)

w:编辑、新增、修改文件内容(vi echo),但是不包含删除文件;

x:可执行

r:可以查询目录下文件名(ls)

w:具有修改目录结构的权限。如新建文件和目录,删除此目录下文件和目录,重命名此目录下文件和目录,剪切(touch rm mv cp)

x:可以进入目录(cd)

对文件来讲:最高权限是x(执行)

对目录来讲:最高权限是w(写),能赋予的权限只有0,5,7

#创建普通用户user1

[root@localhost ~]# useradd user1

#创建普通用户密码user1

[root@localhost ~]# passwd user1

更改用户 user1 的密码 。

新的 密码:123

无效的密码: WAY 过短

无效的密码: 过于简单

重新输入新的 密码:123

passwd: 所有的身份验证令牌已经成功更新。

chown 用户名 文件名

例如:chown ds fengj.av

chgrp 组名 文件名

例如:chgrp group1 fengj.av

要求:

拥有一个av目录

让加藤老师拥有所有的权限

让本课程学员有查看的权限

其他所有人不许查看这个目录

#创建目录

[root@localhost ~]# mkdir av

#查看

[root@localhost ~]# ll -d av

[root@localhost ~]# useradd jt

[root@localhost ~]# passwd jt

更改用户 jt 的密码 。

新的 密码:

无效的密码: WAY 过短

无效的密码: 过于简单

重新输入新的 密码:

passwd: 所有的身份验证令牌已经成功更新。

#添加组

[root@localhost ~]# groupadd user

#把user1用户加到user组里面

[root@localhost ~]# gpasswd -a user1 user

Adding user user1 to group user

[root@localhost ~]# chown jt:user av

[root@localhost ~]# ll -d av

#其他人改为0权限

[root@localhost ~]# chmod 750 av

[root@localhost ~]# ll -d av

#查看默认权限

[root@localhost ~]# umask

0022

第一位0:文件特殊权限

022:文件默认权限

文件默认不能建立为执行文件,必须手工赋予执行权限;

所以文件默认权限最大为666;

默认权限需要换算成字母再相减;

建立文件之后的默认权限,为666减去umask值;

例如:

文件默认最大权限666,umask值022;

-rw-rw-rw-减去-----w--w-等于-rw-r--r--

例如:

文件默认最大权限666,umask值033

-rw-rw-rw-减去-----wx-wx等于-rw-r--r--

目录的默认权限最大为777;

默认权限需要换算成字母再相减;

建立文件之后的默认权限,为777减去umask值;

例如:

目录默认最大权限为777,umask值022;

-rwxrwxrwx减去-----w--w-等于-rwxr-xr-x

临时修改

umask 0002

永久修改

vi /etc/profile

Linux系统中的用户是分角色的,用户的角色是由UID和GID来识别的(也就是说系统是识别的是用户的UID、GID,而非用户用户名),一个UID是唯一(系统中唯一如同身份z一样)用来标识系统的用户账号(用户名)。

文件的用户与用户组分为超级管理员,普通用户和系统用户。

1)超级管理员的UID=0,GID=0,也可以这么说系统只要是识别出某个用户的UID\GID都为0时,那么这个用户系统就认为是超级管理员。

2)普通用户(管理员添加的),默认它的UID\GID是从500-65535,权限很小,只能 *** 作自己的家目录中文件及子目录(注:nobody它的UID\GID是65534)。

3)系统用户,也称虚拟用户,也就是安装系统时就默认存在的且不可登陆系统,它们的UID\GID是1-499。

我们可以通过cat /etc/passwd命令来查看所有的用户信息,例如下图,第三列是UID,第四列是GID:

创建用户

useradd user1创建用户user1

useradd -e 12/30/2021 user2 创建用户user2,有效期到2021-12-30

设置用户密码

passwd user1设置密码,有设置密码的用户不能用

这里设置密码时可能会碰到密码保护机制问题,这里需要注释掉保护机制的问题

这个时候需要在编辑/etc/pam.d/system-auth文件,将其中的passwordrequisite

和passwordsufficient两行注释掉,如下图:

创建用户组

groupadd –g 888 users 创建一个组users,其GID为888

groupadd users 不用g参数,使用默认的组ID

命令 gpasswd为组添加用户

只有root和组管理员能够改变组的成员:

gpasswd –a user1 users 把 user1加入users组

gpasswd –d user1 users 把 user1退出users组

命令groupmod修改组

groupmod –n user2 user1 修改组名user1为user2

groupdel删除组

groupdel users 删除组users

真正从安全性角度上来考虑的话,是要控制用户一定执行命令的权限,也就是哪些用户可以执行哪些命令,不可以执行哪些命令,因此也就有了sudo这个应用,对于sudo提权,也就是修改/etc/sudoers的配置文件。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7559929.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-07
下一篇 2023-04-07

发表评论

登录后才能评论

评论列表(0条)

保存