oracle删除本地文件权限,使用 UNIX 权限保护文件

使用 UNIX 权限保护文件

通过 UNIX 文件权限和 ACL 可保证文件安全。带 sticky 位的文件和可执行文件要求特殊的安全措施。

用于查看和保证文件安全的命令

下表介绍了用于监视以及保证文件和目录安全的命令。

表 7-1 保证文件和目录安全的命令

命令

说明

手册页

ls

列出目录中的文件及其有关信息。

chown

更改文件的所有权。

chgrp

更改文件的组所有权。

chmod

更改文件的权限。可以使用符号模式(使用字母和符号)或绝对模式(使用八进制数字)更改文件的权限。

文件和目录的所有权

传统的 UNIX 文件权限可以为三类用户指定所有权:

用户-文件或目录的所有者,通常为创建该文件的用户。文件的所有者可以决定谁拥有读取文件、写入文件(对文件进行更改)或执行文件(如果该文件为命令)的权限。

组-一组用户的成员。

其他用户-所有其他不是文件所有者和组成员的用户。

文件所有者通常可以指定或修改文件权限。此外,root 帐户可以更改文件的所有权。要覆盖系统策略,请参见示例 7-2。

文件可以是七种类型之一。每种类型由一个符号显示:-(减号)

文本或程序

b

块特殊文件

c

字符特殊文件

d

目录

l

符号链接

s

套接字

D

P

命名管道 (FIFO)

UNIX 文件权限

下表列出并说明了可以为文件或目录的每类用户授予的权限。

表 7-2 文件和目录权限

符号

权限

对象

说明

r

文件

指定的用户可以打开和读取文件内容。

目录

指定的用户可以列出目录中的文件。

w

文件

指定的用户可以修改文件的内容或删除该文件。

目录

指定的用户可以在目录中添加文件或链接。这些用户也可以删除目录中的文件或链接。

x

执行

文件

指定的用户可以执行文件(如果该文件为程序或 shell 脚本)。这些用户也可以使用一个 exec(2) 系统调用来运行程序。

目录

指定的用户可以打开或执行目录中的文件。这些用户也可以使该目录以及该目录下的目录成为当前目录。

-

拒绝

文件和目录

指定的用户无法读写或执行文件。

这些文件权限可应用于常规文件,也可应用于特殊文件(如设备、套接字和命名管道 (FIFO))。

对于符号链接,所应用的权限为链接指向的文件权限。

通过对目录设置受限文件权限,可以保护该目录及其子目录中的文件。但是请注意,超级用户有权访问系统中的所有文件和目录。

特殊文件权限(setuid、setgid 和 Sticky 位)

可执行文件和公共目录可以使用三种特殊类型的权限:setuid、setgid 和 sticky 位。设置这些权限之后,运行可执行文件的任何用户都应采用该可执行文件所有者(或组)的 ID。

设置特殊权限时必须非常小心,因为特殊权限会带来安全风险。例如,通过执行将用户 ID (user ID, UID) 设置为 0(root 的 UID)的程序,用户可以获取超级用户功能。此外,所有用户可以为其拥有的文件设置特殊权限,这会带来其他安全问题。

应对系统中未经授权使用 setuid 权限和 setgid 权限获取超级用户功能的情况进行监视。可疑权限为用户而不是 root 或 bin 授予管理程序的所有权。要搜索并列出所有使用此特殊权限的文件,请参见如何查找具有特殊文件权限的文件。

setuid 权限

对可执行文件设置 setuid 权限时,将对运行该文件的进程授予基于文件所有者的访问权限。该访问权限不是基于正在运行可执行文件的用户。使用此特殊权限,用户可以访问通常只有属主才可访问的文件和目录。

例如,passwd 命令的 setuid 权限使用户可以更改口令。具有 setuid 权限的 passwd 命令类似如下:-r-sr-sr-x 3 root sys 28144 Jun 17 12:02 /usr/bin/passwd

此特殊权限会带来安全风险。一些确定的用户甚至可以在 setuid 进程执行完毕后,找到保持由该进程授予他们的权限的方法。

注 -在程序中使用具有保留 UID (0–100) 的 setuid 权限可能无法正确设置有效的 UID。请使用 shell 脚本或避免将保留的 UID 用于 setuid

