Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 615

Linux Capabilities

Что такое Linux Capabilities?

Linux CapabilitiesФункция ядра Linux на базе черновика POSIX.1e, разбивающая всемогущие права root на более чем 40 дискретных привилегий, выдаваемых процессам и файлам по отдельности.


Linux capabilities появились в ядре 2.2, чтобы устранить бинарное разделение «непривилегированный пользователь — всемогущий root». Ядро предоставляет около 40 дискретных привилегий — CAP_NET_BIND_SERVICE, CAP_SYS_ADMIN, CAP_NET_ADMIN, CAP_DAC_OVERRIDE, CAP_SYS_PTRACE и др. — которые можно выдавать процессам или прописывать как file capabilities у исполняемых файлов. Они следуют черновику POSIX.1e. В пользовательском пространстве libcap предоставляет инструменты capsh (просмотр и изменение набора capabilities оболочки), getcap и setcap (чтение/назначение capabilities файлам) и getpcaps. Контейнерные среды Docker и containerd по умолчанию оставляют подмножество (без CAP_SYS_ADMIN, но с CAP_NET_BIND_SERVICE), а Pod Security Standards Kubernetes ужесточают их ещё сильнее. Capabilities являются фундаментом принципа наименьших привилегий на Linux-серверах и в нагрузках в духе CNCF.

Примеры

  1. 01

    Выдача нерутовому процессу только CAP_NET_BIND_SERVICE, чтобы он мог слушать TCP-порт 80 без прав root.

  2. 02

    Команда "capsh --print" в контейнере подтверждает, что CAP_SYS_ADMIN отозван.

Частые вопросы

Что такое Linux Capabilities?

Функция ядра Linux на базе черновика POSIX.1e, разбивающая всемогущие права root на более чем 40 дискретных привилегий, выдаваемых процессам и файлам по отдельности. Относится к категории Идентификация и доступ в кибербезопасности.

Что означает Linux Capabilities?

Функция ядра Linux на базе черновика POSIX.1e, разбивающая всемогущие права root на более чем 40 дискретных привилегий, выдаваемых процессам и файлам по отдельности.

Как работает Linux Capabilities?

Linux capabilities появились в ядре 2.2, чтобы устранить бинарное разделение «непривилегированный пользователь — всемогущий root». Ядро предоставляет около 40 дискретных привилегий — CAP_NET_BIND_SERVICE, CAP_SYS_ADMIN, CAP_NET_ADMIN, CAP_DAC_OVERRIDE, CAP_SYS_PTRACE и др. — которые можно выдавать процессам или прописывать как file capabilities у исполняемых файлов. Они следуют черновику POSIX.1e. В пользовательском пространстве libcap предоставляет инструменты capsh (просмотр и изменение набора capabilities оболочки), getcap и setcap (чтение/назначение capabilities файлам) и getpcaps. Контейнерные среды Docker и containerd по умолчанию оставляют подмножество (без CAP_SYS_ADMIN, но с CAP_NET_BIND_SERVICE), а Pod Security Standards Kubernetes ужесточают их ещё сильнее. Capabilities являются фундаментом принципа наименьших привилегий на Linux-серверах и в нагрузках в духе CNCF.

Как защититься от Linux Capabilities?

Защита от Linux Capabilities обычно сочетает технические меры и операционные практики, как описано в определении выше.

Какие есть другие названия Linux Capabilities?

Распространённые альтернативные названия: POSIX-capabilities, Linux caps.

Связанные термины

См. также