iis服务器助手广告广告
返回顶部
首页 > 资讯 > 操作系统 >如何实现LINUX中文件系统的权限修改与安全设置
  • 122
分享到

如何实现LINUX中文件系统的权限修改与安全设置

2023-06-13 02:06:49 122人浏览 独家记忆
摘要

这篇文章主要讲解了“如何实现linux中文件系统的权限修改与安全设置”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何实现LINUX中文件系统的权限修改与安全设置”吧!  一、锁定系统重要文

这篇文章主要讲解了“如何实现linux中文件系统的权限修改与安全设置”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何实现LINUX中文件系统的权限修改与安全设置”吧!

  一、锁定系统重要文件

  系统运维人员有时候可能会遇到通过root用户都不能修改或者删除某个文件的情况,产生这种情况的大部分原因可能是这个文件被定了。在Linux下锁定文件的命令是chattr,通过这个命令可以修改ext2、ext3、ext4文件系统下文件属性,但是这个命令必须有超级用户root来执行。和这个命令对应的命令是lsattr,这个命令用来查询文件属性。

  通过chattr命令修改文件或者目录的文件属性能够提高系统的安全性,下面简单介绍下chattr和lsattr两个命令的用法。

  chattr命令的语法格式如下:

  chattr [-RV] [-v version] [mode] 文件或目录主要参数含义如下:

  -R:递归修改所有的文件及子目录。

  -V:详细显示修改内容,并打印输出。

  其中mode部分用来控制文件的属性,常用参数如下表所示:

  参数含义

  +在原有参数设定基础上,追加参数

  -在原有参数设定基础上,移除参数

  =更新为指定参数

  a即append,设定该参数后,只能向文件中添加数据,而不能删除。常用于服务器日志文件安全,只有root用户才能设置这个属性c即compresse,设定文件是否经压缩后再存储。读取时需要经过自动解压操作i即immutable,设定文件不能被修改、删除、重命名、设定链接等,同时不能写入或新增内容。这个参数对于文件系统的安全设置有很大帮助s安全的删除文件或目录,即文件被删除后硬盘空间被全部收回u与s参数相反,当设定为u时,系统会保留其数据块以便以后能够恢复删除这个文件。这些参数中,最常用到的是a和i,a参数常用于服务器日志文件安全设定,而i参数更为严格,不允许对文件进行任何操作,即使是root用户lsattr用来查询文件属性,用法比较简单,其语法格式如下:

  lsattr [-adlRvV] 文件或目录

  常用参数如下表所示。

  参数含义

  -a列出目录中的所有文件,包括以.开头的文件-d显示指定目录的属性

  -R以递归的方式列出目录下所有文件及子目录以及属性值-v显示文件或目录版本

  在Linux系统中,如果一个用户以root的权限登录或者某个进程以root的权限运行,那么它的使用权限就不再有任何的限制了。因此,攻击者通过远程或者本地攻击手段获得了系统的root权限将是一个灾难。在这种情况下,文件系统将是保护系统安全的最后一道防线,合理的属性设置可以最大限度地减小攻击者对系统的破坏程度,通过chattr命令锁定系统一些重要的文件或目录,是保护文件系统安全最直接、最有效的手段。

  对一些重要的目录和文件可以加上“i”属性,常见的文件和目录有:

  chattr -R +i /bin /boot /lib /sbin

  chattr -R +i /usr/bin /usr/include /usr/lib /usr/sbinchattr +i /etc/passwd

  chattr +i /etc/shadow

  chattr +i /etc/hosts

  chattr +i /etc/resolv.conf

  chattr +i /etc/fstab

  chattr +i /etc/sudoers

  对一些重要的日志文件可以加上“a”属性,常见的有:

  chattr +a /var/log/messages

  chattr +a /var/log/wtmp

  对重要的文件进行加锁,虽然能够提高服务器的安全性,但是也会带来一些不便,例如,在软件的安装、升级时可能需要去掉有关目录和文件的immutable属性和append-only属性,同时,对日志文件设置了append-only属性,可能会使日志轮换(logrotate)无法进行。因此,在使用chattr命令前,需要结合服务器的应用环境来权衡是否需要设置immutable属性和append-only属性。

  另外,虽然通过chattr命令修改文件属性能够提高文件系统的安全性,但是它并不适合所有的目录。chattr命令不能保护/、/dev、/tmp、/var等目录。

  根目录不能有不可修改属性,因为如果根目录具有不可修改属性,那么系统根本无法工作:/dev在启动时,syslog需要删除并重新建立/dev/log套接字设备,如果设置了不可修改属性,那么可能出问题;/tmp目录会有很多应用程序和系统程序需要在这个目录下建立临时文件,也不能设置不可修改属性;/var是系统和程序的日志目录,如果设置为不可修改属性,那么系统写日志将无法进行,所以也不能通过chattr命令保护。

  虽然通过chattr命令无法保护/dev、/tmp等目录的安全性,但是有另外的方法可以实现,在面将做详细介绍。

  二、文件权限检查和修改

  不正确的权限设置直接威胁着系统的安全,因此运维人员应该能及时发现这些不正确的权限设置,并立刻修正,防患于未然。下面列举几种查找系统不安全权限的方法。

  (1)查找系统中任何用户都有写权限的文件或目录查找文件:find / -type f -perm -2 -o -perm -20 |xargs ls -al查找目录:find / -type d -perm -2 -o -perm -20 |xargs ls –ld(2)查找系统中所有含“s”位的程序

  find / -type f -perm -4000 -o -perm -2000 -print | xargs ls –al含有“s”位权限的程序对系统安全威胁很大,通过查找系统中所有具有“s”位权限的程序,可以把某些不必要的“s”位程序去掉,这样可以防止用户滥用权限或提升权限的可能性。

  (3)检查系统中所有suid及sgid文件

  find / -user root -perm -2000 -print -exec md5sum {} \;find / -user root -perm -4000 -print -exec md5sum {} \;

  将检查的结果保存到文件中,可在以后的系统检查中作为参考。

  (4)检查系统中没有属主的文件

  find / -nouser -o –nogroup

  没有属主的孤儿文件比较危险,往往成为黑客利用的工具,因此找到这些文件后,要么删除掉,要么修改文件的属主,使其处于安全状态。

  三、/tmp、/var/tmp、/dev/shm安全设定

  在Linux系统中,主要有两个目录或分区用来存放临时文件,分别是/tmp和/var/tmp。存储临时文件的目录或分区有个共同点就是所有用户可读写、可执行,这就为系统留下了安全隐患。攻击者可以将病毒或者木马脚本放到临时文件的目录下进行信息收集或伪装,严重影响服务器的安全,此时,如果修改临时目录的读写执行权限,还有可能影响系统上应用程序的正常运行,因此,如果要兼顾两者,就需要对这两个目录或分区就行特殊的设置。

  /dev/shm是Linux下的一个共享内存设备,在Linux启动的时候系统默认会加载/dev/shm,被加载的/dev/shm使用的是tmpfs文件系统,而tmpfs是一个内存文件系统,存储到tmpfs文件系统的数据会完全驻留在RAM中,这样通过/dev/shm就可以直接操控系统内存,这将非常危险,因此如何保证/dev/shm安全也至关重要。

  对于/tmp的安全设置,需要看/tmp是一个独立磁盘分区,还是一个根分区下的文件夹,如果/tmp是一个独立的磁盘分区,那么设置非常简单,修改/etc/fstab文件中/tmp分区对应的挂载属性,加上nosuid、noexec、nodev三个选项即可,修改后的/tmp分区挂载属性类似如下:

  LABEL=/tmp     /tmp          ext3    rw,nosuid,noexec,nodev   0 0其中,nosuid、noexec、nodev选项,表示不允许任何suid程序,并且在这个分区不能执行任何脚本等程序,并且不存在设备文件。

  在挂载属性设置完成后,重新挂载/tmp分区,保证设置生效。

  对于/var/tmp,如果是独立分区,安装/tmp的设置方法是修改/etc/fstab文件即可;如果是/var分区下的一个目录,那么可以将/var/tmp目录下所有数据移动到/tmp分区下,然后在/var下做一个指向/tmp的软连接即可。也就是执行如下操作:

  [root@server ~]# mv /var/tmp/* /tmp

  [root@server ~]# ln -s  /tmp /var/tmp

  如果/tmp是根目录下的一个目录,那么设置稍微复杂,可以通过创建一个loopback文件系统来利用Linux内核的loopback特性将文件系统挂载到/tmp下,然后在挂载时指定限制加载选项即可。一个简单的操作示例如下:

  [root@server ~]# dd if=/dev/zero of=/dev/tmpfs bs=1M count=10000[root@server ~]# mke2fs -j /dev/tmpfs

  [root@server ~]# cp -av /tmp /tmp.old

  [root@server ~]# mount -o loop,noexec,nosuid,rw /dev/tmpfs /tmp[root@server ~]# chmod 1777 /tmp

  [root@server ~]# mv -f /tmp.old/* /tmp/

  [root@server ~]# rm -rf /tmp.old

  最后,编辑/etc/fstab,添加如下内容,以便系统在启动时自动加载loopback文件系统:

  /dev/tmpfs /tmp ext3 loop,nosuid,noexec,rw 0 0

  为了验证一下挂载时指定限制加载选项是否生效,可以在/tmp分区创建一个shell文件,操作如下:

  [root@tc193 tmp]# ls -al|grep shell

  -rwxr-xr-x   1 root root    22 Oct  6 14:58 shell-test.sh[root@server ~]# pwd

  /tmp

  [root@tc193 tmp]# ./shell-test.sh

  -bash: ./shell-test.sh: Permission denied可以看出,虽然文件有可执行属性,但是已经在/tmp分区无法执行任何文件了。

  最后,再来修改一下/dev/shm的安全设置。由于/dev/shm是一个共享内存设备,因此也可以通过修改/etc/fstab文件设置而实现,在默认情况下,/dev/shm通过defaults选项来加载,对保证其安全性是不够的,修改/dev/shm的挂载属性,操作如下:

  tmpfs   /dev/shm    tmpfs   defaults,nosuid,noexec,rw  0 0

