avatar

tetsai

原创声明

本文由tetsai原创,转载请注明来源

Linux kernel 3.2,root用户可以通过命令行,限制用户读取/proc目录,达到隐藏其他用户进程的目的

原理

Linux中,进程信息的读取并不是通过系统的API,而是通过各种虚拟文件、目录组成的信息,所以/proc目录并不是真正的文件,而是方便读取信息而虚拟出来的文件

ps命令和top命令就是读取了/proc里的信息,所以hidepid的本质就是限制了/proc读取的内容。

hidepid 参数内容

hidepid一共有三种保护级别

  1. hidepid=0 - 经典模式 - 不作任何隐藏,谁都能看/proc/*下的文件,也就是说完全透明,任何用户都知道其他用户运行了什么进程
  2. hidepid=1 - 敏感保护 - 文件夹/proc/下例如cmdline, sched*, status等敏感文件不允许被访问
  3. hidepid=2 - 强力保护 - 每个用户只能知道它自己的进程(root账户或进程组除外,进程组默认是root组

内核保护:操作方法

用root执行下面的命令立即生效:

# mount -o remount,rw,hidepid=2 /proc

也可以修改/etc/fstab,这样每次开机自动生效

# nano /etc/fstab
添加
proc    /proc    proc    defaults,hidepid=2     0     0

保存退出即可。

效果:

进阶用法

在,hidepid=2后改成,hidepid=2,gid=,可以设置进程组

也就是说这个组的所有用户可以像root一样读取所有进程信息

参考资料:https://blog.csdn.net/ly890700/article/details/62428955

发表评论

电子邮件地址不会被公开。 必填项已用*标注