访问权限
可读(read) :1.对文件而言,就是产看里面的内容
2.对目录而言,就是查看目录里的内容
可写(write) :1.对文件而言,就是修改里面的内容 vi
2.对目录而言,就是新建,删除,重命名,移动 mkdir touch rm mv cp
可执行(execute):1.对文件而言,就是执行文件里的命令。例如执行脚本文件
2.对目录而言,就是进入目录。
归属(所有权)
文件拥有者(owner):拥有该文件或目录的用户帐号
属组(group):拥有该文件或目录的组帐号
其它人(others):除了属主和属组的其他人
权限项 | 读 写 执行 | 读 写 执行 | 读 写 执行
字符表示 | r w x | r w x | r w x
权限分配 | 文件所有者 | 文件所属组 | 其他用户
-------------------------------------------------------------------------------
(r)读 (w)写 (x)可执行
文件 查看内容cat 修改内容vi 作为命令使用
文件夹 列出目录内容ls 添加、删除touch、rm 进入文件夹或搜索cd
-------------------------------------------------------------------------------
权限项 | 读 写 执行 | 读 写 执行 | 读 写 执行
字符表示 | r w x | r w x | r w x
数字表示 | 4 2 1 | 4 2 1 | 4 2 1
权限分配 | 文件所有者 | 文件所属组 | 其他用户
-------------------------------------------------------------------------------
r w - | r - - | r - - |
4 2 0 | 4 0 0 | 4 0 0 |
6 | 4 | 4 |
-------------------------------------------------------------------------------
在内核级别,文件的初始权限666
在内核级别,文件夹的初始权限777
用umask命令控制默认权限,临时有效
[root@localhost ~]# umask ---> 查看用户的权限掩码(用户新建文件和目录的时候默认的权限)
0022 --->(组和其他人去掉写的权限) 前面的0是特殊权限位
[root@localhost ~]# umask -S --->查看当前用户的权限设置
u=rwx,g=rx,o=rx
[root@localhost ~]# umask 077 --->直接修改权限掩码,但是这种方式修改只是临时有效,重新恢复原来的
[root@localhost ~]# umask
0077
不推荐修改系统默认umask
======chmod命令
格式1:chmod [ugoa] [+-=] [rwx] 文件或目录...
u:属主 g:属组 o:其他用户 a:所有用户 +:增加 -:去除 =;设置权限
常用选项 -R ----》递归修改指定目录下所有文件,子目录的权限
格式2:chmod nnn 文件或目录... nnn代表的是权限值
[root@teacher lianxi]# chmod 777 /lianxi 让所有的人都能对/lianxi目录进行操作
======chown命令 设置文件/目录的归属
必须是root 用户和组必须存在
格式:chown 属主 文件
chown :属组 文件
chown 属主:属组 文件
======chattr命令: 设置文件的隐藏属性
格式:chattr [+-=] [ai] 文件或目录
常用命令选项
-R:递归修改
-a:可以增加文件内容,但不能修改和删除
-i: 锁定保护文件
[root@teacher lianxi]# chattr +i jiuyingzhenjing 将jiuyingzhenjing锁起来(写保护),不能再往文件里输入内容
[root@teacher lianxi]# echo tanghailong >>jiuyingzhenjing 不能往里面写入内容
=======lsattr命令: 查看文件的隐藏属性
格式:lsattr [Rda] 文件或目录
常用命令选项
-R:递归修改
-d: 查看目录
=======SET位权限
主要用途:
为可执行(有 x 权限的)文件设置,权限字符为“s”
其他用户执行该文件时,将拥有属主或属组用户的权限
SET位权限类型:
SUID:表示对属主用户增加SET位权限 -->当某个命令具有suid权限位的时候,普通用户在执行这个命令的时候,会具有root用户的权限
SGID:表示对属组内的用户增加SET位权限
[root@teacher ~]# chmod u+s /usr/bin/tail 授予tail命令suid权限位
[root@teacher ~]# chmod u-s /usr/bin/tail 取消tail命令suid权限位
!!!建议不将所有的命令都赋予suid权限位,这样对系统不好,不安全!
应用示例:/usr/bin/passwd
[root@localhost ~]# ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root 19876 2006-07-17 /usr/bin/passwd
========粘滞位权限(Sticky)
主要用途:
为公共目录(例如,权限为777的)设置,权限字符为“t”
用户不能删除该目录中其他用户的文件 --->给某个目录设置粘滞位权限后,所有的用户互相之间不能删除别人的目录和文件,就算目录的权限为777.
应用示例:/tmp、/var/tmp
[root@localhost ~]# ls -ld /tmp /var/tmp
drwxrwxrwt 8 root root 4096 09-09 15:07 /tmp
drwxrwxrwt 2 root root 4096 09-09 07:00 /var/tmp
设置SET位、粘滞位权限
使用权限字符
chmod ug±s 可执行文件...
chmod o±t 目录名...
使用权限数字:
chmod mnnn 可执行文件...
m为4时,对应SUID,2对应SGID,1对应粘滞位,可叠加
-------------------------------------------------------
操作对象 特殊权限 功能
文件 SUID 以文件属主的权限执行文件
SGID 以文件属组的权限执行文件
文件夹 sticky 文件夹中新建的对象只有root和拥有者可以删除
SGID 文件夹中新建的对象都属于文件夹的属组
-------------------------------------------------------
ACL(Access Control List)
一个文件/目录的访问控制列表,可以针对任意指定的用户/组使用权限字符分配rwx权限
设置ACL:setfacl指令
格式: setfacl 选项 规则 文件
常用规则
格式:类型:特定的用户或组:权限
user:(uid/name):(perms) 指定某位使用者的权限
group:(gid/name):(perms) 指定某一群组的权限
other::(perms) 指定其它使用者的权限
mask::(perms) 设定有效的最大权限
======[root@sxkj ~]# setfacl -m u:hello:rw test.txt =>对特定用户赋予权限
[root@sxkj ~]# getfacl test.txt =>查看acl权限
[root@sxkj ~]# setfacl -m g:sxkj:rw test.txt =>对特定组赋予权限
[root@sxkj ~]# getfacl test.txt =>查看acl权限
常用选项
-m:新增或修改ACL中的规则
-b:删除所有ACL规则
-x:删除指定的ACL规则
查看ACL:getfacl指令
格式: getfacl 文件
======ACL类型
存取型ACL(Access ACL):文件或目录
预设型ACL(Default ACL):只能对目录
预设型ACL(Default ACL)
格式:setfacl –m default:类型:特定的用户或组:权限
setfacl –m d:类型:特定的用户或组:权限
设置了预设型ACL的目录,其下的所有文件或者子目录就都具有了主目录的ACL权限,并且子目录也同样有预设的ACl权限
----------------------------------------------------------------------------------------
drwxr-xr-x. 2 root root 12288 Apr 13 09:05 sbin
权限部分 . 代表这目录设置了selinux权限,受selinux权限策略的影响
selinux 是linux下为了保障linux的安全,使用的一套安全措施。
建议linux服务器将此功能禁用,因为太安全会影响机器的性能和我们实验的效果
=======
[root@teacher /]# getenforce --->查看selinux的状态
Disabled --->说明selinux禁用了
[root@localhost ~]# getenforce
Enforcing --->说明selinux是强制开启的状态
禁用步骤:
1.[root@teacher /]# vim /etc/sysconfig/selinux
S ELINUX=disabled 修改为disabled
2.重新启动机器,下次会自动禁用selinux
========临时让selinux无效
[root@localhost ~]# getenforce
Enforcing
[root@localhost ~]# setenforce 0
[root@localhost ~]# getenforce
Permissive
如果你使用getenforce 查看的selinux的状态是disabled 就不需要使用上面的命令了。
可读(read) :1.对文件而言,就是产看里面的内容
2.对目录而言,就是查看目录里的内容
可写(write) :1.对文件而言,就是修改里面的内容 vi
2.对目录而言,就是新建,删除,重命名,移动 mkdir touch rm mv cp
可执行(execute):1.对文件而言,就是执行文件里的命令。例如执行脚本文件
2.对目录而言,就是进入目录。
归属(所有权)
文件拥有者(owner):拥有该文件或目录的用户帐号
属组(group):拥有该文件或目录的组帐号
其它人(others):除了属主和属组的其他人
权限项 | 读 写 执行 | 读 写 执行 | 读 写 执行
字符表示 | r w x | r w x | r w x
权限分配 | 文件所有者 | 文件所属组 | 其他用户
-------------------------------------------------------------------------------
(r)读 (w)写 (x)可执行
文件 查看内容cat 修改内容vi 作为命令使用
文件夹 列出目录内容ls 添加、删除touch、rm 进入文件夹或搜索cd
-------------------------------------------------------------------------------
权限项 | 读 写 执行 | 读 写 执行 | 读 写 执行
字符表示 | r w x | r w x | r w x
数字表示 | 4 2 1 | 4 2 1 | 4 2 1
权限分配 | 文件所有者 | 文件所属组 | 其他用户
-------------------------------------------------------------------------------
r w - | r - - | r - - |
4 2 0 | 4 0 0 | 4 0 0 |
6 | 4 | 4 |
-------------------------------------------------------------------------------
在内核级别,文件的初始权限666
在内核级别,文件夹的初始权限777
用umask命令控制默认权限,临时有效
[root@localhost ~]# umask ---> 查看用户的权限掩码(用户新建文件和目录的时候默认的权限)
0022 --->(组和其他人去掉写的权限) 前面的0是特殊权限位
[root@localhost ~]# umask -S --->查看当前用户的权限设置
u=rwx,g=rx,o=rx
[root@localhost ~]# umask 077 --->直接修改权限掩码,但是这种方式修改只是临时有效,重新恢复原来的
[root@localhost ~]# umask
0077
不推荐修改系统默认umask
======chmod命令
格式1:chmod [ugoa] [+-=] [rwx] 文件或目录...
u:属主 g:属组 o:其他用户 a:所有用户 +:增加 -:去除 =;设置权限
常用选项 -R ----》递归修改指定目录下所有文件,子目录的权限
格式2:chmod nnn 文件或目录... nnn代表的是权限值
[root@teacher lianxi]# chmod 777 /lianxi 让所有的人都能对/lianxi目录进行操作
======chown命令 设置文件/目录的归属
必须是root 用户和组必须存在
格式:chown 属主 文件
chown :属组 文件
chown 属主:属组 文件
======chattr命令: 设置文件的隐藏属性
格式:chattr [+-=] [ai] 文件或目录
常用命令选项
-R:递归修改
-a:可以增加文件内容,但不能修改和删除
-i: 锁定保护文件
[root@teacher lianxi]# chattr +i jiuyingzhenjing 将jiuyingzhenjing锁起来(写保护),不能再往文件里输入内容
[root@teacher lianxi]# echo tanghailong >>jiuyingzhenjing 不能往里面写入内容
=======lsattr命令: 查看文件的隐藏属性
格式:lsattr [Rda] 文件或目录
常用命令选项
-R:递归修改
-d: 查看目录
=======SET位权限
主要用途:
为可执行(有 x 权限的)文件设置,权限字符为“s”
其他用户执行该文件时,将拥有属主或属组用户的权限
SET位权限类型:
SUID:表示对属主用户增加SET位权限 -->当某个命令具有suid权限位的时候,普通用户在执行这个命令的时候,会具有root用户的权限
SGID:表示对属组内的用户增加SET位权限
[root@teacher ~]# chmod u+s /usr/bin/tail 授予tail命令suid权限位
[root@teacher ~]# chmod u-s /usr/bin/tail 取消tail命令suid权限位
!!!建议不将所有的命令都赋予suid权限位,这样对系统不好,不安全!
应用示例:/usr/bin/passwd
[root@localhost ~]# ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root 19876 2006-07-17 /usr/bin/passwd
========粘滞位权限(Sticky)
主要用途:
为公共目录(例如,权限为777的)设置,权限字符为“t”
用户不能删除该目录中其他用户的文件 --->给某个目录设置粘滞位权限后,所有的用户互相之间不能删除别人的目录和文件,就算目录的权限为777.
应用示例:/tmp、/var/tmp
[root@localhost ~]# ls -ld /tmp /var/tmp
drwxrwxrwt 8 root root 4096 09-09 15:07 /tmp
drwxrwxrwt 2 root root 4096 09-09 07:00 /var/tmp
设置SET位、粘滞位权限
使用权限字符
chmod ug±s 可执行文件...
chmod o±t 目录名...
使用权限数字:
chmod mnnn 可执行文件...
m为4时,对应SUID,2对应SGID,1对应粘滞位,可叠加
-------------------------------------------------------
操作对象 特殊权限 功能
文件 SUID 以文件属主的权限执行文件
SGID 以文件属组的权限执行文件
文件夹 sticky 文件夹中新建的对象只有root和拥有者可以删除
SGID 文件夹中新建的对象都属于文件夹的属组
-------------------------------------------------------
ACL(Access Control List)
一个文件/目录的访问控制列表,可以针对任意指定的用户/组使用权限字符分配rwx权限
设置ACL:setfacl指令
格式: setfacl 选项 规则 文件
常用规则
格式:类型:特定的用户或组:权限
user:(uid/name):(perms) 指定某位使用者的权限
group:(gid/name):(perms) 指定某一群组的权限
other::(perms) 指定其它使用者的权限
mask::(perms) 设定有效的最大权限
======[root@sxkj ~]# setfacl -m u:hello:rw test.txt =>对特定用户赋予权限
[root@sxkj ~]# getfacl test.txt =>查看acl权限
[root@sxkj ~]# setfacl -m g:sxkj:rw test.txt =>对特定组赋予权限
[root@sxkj ~]# getfacl test.txt =>查看acl权限
常用选项
-m:新增或修改ACL中的规则
-b:删除所有ACL规则
-x:删除指定的ACL规则
查看ACL:getfacl指令
格式: getfacl 文件
======ACL类型
存取型ACL(Access ACL):文件或目录
预设型ACL(Default ACL):只能对目录
预设型ACL(Default ACL)
格式:setfacl –m default:类型:特定的用户或组:权限
setfacl –m d:类型:特定的用户或组:权限
设置了预设型ACL的目录,其下的所有文件或者子目录就都具有了主目录的ACL权限,并且子目录也同样有预设的ACl权限
----------------------------------------------------------------------------------------
drwxr-xr-x. 2 root root 12288 Apr 13 09:05 sbin
权限部分 . 代表这目录设置了selinux权限,受selinux权限策略的影响
selinux 是linux下为了保障linux的安全,使用的一套安全措施。
建议linux服务器将此功能禁用,因为太安全会影响机器的性能和我们实验的效果
=======
[root@teacher /]# getenforce --->查看selinux的状态
Disabled --->说明selinux禁用了
[root@localhost ~]# getenforce
Enforcing --->说明selinux是强制开启的状态
禁用步骤:
1.[root@teacher /]# vim /etc/sysconfig/selinux
S ELINUX=disabled 修改为disabled
2.重新启动机器,下次会自动禁用selinux
========临时让selinux无效
[root@localhost ~]# getenforce
Enforcing
[root@localhost ~]# setenforce 0
[root@localhost ~]# getenforce
Permissive
如果你使用getenforce 查看的selinux的状态是disabled 就不需要使用上面的命令了。