感谢各位的阅读,以上就是“如何实现LINUX中文件系统的权限修改与安全设置”的内容了,经过本文的学习后,相信大家对如何实现LINUX中文件系统的权限修改与安全设置这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: 如何实现LINUX中文件系统的权限修改与安全设置

本文链接: https://www.lsjlt.com/news/264638.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何实现LINUX中文件系统的权限修改与安全设置
    这篇文章主要讲解了“如何实现LINUX中文件系统的权限修改与安全设置”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何实现LINUX中文件系统的权限修改与安全设置”吧!  一、锁定系统重要文...
    99+
    2023-06-13
  • linux系统中怎么修改文件权限
    这篇文章给大家介绍linux系统中怎么修改文件权限,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作。文件或目录的访问...
    99+
    2023-06-28
  • Linux系统中怎么设置文件权限
    Linux系统中怎么设置文件权限,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1.读 — 允许该分组读文件(用r表示)2.写 — 允...
    99+
    2023-06-12
  • Linux中怎么设置文件系统权限
    本篇文章给大家分享的是有关Linux中怎么设置文件系统权限,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。  一、锁定系统重要文件  系统运维人员有时候可能会遇到通过root用户...
    99+
    2023-06-13
  • Linux系统如何设置目录和文件权限
    这篇文章主要为大家展示了Linux系统如何设置目录和文件权限,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带大家一起来研究并学习一下“Linux系统如何设置目录和文件权限”这篇文章吧。在Linux系统中目录和文件的权限作用是...
    99+
    2023-06-28
  • Linux系统的文件权限怎么设置
    今天小编给大家分享一下Linux系统的文件权限怎么设置的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1、文件类型共七种:d&...
    99+
    2023-06-28
  • Linux系统中如何永久修改USB设备权限
    Linux系统中如何永久修改USB设备权限,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。有时我们再Linux上运行USB HPS时会遇到gpsd错误,因为gpsd没有访问权...
    99+
    2023-06-28
  • 怎么在Linux系统中设置文件权限
    本篇文章给大家分享的是有关怎么在Linux系统中设置文件权限,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。什么是Linux系统Linux是一种免费使用和自由传播的类UNIX操作...
    99+
    2023-06-07
  • 如何在Linux中设置文件权限
    今天就跟大家聊聊有关如何在Linux中设置文件权限,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 Linux中,每一个文件都具有特定的属性。主要包括文件类型和文件权限两个方...
    99+
    2023-06-13
  • Linux系统修改文件权限的命令是什么
    这篇文章跟大家分析一下“Linux系统修改文件权限的命令是什么”。内容详细易懂,对“Linux系统修改文件权限的命令是什么”感兴趣的朋友可以跟着小编的思路慢慢深入来阅读一下,希望阅读后能够对大家有所帮助。下面跟着小编一起深入学习“Linux...
    99+
    2023-06-28
  • Centos7系统如何使用chmod修改文件权限
    这篇文章将为大家详细讲解有关Centos7系统如何使用chmod修改文件权限,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。  Centos7操作系统中文件分用户(user)权限,组(group)权限,其他...
    99+
    2023-06-04
  • Linux中如何设置文件权限和所有权
    在Linux中,可以使用chmod命令来设置文件的权限,使用chown命令来设置文件的所有权。 设置文件权限: 使用chmod...
    99+
    2024-04-02
  • win7系统如何批量修改文件和文件夹权限右键没有安全选项卡
    深度win7系统批量修改文件和文件夹权限的方法分享给大家,有不少用户发现这样一个问题,就是想要对多个文件夹或文件设置权限的时候,当选中这些文件夹和文件之后,鼠标右击打开属性界面的时候,并没有安全选项卡,这样就无法修改其权...
    99+
    2023-06-06
    win7 批量修改 文件夹权限 文件夹 文件 权限 右键 系统
  • Linux系统修改文件权限的具体方法是什么
    Linux系统修改文件权限的具体方法是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Linux系统中一切皆为文件,所以文件的管理非常重要,每一个文件都有特定...
    99+
    2023-06-28
  • Windows系统中的文件系统NTFS及权限设置介绍
    Windows系统中的文件系统 一.  在Windows系统中有过三种文件系统:       FAT16(只能应用于16系统,比如DOS,单个分区最大2GB),...
    99+
    2023-05-30
    NTFS 权限设置 Windows 系统 文件系统 权限
  • Linux命令中怎样进行文件的安全与权限
    本篇文章为大家展示了Linux命令中怎样进行文件的安全与权限,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.ls -l 命令:最前面的一位表示文件类型:d   目录。l&nbs...
    99+
    2023-06-13
  • Linux系统中怎么设置备份和恢复文件权限
    今天就跟大家聊聊有关Linux系统中怎么设置备份和恢复文件权限,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1. 安装ACL工具在Debian, Ubuntu,Linux Mint上...
    99+
    2023-06-12
  • Linux如何设置文件和文件夹的读写权限
    目录权限说明常见的权限修改权限总结权限说明 ls -l <文件名> -rw-rw-r-- 一共有10位数,其中: 最前面那个 - 代表的是类型(-文件 d 文件夹)中间那三个 rw- 代表的是所有者(u...
    99+
    2023-10-28
    Linux文件读写权限 Linux文件夹读写权限 Linux设置读写权限
  • 如何在Linux中使用chmod命令修改文件权限
    如何在Linux中使用chmod命令修改文件权限?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。语法:chmod [who] [+ | - | =] [mode]...
    99+
    2023-06-13
  • 如何设置CentOS系统以限制用户对关键系统文件的访问权限
    要设置CentOS系统以限制用户对关键系统文件的访问权限,可以使用以下步骤:1. 登录到CentOS系统,并以root用户身份执行以...
    99+
    2023-10-09
    CentOS
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作