- 用户身份及文件权限
- 操纵用户的命令
- useradd
- 格式为"useradd [选项] 用户名"。
- groupadd
- groupadd 命令用于创建用户组,格式为"groupadd [选项] 群组名"
- usermod 命令用于修改用户的属性,格式为"usermod [选项] 用户名"。
- usermod ( modify a user account)
- usermod [选项] 用户名"。
-
?
?
- userdel
- userdel 命令用于删除用户,格式为"userdel [选项] 用户名"。
- passwd
- passwd [选项] [用户名]
?
?
- passwd [选项] [用户名]
- useradd
- Linux文件类型
- 三种用户分类
- 文件所有者
- 文件所属组
- 其他用户
- 文件都有所属的所有者和组。
- 可读,可写,可执行。
- 可读表示可以读取里面的内容
- 可写表示能够增加,修改,删除文件的实际内容。
- 可执行表示能够执行脚本文件。
- 目录也有相应的权限,但是表示方法不一样。
- 主要的内容是记录文件名列表和子目录列表,而不是实际存放数据的地方。
- 可读 :表示可以读取目录,知道里面存在哪些文件,例如文件名和子目录名称
- 可写:
- 新建新的文件或子目录。
- 删除以及存在的文件或子目录。(所以能否删除文件看到是是否对文件夹具有权限。
- 重命名已经存在的文件或子目录。
- 转移该文件或子目录的位置。
- 可执行:拥有该目录x权限的用户可以进入该目录成为工作目录。能不能进入一个目录,只与该目录的x权限有关,如果用户对于某个目录不具有x权限,则无法切换到该目录下,也就无法执行该目录下的任何命令,即使具有该目录的r权限。且如果用户对于某目录不具有x权限,则该用户不能查询该目录下的文件的内容,注意:指的是内容,如果有r?权限是可以查看该目录下的文件名列表或子目录列表的。所以要开放目录给任何人浏览时,应该至少要给与r及x权限
- 问题: 对目录只有可读权限,对文件有可写权限,能否修改文件内容?
- -rwxrw-r-- 1 root root 2048 Jan 13 07:11 afile.exe 以上权限位置的含义
- file permissions,
number of links,
owner name,
owner group,
file size,
time of last modification, and
file/directory name
File permissions is displayed as following;
- first character is - or l or d, d indicates a directory, a line represents a file, l is a symlink (or soft link) - special type of file
three sets of characters, three times, indicating permissions for owner, group and other:
r = readable
w = writable
x = executable
In your example -rwxrw-r--, this means the line displayed is:
- a regular file (displayed as -)
readable, writable and executable by owner (rwx)
readable, writable, but not executable by group (rw-)
readable but not writable or executable by other (r--)
- file permissions,
- SUID,SGID,SBIT特殊权限位。
- SUID(Set Owner User ID) 是一种对二进制程序进行设置的特殊权限,可以让二进制程序的执行者临时拥有属主的权限(仅对拥有执行权限的二进制程序有效)。比如一个普通用户要执行passwd来修改密码,但是实际上,普通用户属于Other并没有权限,关键在于在执行过程中可以获得
- SUID满足以下几点
- SUID只对二进制文件有效
- 调用者对该文件有执行权
- 在执行过程中,调用者会暂时获得该文件的所有者权限
- 该权限只在程序执行的过程中有效
- 他的标志是,在文件所有者的权限位上,x表示为s
- SGID
- 让执行者临时拥有属组的权限(对拥有执行权限的二进制程序进行设置);
- 在某个目录中创建的文件自动继承该目录的用户组(只可以对目录进行设置)。
- 使用什么命令来修改权限
- chmod 修改权限
- chmod [参数] 权限文件或目录名称 chmod 760 test
- chown 修改所有者和所属组
- chmod [参数] 权限文件或目录名称
- chmod 修改权限
- SBIT
- SBIT(Sticky Bit)特殊权限位了(也可以称之为特殊权限位之粘滞位)。
- BIT 特殊权限位可确保用户只能删除自己的文件,而不能删除其他用户的文件。换句话说,当对某个目录设置了SBIT 粘滞位权限后,那么该目录中的文件就只能被其所有者执行删除操作了。
- 这个权限保护位是对目录使用的。
- 标志在其他用户,文件的其他人权限部分的x 执行权限就会被替换成t 或者T,原本有x 执行权限则会写成t,原本没有x 执行权限则会被写成T。
- chmod o+t 目录位置
- SUID(Set Owner User ID) 是一种对二进制程序进行设置的特殊权限,可以让二进制程序的执行者临时拥有属主的权限(仅对拥有执行权限的二进制程序有效)。比如一个普通用户要执行passwd来修改密码,但是实际上,普通用户属于Other并没有权限,关键在于在执行过程中可以获得
- 文件的隐藏属性
- 无法被用户察觉。
- chattr修改隐藏属性。
- 如果想要把某个隐藏功能添加到文件上,则需要在命令后面追加"+参数"。
- 如果想要把某个隐藏功能移出文件,则需要追加"-参数"。
- chattr [参数] 文件
-
?
? - lsattr用于显示文件的隐藏权限。
- lsattr [参数] 文件
- 一般权限、特殊权限、隐藏权限其实有一个共性—权限是针对某一类用户设置的。
- 文件访问控制列表
- ACL:用以对单个指定的用户进行单独的权限控制。基于普通文件或目录设置ACL 其实就是针对指定的用户或用户组设置文件或目录的操作权限。
- 在所属用户和用户组不变的情况下,等于是为其他用户增加权限,相对细。
- 命令 setfacl ( set file acl )
- "setfacl [参数] 文件名称" 例子 setfacl -Rm u:linuxprobe:rwx /root
- 命令 getfacl 获得文件的access control list
- su 命令与sudo 服务:
- su (run a command with substitute 替代 user and group ID)
- 上面的su 命令与用户名之间有一个减号(-),这意味着完全切换到新的用户,即把环境变量信息也变更为新用户的相应信息,而不是保留原始的信息。强烈建议在切换用户身份时添加这个减号(-)
- sudo (execute a command as another user)给普通用户提供额外的权限来完成原本root 管理员才能完成的任务,格式为"sudo [参数] 命令名称"
- sudo是一个服务
- sudo的配置原则:用户的最小权限原则。
- 限制用户执行指定的命令:
- 记录用户执行的每一条命令;
- 配置文件(/etc/sudoers)提供集中的用户管理、权限与主机等参数;
- 验证密码的后5 分钟内(默认值)无须再让用户再次验证密码。
- 如何配置sudo?
- visudo 类似Vim界面
- 谁可以使用 允许使用的主机=(以谁的身份) 可执行命令的列表
- linuxprobe ALL=(ALL) ALL
- ALL 意思是:某个普通用户拥有整个系统中所有命令的最高执行权
?
?
原文地址:https://www.cnblogs.com/Black-cat0987/p/12158916.html
时间: 2024-11-03 18:22:24