Отключить дополнительные возможности `setcap` на excutable


15

Ответ на Linux: позволяя пользователь слушать порт ниже 1024 , указанного давая исполняемые дополнительные разрешения , используя setcapтаким образом, что программа может связываться с портами <1024:

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

Как правильно отменить эти разрешения?

Ответы:


19

Чтобы удалить возможности из файла, используйте -rфлаг

setcap -r /path/to/program

Это приведет к тому, что программа не будет иметь никаких возможностей.


Ну, это стало намного более очевидным после перечитывания этой короткой manстраницы>.>
user2943160

11

То, что написал @ Стивен-Харрис, правильно. Но я считаю, что это удаляет все возможности, добавленные в программу за один раз. Чтобы удалить конкретную возможность, будет работать следующее (следуя примеру в вопросе)

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

Обратите внимание на знак «-». Вы можете проверить возможности {эффекта команд} над исполняемым файлом следующим образом:

getcap /path/to/program

В случае setcap -r все возможности исчезнут, и результат getcap будет пустым, тогда как '-ep' просто удаляет то, что вы добавили с помощью '+ ep'. Удобно, когда вы дали несколько возможностей и хотите выборочно удалить их.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.