【问题标题】:Using setcap in linux [closed]在 linux 中使用 setcap [关闭]
【发布时间】:2011-12-13 05:25:27
【问题描述】:

要将 cap_net_raw 功能添加到(例如 /bin/ping),我们使用以下内容:

#setcap cap_net_raw=ep /bin/ping

ep是什么意思,为什么这里需要?

【问题讨论】:

标签: linux ubuntu-11.04


【解决方案1】:

这会在“有效”(e) 和“允许”(p) 能力集中设置CAP_NET_RAW 位。这两个集合与“可继承”集合一起管理进程拥有或可以设置的功能。

在这里查看更多:

capabilities - Linux man page

能力集

每个线程都有三个能力集,其中包含零个或多个 以上能力:

Effective - 内核使用的能力 对线程执行权限检查。

Permitted - 能力 线程可以假设(即,一个限制超集 有效和可继承的集合)。如果一个线程从 它的允许集,它永远不能重新获得该能力(除非它 exec() 是一个 set-user-ID-root 程序)。

inheritable - 能力 在 execve(2) 中保存。通过 fork(2) 创建的孩子继承 其父级能力集的副本。请参阅下面的讨论 exec() 期间对功能的处理。使用 capset(2),一个线程 可以操纵自己的能力集,或者,如果它有 CAP_SETPCAP 能力,另一个进程中的线程的能力。

【讨论】:

    猜你喜欢
    • 2012-04-08
    • 2017-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-05
    • 2020-03-26
    • 1970-01-01
    • 2011-04-11
    相关资源
    最近更新 更多