サービス ファイルで CapabilityBoundingSet オプションを使用して、ルート ユーザーの機能を削減しようとしています。とにかく、ルートがファイルを書き込むのを防ぐことはできないようです。
たとえば、次のサービス ファイルを使用します。
$ cat test.service
[Unit]
Description=Test
After=basic.target
[Service]
ExecStart=/bin/sh -c "echo 172 > /target"
CapabilityBoundingSet=CAP_DAC_READ_SEARCH
したがって、この元のファイルがある場合:
$ cat /target
I am the original file
$ systemctl start test.service
$ cat /target
172
$ whoami
root
私のカーネルのバージョンは 3.1.10 です。
空のセットやその他の機能も試しましたが、機能しません.何が問題なのですか?