权限。

setgid 权限

setgid 权限与 setuid 权限类似。可将进程的有效组 ID (group ID, GID) 更改为拥有该文件的组,并基于授予该组的权限对用户授予访问权限。/usr/bin/mail 命令具有 setgid 权限:-r-x--s--x 1 root mail 67504 Jun 17 12:01 /usr/bin/mail

将 setgid 权限应用于目录时,该目录中已创建的文件将属于该目录所属于的组。这些文件不属于创建进程所属于的组。在目录中拥有写和执行权限的任何用户都可以在其中创建文件。但是,文件将属于拥有该目录的组,而不是用户所属于的组。

应对系统中未经授权使用 setgid 权限获取超级用户功能的情况进行监视。可疑权限为非常规组而不是 root 或 bin 授予对此类程序的组访问权限。要搜索并列出所有使用此权限的文件,请参见如何查找具有特殊文件权限的文件。

Sticky 位

sticky 位是保护目录中文件的权限位。如果对目录设置了 sticky 位,则只有文件所有者、目录所有者或特权用户才可以删除文件。root 用户是特权用户的一个示例。sticky 位禁止用户从公共目录(如 /tmp)中删除其他用户的文件:drwxrwxrwt 7 root sys 400 Sep 3 13:37 tmp

在 TMPFS 文件系统中设置公共目录时,务必手动设置 sticky 位。有关说明,请参见示例 7-5。

缺省 umask 值

创建文件或目录时,将使用一组缺省权限进行创建。系统缺省值为空。文本文件具有 666 权限,该权限对所有用户授予读写权限。目录和可执行文件具有 777 权限,该权限对所有用户授予读写和执行权限。通常,用户会覆盖其 shell 初始化文件(如 .bashrc 和 .kshrc.user)中的系统缺省值。管理员还可以设置 /etc/profile 文件中的缺省值。

由 umask 命令指定的值将从缺省值中减去。此进程的作用是以 chmod 命令授予权限的相同方式拒绝这些权限。例如,chmod 022 命令对组和其他用户授予写权限。umask 022 命令拒绝组和其他用户的写权限。

下表显示了一些典型 umask 值及其对可执行文件的影响。

表 7-3 不同安全级别的 umask 设置

安全级别

umask 设置

禁用的权限

许可 (744)

022

w(组和其他用户)

中等 (740)

027

w(组),rwx(其他用户)

中等 (741)

026

w(组),rw(其他用户)

严重 (700)

077

rwx(组和其他用户)

有关设置 umask 值的更多信息,请参见 umask(1) 手册页。

文件权限模式

使用 chmod 命令,可以更改文件的权限。您必须是超级用户或是文件或目录的所有者,才能更改其权限。

可以使用 chmod 命令按照以下两种模式之一设置权限:

绝对模式-使用数字表示文件权限。使用绝对模式更改权限时,由八进制模式数字表示每个三元字节权限。绝对模式是设置权限的最常用方法。

符号模式-使用字母和符号的组合来添加或删除权限。

下表列出了在绝对模式下设置文件权限的八进制值。可按顺序以三个一组的形式,使用这些数字来设置所有者、组和其他用户的权限。例如,值 644 为所有者设置读写权限,为组和其他用户设置只读权限。

表 7-4 在绝对模式下设置文件权限

八进制值

设置文件权限

权限说明

0

---

无权限

1

--x

仅执行权限

2

-w-

只写权限

3

-wx

写和执行权限

4

r--

只读权限

5

r-x

读和执行权限

6

rw-

读写权限

7

rwx

读写和执行权限

下表列出了用于在符号模式下设置文件权限的符号。符号可以指定要设置或更改其权限的用户、要执行的操作,以及要指定或更改的权限。

表 7-5 在符号模式下设置文件权限

符号

功能

说明

u

who

用户(所有者)

g

who

o

who

其他用户

a

who

All(全部)

=

operator

赋值

+

operator

新增

-

operator

删除

r

permissions

w

permissions

x

permissions

执行

l

permissions

强制锁定,setgid 位打开,组执行位关闭

s

permissions

setuid 或 setgid 位打开

t

permissions

Sticky 位打开,对于其他用户,执行位打开

