在一个典型的Linux系统中,至少有两个目录或分区保持着临时文件。其中之一是/tmp目录,再者是/var/tmp。在更新的Linux内核的系统中,还可能有/dev/shm,它是用tmpfs文件系统装载的。

存储临时文件的目录存在着一个问题,即这些目录可以成为损害系统安全的僵尸和rootkit的温床。

这是因为在多数情况下,任何人(或任何过程)都可以向这些目录写入东西,还有不安全的许可问题。我们知道都sticky bit,该位可以理解为防删除位。如果希望用户能够添加文件但同时不能删除文件, 则可以对文件使用sticky bit位。设置该位后,就算用户对目录具有写权限,也不能删除该文件。

多数Linux发行版本在临时目录上设置sticky位,这意味着用户A不能清除属于用户B的一个文件,反之亦然。但是,根据文件自身的许可,用户A有可能查看并修改那个文件的内容。

一个典型的Linux安装将/tmp设置为mode 1777,这意味着它设置了sticky位,并且可被所有的用户读取、写入、执行。

多数情况下,这如同其设置的安全一样,主要是因为/tmp目录仅仅是一个目录,而不是一个自己的文件系统。/tmp目录依赖于/分区,这样一来它也就必须遵循其装载选项。

一个更加安全的解决方案可能是将/tmp设置在其自己的分区上,这样一来它就可以独立于/分区装载,并且可以拥有更多的限制选项。

/tmp分区的/etc/fstab项目的一个例子看起来是这样的:

/dev/sda7 /tmp ext3 nosuid,noexec,nodev,rw 0 0

这就设置了nosuid、noexec、nodev选项,意味着不允许任何suid程序,从这个分区不能执行任何内容,并且不存在设备文件。

你可以清除/var/tmp目录,并创建一个symlink指向/tmp目录,如此一来,/var/tmp中的临时文件就可以利用这些限制性的装载选项。

/dev/shm虚拟文件系统也需要保障其安全,这可以通过改变/etc/fstab而实现。典型情况下,/dev/shm通过defaults选项加载,对保证其安全性是很不够的。

就像/tmp的fstab一样,它应当具备限制性更强的加载选项:

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

在一个典型的Linux系统中,至少有两个目录或分区保持着临时文件。其中之一是/tmp目录,再者是/var/tmp。

在更新的Linux内核的系统中,还可能有/dev/shm,它是用tmpfs文件系统装载的。

全部

linux临时文件放哪,如何保障Linux的临时文件安全?相关推荐

  1. linux后台运行快捷键,Linux命令放入后台运行方法(和Ctrl+Z)详解版

    Linux 命令放入后台的方法有两种,分别介绍如下. "命令 &",把命令放入后台执行 第一种把命令放入后台的方法是在命令后面加入 空格 &.使用这种方法放入后台的 ...

  2. linux 输出内容自适应到界面,云网牛站推出平板及移动版页面,自适应版面全面保障Linux用户的阅读...

    云网牛站在2019年11月初正式上线了平板及移动版自适应页面,目的是关照使用平板及手机阅读网站内容的Linux用户,尽管采用手机上Linux网站的用户较少,但是为了长远发展我们做了调整. 以往云网牛站 ...

  3. bash: 无法为立即文档创建临时文件: 权限不够_世界顶级Linux大牛耗时三年总结出3000页Linux文档...

    众所皆知的,Linux的核心原型是1991年由托瓦兹(Linus Torvalds)写出来的,但是托瓦兹为何可以写出Linux这个操作系统?为什么它要选择386的计算机来开发?为什么Linux的发展可 ...

  4. linux cat eof如何指定变量,Linux cat和EOF的使用

    在某些场合,可能我们需要在脚本中生成一个临时文件,然后把该文件作为最终文件放入目录中.(可参考ntop.spec文件)这样有几个好处,其中之一就是临时文件不是唯一的,可以通过变量赋值,也可根据不同的判 ...

  5. Linux基于bash命令实验报告,Linux操作系统实验报告1

    Linux操作系统实验报告1 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3.该文档所 ...

  6. Linux 学习--一篇就学懂Linux(万字长文)

    Linux 学习笔记 Linux 学习笔记 一. 常用命令 LINUX常用操作命令和命令行编辑快捷键 终端快捷键: Ctrl + a/Home 切换到命令行开始 Ctrl + e/End 切换到命令行 ...

  7. linux下如何安装软件?——linux应用软件安装包类型及安装介绍

    原文:http://blog.chinaunix.net/uid-24612962-id-3181499.html 一.解析Linux应用软件安装包,通常Linux应用软件的安装包有四种: 1) ta ...

  8. 大数据学习笔记之Linux基础(一):Linux初窥

    文章目录 一.Linux入门概述 1.1 概述 1.2 下载地址 1.3 Linux特点 1.4 Linux和Windows区别 二.VM安装相关 2.1 安装VMWare虚拟机 2.2 安装Cent ...

  9. 从串口驱动到Linux驱动模型,想转Linux的必会!

    关注.星标公众号,直达精彩内容 ID:技术让梦想更伟大 整理:李肖遥 本文通过对Linux下串口驱动的分析.由最上层的C库.到操作系统系统调用层的封装.再到tty子系统的核心.再到一系列线路规程.再到 ...

  10. 每天一个linux命令(23):Linux 目录结构

    对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下面 ...

最新文章

  1. pandoc文档书写
  2. 数据库多表连接查询详解
  3. Cpp / Hash 所得字符串转成 Hex 字符串。
  4. C#中DictionaryTKey,TValue排序方式
  5. 解决asp.net(C#)中 DataTime 空值 null为0001-01-01
  6. SQL server 2012 如何取上个月的最后一天
  7. Delphi识别读取验证码
  8. 信息奥赛一本通(1096:数字统计)
  9. 2017.10.18 开店 失败总结
  10. Linux的netstat命令使用
  11. Windows 活动目录(AD)服务器系统升级到2012之最终域控服务器安装(五)
  12. Maven——安装(二)
  13. 那位有epson R1900中文清零软件?
  14. 两种播放m3u8链接的方法
  15. chrome应用程序无法正常启动0x0000005
  16. 做一行就要把一行的本质研究透
  17. React Native入门——布局实践:开发京东客户端首页(一
  18. 鸣人来教你安装配置JDK
  19. 1.Windows环境配置
  20. 保存地理坐标信息的SLIC分割结果

热门文章

  1. ACM/ICPC 大赛常见英语词汇
  2. 阿里云服务器怎么登陆
  3. 用Python做股市数据分析(二)
  4. Backtrader系列教程⑦:可视化篇(重构)
  5. linux系统的一点感触
  6. 百度离线地图金字塔瓦片发布
  7. gyb的常用lazyCopy
  8. 使用mysql解决Excel换行统计问题
  9. POI excel 单元格换行
  10. JS魔法堂:深究JS异步编程模型