如何限制Linux内核级别的特权用户访问?

如何限制Linux内核级别的特权用户访问?,第1张

概述我在 learning Linux Kernel Programming找到了这个答案,我的问题更具体针对Linux内核的安全功能.我想知道如何限制特权用户或进程对其他进程和文件的访问权限,而不是root的完全访问权限. 直到现在我发现: >自由访问控制(DAC)的用户和组,区分读取,写入和执行用户,组和其他 >用户root用于更高权限的任务 > setuid和setgid用于扩展用户的DAC并设 我在 learning Linux Kernel Programming找到了这个答案,我的问题更具体针对linux内核的安全功能.我想知道如何限制特权用户或进程对其他进程和文件的访问权限,而不是root的完全访问权限.

直到现在我发现:

>自由访问控制(DAC)的用户和组,区分读取,写入和执行用户,组和其他
>用户root用于更高权限的任务
> setuID和setgID用于扩展用户的DAC并设置呼叫过程的组/用户ID,例如用户运行具有root权限的Ping以打开linux套接字
>细粒度权利的能力,例如删除suID位并设置cap_net_raw
>控制组(Cgroup)以限制对资源(即cpu,网络,io设备)的访问
>命名空间,用于分隔IPC,文件系统,pID上的进程视图
> Secure Computing(Seccomp)限制系统调用
> linux安全模块(LSM),用于添加其他安全功能,如强制访问控制,例如: SElinux与类型执行

清单是否完整?在编写问题时,我发现fanotify监视文件系统事件,例如用于反病毒扫描.可能有更多安全功能可用.

是否有更多linux安全功能可以从文件或进程内部或外部以可编程方式使用以限制特权访问?也许有一个完整的清单.

解决方法 传统的unix方法限制一个过程,该过程以某种方式需要更多特权并且包含它以使其不能使用超过它所需要的更多特权来“chroot”它.

chroot改变了进程的明显根.如果做得对,它只能访问新创建的chroot环境中的那些资源(aka.chroot jail)
例如它只能访问这些文件,但也只能访问那些设备等.

创建一个自愿地做到这一点的过程相对容易,并不常见.

创建一个环境,其中现有的软件(例如网络服务器,邮件服务器……)在家中感觉并且仍然正常运行是需要经验的事情.主要的是找到所需的最小资源集(共享库,配置文件,设备,依赖服务(例如syslog),……).

总结

以上是内存溢出为你收集整理的如何限制Linux内核级别的特权用户访问?全部内容,希望文章能够帮你解决如何限制Linux内核级别的特权用户访问?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1029645.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存