功能列中的名称 who operator permissions 指定用于更改文件或目录的权限的符号。who

指定要更改其权限的用户。

operator

指定要执行的操作。

permissions

指定要更改的权限。

可以在绝对模式或符号模式下设置文件的特殊权限。但是,必须使用符号模式设置或删除目录的 setuid 权限。在绝对模式下,通过在权限三元字节的左侧添加新的八进制值,可设置特殊权限。下表列出了用于对文件设置特殊权限的八进制值。

表 7-6 在绝对模式下设置特殊文件权限

八进制值

特殊文件权限

1

Sticky 位

2

setgid

4

setuid

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/308354.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

7-43 字符串关键字的散列映射 (25 分)(思路+详解+不懂的兄弟们来呀)兄弟们我干了5个小时,一个一个测试点过的

一:题目 7-43 字符串关键字的散列映射 (25 分) 给定一系列由大写英文字母组成的字符串关键字和素数P,用移位法定义的散列函数H(Key)将关键字Key中的最后3个字符映射为整数,每个字符占5位;再用除留余数法将整数映射到长度为P的散列…

C#刷剑指Offer | 在O(1)时间删除链表节点

【C#刷题】| 作者 / Edison Zhou我们来用之前学到的数据结构知识来刷《剑指Offer》的一些核心题目(精选了其中30道题目),希望对你有帮助!本文题目为:在O(1)时间删除链表节点。1题目介绍题目:给定单向链表的…

oracle计算最大与最小之间数,oracle 分析函数

