时间:2016年7月14日服务器
地点:家里spa
内容:用户身份与能力、useradd、groupadd、usermod、passwd、userdel、文件权限与归属、特殊权限、文件隐藏、ACL、su与sudo3d
用户身份与能力
管理员UID为0:系统的管理员用户。
系统用户UID为1~999: Linux系统为了不因某个服务程序出现漏洞而被黑客提权至整台服务器,默认服务程序会有独立的系统用户负责运行,进而有效控制被破坏范围。
普通用户UID从1000开始:是由管理员建立的用于平常工做的用户。
useradd useradd命令用于建立新的用户,格式为“useradd [选项] 用户名”。
注意:当用户的解释器被设定为nologin时,该用户则不能登陆到系统。blog
groupadd groupadd命令用于建立用户组,格式为“groupadd [选项] 群组名”。
usermod usermod命令用于修改用户的属性,格式为“usermod [选项] 用户名”。
passwd passwd命令用于修改用户密码、过时时间、认证信息等,格式为“passwd [选项] [用户名]”。
userdel userdel命令用于删除用户,格式为“userdel [选项] 用户名”。
文件权限与归属
尽管在Linux系统中一切都是文件,可是每一个文件的类型不尽相同,所以Linux系统使用了不一样的字符来加以区分,常见的字符以下所示。继承
-:普通文件。get
d:目录文件。it
l:连接文件。登录
b:块设备文件。变量
c:字符设备文件。权限
p:管道文件。
文件权限表示
在ls -l下查看的文件属性信息
特殊权限
SUID:1. 让二进制程序的执行者临时拥有属主的权限(仅对拥有执行权限的二进制程序有效)。
SGID:1. 让执行者临时拥有属组的权限(对拥有执行权限的二进制程序进行设置); 2. 在某个目录中建立的文件自动继承该目录的用户组(只能够对目录进行设置)。
SBIT(保护位): 确保用户只能删除本身的文件,而不能删除其余用户的文件。
chmod chmod命令是一个很是实用的命令,可以用来设置文件或目录的权限,格式为“chmod [参数] 权限 文件或目录名称”。
chown 设置文件或目录的全部者和所属组, 其格式为“chown [参数] 全部者:所属组 文件或目录名称”。
user : 新的档案拥有者的使用者 ID
group : 新的档案拥有者的使用者群体(group)
-c : 若该档案拥有者确实已经更改,才显示其更改动做
-f : 若该档案拥有者没法被更改也不要显示错误讯息
-h : 只对于连结(link)进行变动,而非该 link 真正指向的档案
-v : 显示拥有者变动的详细资料
-R : 对目前目录下的全部档案与子目录进行相同的拥有者变动(即以递回的方式逐个变动)
文件隐藏
chattr chattr命令用于设置文件的隐藏权限,格式为“chattr [参数] 文件”。若是想要把某个隐藏功能添加到文件上,则须要在命令后面追加“+参数”,若是想要把某个隐藏功能移出文件,则须要追加“-参数”。
lsattr lsattr命令用于显示文件的隐藏权限,格式为“lsattr [参数] 文件”。
ACL
setfacl setfacl命令用于管理文件的ACL规则,格式为“setfacl [参数] 文件名称”。
注意: 看到文件的权限最后一个点(.)变成了加号(+),这就意味着该文件已经设置了ACL了。
getfacl getfacl命令用于显示文件上设置的ACL信息,格式为“getfacl 文件名称”。
su su命令能够解决切换用户身份的需求,使得当前用户在不退出登陆的状况下,顺畅地切换到其余用户
*注意: su命令与用户名之间有一个减号(-),这意味着彻底切换到新的用户,即把环境变量信息也变动为新用户的相应信息,而不是保留原始的信息。
sudo sudo命令用于给普通用户提供额外的权限来完成本来root管理员才能完成的任务,格式为“sudo [参数] 命令名称”。
visudo 格式为“谁可使用 容许使用的主机=(以谁的身份) 可执行命令的列表”
书面笔记