用户:linux
任何用户被分配一个独特的用户id号(UID) (UID 0标识root用户 用户帐号一般从UID 1000开始(在redhat6及以前的版本,从500开始)) 。 安全
用户名和UID信息一般存储在/etc/passwd文件中 。 ui
当用户登陆时它被分配一个主目录而且运行一个程序。进程
没有权限许可用户不能读取、写或执行其它用户的文件(这对root用户无效)。ip
组:it
用户指派给组(linux的组是不能嵌套的。redhat7中,已经再也不限制用户分配的组的数量;5版本及以前的版本,单个用户最多隶属于32个组。) 。 登录
每个组被分配一个独特的组ID(gid) 。 file
GID保存在/etc/group中。 rust
每个用户都有本身的私有组。 权限
同一个组中的全部用户能共享属于这个组的文件。
用户和组ID数字:
用户名映射到用户ID数字(ll -n)。
组名映射到组ID数字。
存储在硬盘上的数据是数字形式存储。
linux文件安全:
每个文件都属于一个UID和GID全部
任何进程运行时都带一个uid和一个或多个gid标识符(一般决定于哪一个用户执行这个进程)
三种访问类别: 1. 运行的进程跟文件有着一样的UID(user) 2. 运行的进程跟文件有着一样的GID(group) 3.其它进程(other)
权限优先:
若是UID匹配,用户权限适用(优先级最高);不然,若是GID匹配,组权限适用(优先级其次);若是都不匹配,其它权限适用(优先级最低)。
权限类型:
在显示权限的时候用到的四个符号( r:容许读取文件或者显示一个目录下的全部内容; w:容许写文件或者在一个目录中建立和删除文件; x:容许执行一个应用程序或者进入一个目录列出它下面的全部内容(若是没有x权限,对于目录来讲,上面两种权限就没有意义,没法使用) -:没有任何权限(在r,w或者x的显示位置))。
检查权限:
经过ls -l可查看文件权限。
$ls -l /bin/login -rwxr-xr-x. 1 root root 1980 Apr 1 18:26 /bin/login
文件类型和权限经过11个字符来表示(第一个-号为文件类型符;中间九个被称为文件权限位,每三个一组(用户,组,其它);最后一位"."被称为acl状态符)。
示例: -rwxr-x---. 1 andersen trusted 2948 Oct 11 14:07 myscript
myscript文件的全部者andersen具备读取、写和执行权限 ,trusted组成员对它具备读取和执行权限,其它用户或组对它不具备任何访问权限,未设置ACL权限。
改变文件全部权:
只有root用户能改变一个文件的全部者
只有root用户或者全部者能改变文件的组(全部者只能将文件的组改到全部者所隶属于的组的范围中,不能改到全部者不属于的组中)
经过chown命令改变用户全部权(能够同时改变文件的拥有者和拥有组) chown [-R] user_name file|directory...
经过chgrp命令改变组全部权 chgrp [-R] group_name file|directory...
改变权限-符号方法:
改变访问模式:chmod [-R] mode file
模式包括 u,g或者o表示文件所属用户,组以及其它用户 +或者-表示容许或者禁止 r,w或者x表示读取,写和执行。
示例: chmod ugo+r file :容许全部用户对该文件具备读取权限
改变权限-数字方法:
使用三位数字模式 第一位数字指定全部者权限 ; 第二位数字指定所属组权限 ; 第三位数字表示其它用户的权限。权限经过累加的方式来计算: 4(读取),2(写),1(执行),0(无权限)
示例: chmod 640 myfile
改变权限-Nautilus:
Nautilus能设置文件或者目录的权限以及组成员
在Nautilus窗口中,右键单击一个文件 右键菜单中选择‘属性’,而后选择‘权限’tab
默认许可:
对目录来讲默认许可777是最小的掩码
对于文件默认许可同目录默认许可,可是没有执行权限,即666
掩码经过umask命令设置
非特权用户的掩码是002:那么文件将有许可664 目录将有许可775
root的掩码是022
例: 用root建立目录,默认生成的是777-022=755
赋执行权限:
suid:命令运行时具备命令全部者权限,不是命令的执行者(仅做用在命令上)(经过chmod u+s赋权限)(大写S表示该文件原先没有执行x权限,小写s表示文件原先具备执行x权限。)
sgid:命令运行时具备命令所在组权限的合并(可用在命令,也可用在目录上)(经过chmod g+s赋权限)
给目录赋权限:
sticky bit(只做用于目录)(经过chmod o+t给目录赋权限)。带有sticky bit的目录,目录中的文件只能被全部者或者root删除
sgid: 在带有sgid位设置的目录下建立的文件有目录的组的权限的累加