oracle分析函数,主要五大类一等级函数:row_number();DENSE_RANK();Rank()主要就是遇到相同排名时的区别,查询各部门职位级别最高的2个人select * from (select rybm,rymc,zzjgid,zwdj,row_number() over(partition by zzjgid order by zwjb desc ) rw f…

7-44 基于词频的文件相似度 (30 分)(思路加详解+set容器简便做法)兄弟们冲呀呀呀呀呀 今天你AC了吗

一:题目 实现一种简单原始的文件相似度计算,即以两文件的公共词汇占总词汇的比例来定义相似度。为简化问题,这里不考虑中文(因为分词太难了),只考虑长度不小于3、且不超过10的英文单词,长度超过…

堪称艺术品级的应用开发框架,Abp有望超越Spring?

ABP是ASP.NET Boilerplate的简称,是一个开源且文档友好的应用程序框架。ASP.NET Boilerplate是一个用最佳实践和流行技术开发现代WEB应用程序的新起点,它旨在成为一个通用的WEB应用程序框架和项目模板。ASP.NET Boilerplate 基于DDD的经典分层架构思想&a…

7-45 航空公司VIP客户查询 (25 分)(思路+详解+map用法解释+超时解决)兄弟们来呀冲压呀呀呀呀

一:题目 不少航空公司都会提供优惠的会员服务,当某顾客飞行里程累积达到一定数量后,可以使用里程积分直接兑换奖励机票或奖励升舱等服务。现给定某航空公司全体会员的飞行记录,要求实现根据身份证号码快速查询会员里程积分的功能…

linux sed 写文件,使用sed对文件进行操作

使用sed对文件进行操作[日期:2012-12-07]来源:Linux社区作者:bobo12082119[字体:大 中 小]一.附加文本使用a\在指定行后面附加1行或多行;若不指定放置的位置,则默认放到每一行的后面。附加文本时&#xff0…

修复被破坏的 vs 工程设置(续)

缘起 在上一篇文章——《修复被破坏的 vs 工程设置》中,我分享了修复被破坏的 vs 工程设置的实战。本以为圆满解决了问题,没想到另有玄机。所以又来分享一篇刨根问底的文章。查看文件 打开 Microsoft.Cpp.Win32.user.props 一看,里面并没有任…

linux find查找文件然后删除,linu查找find命令及删除7天前的文件

在/ l o g s目录中查找更改时间在7日以前的文件并删除它们: $ find logs/ -type f -mtime 7 -exec rm -f {} \; 在/ l o g s目录中查找更改时间在7日以内的文件并删除它们: $ find logs/ -type f -mtime -7 -exec rm -f {} \; 然后加入的计划任务中每日执…

7-46 新浪微博热门话题 (30 分)(思路+详解+set + map)pta逐个点过的 来呀兄弟们

一 :题目 新浪微博可以在发言中嵌入“话题”,即将发言中的话题文字写在一对“#”之间,就可以生成话题链接,点击链接可以看到有多少人在跟自己讨论相同或者相似的话题。新浪微博还会随时更新热门话题列表,并将最热门的…

工作十余年,还是一直被问 委托和事件 有什么区别? 真是够了

一:背景1. 讲故事前几天公司一个妹子问我,事件和委托有什么区别?先由衷感叹一下,编码十余年,年轻的时候常被面试官问起,现在年长了,却被后辈们时常问候,看样子逃离编码生涯之前是跑不…

7-47 打印选课学生名单 (25 分)(两种做法)(思路加详解+map+vector做法+最后一个点超时解决)+兄弟们冲丫丫

一:题目 假设全校有最多40000名学生和最多2500门课程。现给出每个学生的选课清单,要求输出每门课的选课学生名单。 输入格式: 输入的第一行是两个正整数:N(≤40000),为全校学生总数;K&#xf…

linux取设备分辨率,linux 获取系统屏幕分辨率

三步将Node应用部署到Heroku上Heroku是一个提供快速部署服务的云平台.支持Node,Ruby,Java,PHP,Python,Go多种语言,今天体验了下,简直不要太爽.下面简单的介绍一下. 首先还是要注册一个账号:https: ...jQuery操作Table tr td常用的方法虽然现在DIVCSS进行页的布局大行其道,但是很…

SwaggerUI看烦了,IGeekFan.AspNetCore.Knife4jUI 帮你换个新皮肤

背景好像是上周四,看到微信群有人说java有轮子swagger-bootstrap-ui,而c#,就是找不到。于是我一看,就说大话:“这个只是一套UI,他这个有开源地址么”被at说:你试试...当天晚上就把swagger-ui, Knife4j,Swas…

7-48 银行排队问题之单窗口“夹塞”版 (30 分)(思路和详解+map做法)来呀Baby!

一:题目 排队“夹塞”是引起大家强烈不满的行为,但是这种现象时常存在。在银行的单窗口排队问题中,假设银行只有1个窗口提供服务,所有顾客按到达时间排成一条长龙。当窗口空闲时,下一位顾客即去该窗口处理事务。此时如…

linux 启动程序 绑定id,linux如何根据进程ID查找启动程序的路径

昨天遇到一个问题,背景是这样的:我们工作环境不正常,使用ps命令查看,发现有程序A的两个进程状态一个是状态,一个是正常运行.由于该程序A是个通用服务程序,被拷贝成多份,分发到不同的目录中单独启动,只有各自配置不同而已,因此想知道是哪个目录的A程序处于僵死状态.正常运行中的…

7-49 打印学生选课清单 (25 分)(思路+详解+map做法(一对多)+超时解决)Come baby!

一:题目 假设全校有最多40000名学生和最多2500门课程。现给出每门课的选课学生名单,要求输出每个前来查询的学生的选课清单。 输入格式: 输入的第一行是两个正整数:N(≤40000),为前来查询课表的学生总数&…

记一次批量处理数据库中的敏感信息

前言 对于一些敏感数据,往往会对其加密后再入库,这个是对数据安全性的一个最为简单的措施。最常见的莫过于手机号码和身份证号了,相信还是有不少公司对这些敏感信息是明文存储的。万一被别人发现系统漏洞,或者是被拖库&#xff0c…

修改linux路径,科学网-修改linux终端路径颜色-胡涛的博文

PuTTY或者Terminal路径默认颜色非常难看,如何修改?第一步,配置文件:命令行:dircolors -p > ~/.dircolors第二步,修改文件:使用vi打开~/.dircolors 文件,找到这一行: D…

7-50 畅通工程之局部最小花费问题 (35 分)(思路加详解)来呀兄弟们冲呀呀呀呀呀呀呀

一:题目 某地区经过对城镇交通状况的调查,得到现有城镇间快速道路的统计数据,并提出“畅通工程”的目标:使整个地区任何两个城镇间都可以实现快速交通(但不一定有直接的快速道路相连,只要互相间接通过快速…