在可执行文件上取消设置“ setcap”附加功能


15

一个答案Linux的:允许用户收听低于1024的端口指定给使用一个可执行附加的权限setcap,使得程序可以结合端口<1024:

setcap 'cap_net_bind_service=+ep' /path/to/program

撤消这些权限的正确方法是什么?

Answers:


19

要从文件中删除功能,请使用-r标志

setcap -r /path/to/program

这将导致程序无功能。


好了,在重新阅读了该短man页面之后,这一点更加明显了。>
user2943160 '16

11

@ stephen-harris发表的内容是正确的。但是我相信它可以一次性删除添加到程序中的所有功能。要删除特定功能,可以执行以下操作(遵循问题中的示例)

setcap 'cap_net_bind_service=-ep' /path/to/program

注意“-”号。您可以通过以下方法来验证可执行文件的{命令效果}功能:

getcap /path/to/program

对于setcap -r,所有功能都将消失,getcap的结果将为空,因为'-ep'会删除您用'+ ep'添加的内容。当您提供多种功能并希望有选择地删除它们时,它会派上用场。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.