网络安全系列之四十 在Linux中设置SET位权限

虽然通过ACL增加了权限设置的灵活性,但是Linux系统中可供设置的权限只有读、写、执行三种,在某些特殊的场合,这可能将无法满足要求。因而,在Linux系统中还提供了几种特殊的附加权限,用于为文件或目录提供额外的控制方式,可用的附加权限包括:SET位权限(SUID、SGID)和粘滞位权限(Sticky Bit)。本文将介绍SET位权限。

SET位权限多用于给可执行的程序文件或目录进行设置,其中SUID表示对所有者用户添加SET位权限,SGID表示对所属组内的用户添加SET位权限。当一个可执行文件被设置了SUID、SGID权限后,任何用户在执行该文件时,将获得该文件所有者、所属组相对应的权限。

SET位权限的权限字符为“s”,设置SET位权限同样要通过chmod命令实现,可以使用“u+s”、“g+s”的权限模式分别用于设置SUID、SGID权限。

设置SUID、SGID权限后,使用ls命令查看文件的属性时,对应位置的“x”将变为s,表示该文件在执行时将以所有者或所属组的身份访问系统。注意,如果文件原来位置有x权限,执行该命令后其权限字符为小写s;若文件原位没有x权限,则设置权限后将显示为大写字符S。

1)设置SUID

例:查看passwd命令所对应的程序文件的属性信息。


[[email protected] ~]# ll /usr/bin/passwd

-rwsr-xr-x. 1 root root 30768 2月 17 2012 /usr/bin/passwd

/usr/bin/passwd文件的权限是“rwsr-xr-x”,SET位权限设置在第一组,表示针对所有者用户设置,因而称为SUID。这样当其他用户执行passwd命令时,会自动以文件所有者root用户的身份去执行。

SUID仅能针对可执行文件设置,对于目录无效。

由于SUID权限会改变用户身份,这给系统带来了一定的安全隐患,因而一般不建议我们自己去设置SUID,但是系统中有不少默认已经设置了SUID权限的可执行文件,我们能了解其用途即可。

系统中常见的已经设置了SUID权限的可执行文件还包括:


[[email protected] ~]# ll /bin/su

-rwsr-xr-x. 1 root root 34904 4月 17 2012 /bin/su

[[email protected] ~]# ll /bin/mount

-rwsr-xr-x. 1 root root 76056 4月 6 2012 /bin/mount

[[email protected] ~]# ll /bin/ping

-rwsr-xr-x. 1 root root 40760 3月 22 2011 /bin/ping

例:去除/bin/ping的SUID权限:


[[email protected] ~]# chmod u-s /bin/ping

[[email protected] ~]# ll /bin/ping

-rwxr-xr-x 1 root root 37312 2009-04-24 /bin/ping

2)设置SGID

如果SET位权限设置在所属组所对应的第二组权限位时,那么就称为SGID。

SGID可以针对可执行文件设置,也可以针对目录设置,但是所表达的含义却截然不同:

  • 文件:如果针对文件设置SGID,则不论使用者是谁,他在执行该程序的时候,都将以文件所属组成员的身份去执行。
  • 目录:如果针对目录设置SGID,则在该目录内所建立的文件或子目录的所属组,将会自动成为此目录的所属组。

一般来说,SGID通常用于目录的权限设置。

例如,设置/home/test目录的所有者是student,所属组是users,权限是770,默认情况下在该目录下创建的文件的所有者和所属组都是创建者,如下所示。


[[email protected] ~]# ll -d /home/test

drwxrwx---. 2 student users 4096 12月 2 21:46 /home/test

[[email protected] ~]# touch /home/test/file1

[[email protected] ~]# ll /home/test

总用量 0

-rw-r--r--. 1 root root 0 12月 2 21:47 file1

为/home/test目录设置SGID权限,再在目录中创建文件时,文件的所属组将被自动设置为目录的所属组users,如下所示。


[[email protected] ~]# chmod g+s /home/test

[[email protected] ~]# ll -d /home/test

drwxrws---. 2 student users 4096 12月 2 21:47 /home/test

[[email protected] ~]# touch /home/test/file2

[[email protected] ~]# ll /home/test

总用量 0

-rw-r--r--. 1 root root 0 12月 2 21:47 file1

-rw-r--r--. 1 root users 0 12月 2 21:50 file2

SUID权限在生产环境中被广泛用于协同办公。当为目录设置了SUID权限之后,所有用户在该目录中创建的文件都将属于同一个用户组,这样只要是该组的成员都将自动拥有对文件的相应权限,以方便同组成员之间的文件修改和信息交流。

时间: 2024-10-14 18:23:10

网络安全系列之四十 在Linux中设置SET位权限的相关文章

网络安全系列之四十一 在Linux中设置粘滞位sbit权限

通常情况下用户只要对某个目录具备w写入权限,便可以删除该目录中的任何文件,而不论这个文件的权限是什么. 比如我们进行下面的操作: #创建/test目录,并赋予777权限. [[email protected] ~]# mkdir /test [[email protected] ~]# chmod 777 /test #以root用户的身份在/test目录中创建文件file1,并查看其默认权限. [[email protected] ~]# touch /test/file1 [[email p

网络安全系列之十二 Linux用户账号安全设置

