Juniper Network Connect(VPNクライアント)が変更されないようにし、/etc/resovl.conf
systemd-runを介してこれを達成しようとしています。私は試した:
systemd-run --property=ReadOnlyDirectories=/etc ./ncsvc -h <redacted> -u <redacted> -p <redacted> -f <redacted>.der -L 2
次のエラーメッセージが表示されます。
Unknown assignment ReadOnlyDirectories=/etc.
Failed to create bus message: No such device or address
簡単な例を実行しても同じメッセージが表示されます。
systemd-run --property=ReadOnlyDirectories=/etc env
systemd-runを使用してプロセスを実行し、ReadOnlyDirectoriesを設定する方法は?
答え1
まだすべてのプロパティを設定することはできませんが、この問題を解決するためにTODOリストにあります。
ここで:
* allow implementation of InaccessibleDirectories=/ plus ReadOnlyDirectories=... for whitelisting files for a service.
そしてここ:
* document: ... - document in wiki how to map ical recurrence events to systemd timer unit calendar specifications - add a man page containing packaging guidelines and recommending usage of things like Documentation=, PrivateTmp=, PrivateNetwork= and ReadOnlyDirectories=/etc /usr. - document systemd-journal-flush.service properly ...
引用する
答え2
プロセスを実行しsystemd-run
てReadOnlyDirectories
そこから設定できますv228
:
以前は、ユニットファイルでのみ設定されていた多くのプロパティが、バスを介してプログラム的に一時ユニットを作成するときにプロパティ設定としても使用できるようになりました。これは
systemd-run
--setting によって公開property=
されるからです。具体的にはSyslogIdentifier=
、、、、、、、、、、、、、です。SyslogLevelPrefix=
TimerSlackNSec=
OOMScoreAdjust=
EnvironmentFile=
ReadWriteDirectories=
ReadOnlyDirectories=
InaccessibleDirectories=
ProtectSystem=
ProtectHome=
RuntimeDirectory=
答え3
これがあなたにとって適切な解決策であるかどうかはわかりませんが、chattr +i /etc/resolv.conf
ファイルを変更できないようにして、誰もファイルを変更できないようにします。ルートも同様です。