1. 特殊文件属性命令: chattr,lsattr(这个是产看文件属性的命令)
- 作用: 给文件或目录加锁不让改不让删除
- 语法:
chattr 选项 文件
- 选项属性
-
-i
个文件加锁不能删改 -
-a
可以追加内容
-
- 选项动作
-
-
减少 -
+
增加
-
- 练习: 给文件加锁-查看属性-更改文件-解锁-查看属性
[root@localhost ~] touch oldboy.txt [root@localhost ~] ls anaconda-ks.cfg day02_world_oldboy.sql oldboy oldboy.txt [root@localhost ~] chattr +i oldboy.txt [root@localhost ~] lsattr oldboy.txt ----i----------- oldboy.txt [root@localhost ~] rm -f oldboy.txt rm: cannot remove ‘oldboy.txt’: Operation not permitted [root@localhost ~] chattr -i oldboy.txt [root@localhost ~] lsattr oldboy.txt ---------------- oldboy.txt [root@localhost ~] rm -f oldboy.txt [root@localhost ~] ls anaconda-ks.cfg day02_world_oldboy.sql oldboy
- 生产应用: 想要快捷的对上锁的文件进行改动可以考虑使用脚本
[root@oldboyedu ~]vim /bin/test ##增加如下内容 chattr -i /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/sudoers $* chattr +i /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/sudoers
2. Linux 基本权限介绍
- 查看文件属性:
ls -l
- 9为权限分组:前三位用户权限,中间三位组权限,最后三位其它权限
- 权限表示方法:字符权限和数字权限
- 权限对应的字符、数字和位置
字符 作用 对应的数字权限 位置 r 可读 4 第一位 w 可写 2 第二位 x 可执行 1 第三位 - 无 0 任意位 - 如何更改权限
- 利用数字权限更改
- 语法:
chmod 换算后的数字组 文件路径
(-R递归修改) - 计算换算后的数字:将9位权限每隔三位看成一组, 每组数字按照上边的表格换成数字相加, 最后得到一个三位数
- 换算例子
- drwxrwxr-- 774
- -rw-r–r-x 645
- drwx–xr-x 715
- dr-xrwx–x 571
- d–xr-xrwx 157
- 语法:
- 利用字符更改
- 动作说明:
-
减少,+
增加 - 9位权限分组的表示符: 前三位
u
中三位g
后三位o
所有位a
- 语法:
chmod 位符号+动作符号+权限符号 操作文件
- 例子:
chmod u+rwx oldboy.txt
- 动作说明:
- 利用数字权限更改
3. Linux 特殊权限
- suid
- 权限内容: suid是针对命令来讲, 当设置之后任意用户都会有对该文件执行文件所有者的操作
- 设置方法:
chmod u+s 目录/文件
- 设置suid之后
ls -l
之后的状态:-rwsr-xr-x
或-rwSr–r--
(大S表示所有者也没有执行权限) - 常见的例子:
passwd
命令就被设置了suid,ping
命令也设置了suid
- sgid: 字符是s,在中三位
- 粘滞位: 字符是t,在后三位
4. 普通用户提权到root权限
- 方法一: test用户通过设置了suid的vim命令提权到root实践
- 必须root用户下操作
chmod u+s /bin/vim
- 必须test用户下操作
vim /etc/sudoers
增加如下内容test ALL=(ALL) NOPASSWD:ALL
- 切到root
sudo su -
- 必须root用户下操作
- 方法二
- 必须root用户下操作
chmod u+s /bin/vim
-
vim /etc/passwd
将test用户的行的UID改为0 - 重新登录test就是root
- 必须root用户下操作
- 方法三: 将test用户修改为属于wheel组
- 确定test的组id为20008
[test@oldboyedu ~]$ grep -w test /etc/passwd test:x:20008:20008::/home/test:/bin/bash
- 确定wheel组id为10
[test@oldboyedu ~]$ grep wheel /etc/group wheel:x:10:
- 修改组id为10
[test@oldboyedu ~]$ vim /etc/passwd test:x:20008:10::/home/test:/bin/bash
- 登录sudo
sudo su - ###需要test密码
- 确定test的组id为20008
5. 如何方式普通用户和web用户提权
- 禁止给命令设置suid
- 管理员不要去使用suid功能, 同时把无用的suid功能取消
- 应用软件PHP(/etc/php.ini配置)禁止开启读取系统文件等的函数
- 磁盘的挂载禁止suid
- 给关键文件加锁:
/etc/passwd
/etc/group
/etc/shadow
/etc/gshadow
/etc/sudoers
chmod 440 /etc/sudoers
- 看好/etc目录权限,防止文件被替换
- 文件权限统一
644
目录权限统一755
, 文件和目录对应的用户和组尽量都是root(不要设置成777) - web应用禁止上传特殊文件到系统目录
- 判断扩展名
- 上传后进行动静分离
- ssh监听内网, 禁止root远程连接, 通过vpn拨号跳板机连接
- 防火墙把ssh访问权限限制到内网或者办公网IP段
文章来源地址https://www.toymoban.com/news/detail-644282.html
文章来源:https://www.toymoban.com/news/detail-644282.html
到了这里,关于网络安全 Day11-Linux文件属性及权限知识的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!