用户账号是计算机使用者的身份凭证或标识,每一个要访问系统资源的人,必须凭借他的用户账号才能进入计算机.在Linux系统中,提供了多种机制来确保用户账号的正当.安全使用.合理地规划用户账号,并合理地分配权限,是保证Linux系统安全的第一步. 1. 清理系统账号在Linux系统中,一些程序在安装时会创建特有的用户和组,这些用户仅仅用于启动服务或运行进程,通常是不允许登录的,例如mysql.apache.named.news--.当攻击者假冒这些用户或组身份时,往往不易被管理员发现.对于这些系统账号

网络安全系列之四十五 在IIS6中配置虚拟目录

一个网站中的所有网页和相关文件都要存放在主目录下,为了对文件进行归类整理,也可以在主目录下面建立子文件夹,分别存放不同内容的文件,例如一个网站中,新闻类的网页放在主目录的news文件夹,技术类的网页文件放在主目录的tech文件夹,产品类的网页文件放在products文件夹等,这些直接存放在主目录下的子文件夹都称为物理目录. 如果物理目录的数量很多,主目录的空间可能会不足,因此也可以将上述文件存放在其它分区或者其它计算机上,而用户访问时上述文件夹在逻辑上还属于网站之下,这种归属于网站之下的目录称为

网络安全系列之四十八 在IIS6中配置日志

如果网站启用了日志记录,管理员就可以通过查看日志跟踪网站被访问的情况,如哪些用户访问了本站点.访问者查看了什么内容,以及最后一次查看该信息的时间等,可以使用日志来评估内容受欢迎程度或识别信息瓶颈,有时还可以通过日志查出非授权用户访问网站以便采取应对措施. 启用网站日志记录的方法是在"网站"选项卡中勾选"启用日志记录",单击旁边的"属性"按钮,打开属性设置界面,如图所示,可以看到日志文件产生的时间间隔和存放的位置.默认设置是每天产生一个日志文件.

网络安全系列之四十六 在IIS6中配置目录安全性

Web站点默认是允许匿名访问的,某些特殊网站(或者虚拟目录)如果要求用户提供账号和密码才能访问,或者限定某些IP地址能(或不能)访问,那可以通过在Web站点属性的"目录安全性"选项卡中进行相关设置以完成上述要求. (1)匿名用户 在"身份验证方法"界面中可以看到Web服务器默认启用了匿名访问功能,即客户端在访问Web站点时无需进行身份验证.匿名用户在Web服务器中也要有一个相对应的用户账号,这个用户账号是在安装IIS时一并创建的,用户名为"IUSR_计算机

网络安全系列之四十二 木马的原理及使用

木马是一种基于远程控制的黑客工具,具有很强的隐蔽性和危害性.一台被安装了木马的计算机就称为"肉鸡",黑客对肉鸡基本上是可以为所欲为的.黑客可以轻易地复制.删除.上传.下载肉鸡上的文件,还可以记录用户的每一个键盘操作,用户的QQ号.游戏账户和银行密码会被黑客轻易获得,甚至还可以控制用户的摄像头,因而木马的危害非常之大.本文以国内曾经鼎鼎大名的灰鸽子木马为例讲述木马的使用和防御,下载地址http://down.51cto.com/data/1901166 (1)木马基本原理 木马是一种典型

网络安全系列之十五 Linux日志管理1

Linux服务器一般都是被放置在机房中自动运行,管理员要了解服务器或是应用程序的运行状态,大都需要通过日志.日志文件用于记录Linux系统中各种运行消息,不同的日志文件记载了不同类型的信息,例如Linux内核消息.用户登录记录.程序错误等.日志文件对于诊断和解决系统中的问题很有帮助,因为在Linux系统中运行的程序通常会把系统消息和错误消息写入相应的日志文件,这样系统一旦出现问题就会有据可查.此外,当主机遭受攻击时,日志文件还可以帮助寻找攻击者留下的痕迹. 1. 主要日志文件 Linux系统本身

网络安全系列之四十七 在IIS6中申请并安装证书

之前通过设置基本身份验证,可以实现客户端在访问指定的虚拟目录时,必须要输入用户名和密码进行验证,但是基本身份验证的信息在网络中是明文传输的,我们可以通过为站点申请并安装证书,来实现数据的加密传输.实验环境中的CA证书服务器已经搭建好,这里只介绍在Web服务器上的证书申请和安装过程. (1)生成证书请求 在Web服务器上右击需要申请证书的网站,打开属性界面,选择"目录安全性"选项卡,并单击"服务器证书"按钮,如图所示. 在"IIS证书向导"中选择&

网络安全系列之四十三 在IIS6中配置ASP网站

本文将介绍如何在Win2003系统中通过IIS6.0来搭建一个ASP网站,网站数据库采用的是ACCESS,对于这类简单的小型数据库,无需安装数据库程序,只需直接配置IIS即可. 首先在添加删除组件中选择安装应用程序服务器,在安装过程中需要插入系统安装光盘: 安装完成后,打开IIS管理器,将默认站点停止运行,然后新建一个名为test的站点. 在创建站点时给予运行脚本权限. 站点创建完成后,设置站点属性,启用父路径.所谓父路径也就是在网页中允许使用"../"来代表上一级父目录. 在Web服