web-dev-qa-db-ja.com

setcap-changesは永続的ですか

ファイルにsetcapを使用する場合、この変更は永続的ですか、それともブート時にsetcapを呼び出す必要がありますか?

setcap cap_sys_Nice fooexecutable
10
Michael K

ファイル上の setcap は、 setxattr への呼び出しで拡張属性に capacities を保存します。この拡張属性は、他の属性(所有権、権利...)ファイルシステム内。

カーネル2.6.24以降、カーネルはsetcap(8)を使用して機能セットと実行可能ファイルの関連付けをサポートしています。ファイル機能セットは、security.capabilityという名前の拡張属性(setxattr(2)を参照)に保存されます。

そのため、リブートするたびに上限をリセットする必要はありません。

14
Cédric Julien

変更は永続的ですが、nodejsと共に使用すると問題が発生します。

authbindを使用して、ユーザーごとに許可を与えることができます

Sudo touch /etc/authbind/byport/80
Sudo chown user:user /etc/authbind/byport/80
Sudo chmod 500 /etc/authbind/byport/80
0
pcnate