ユニットにはさまざまなオプション(サービスなど)があります。システム。そのうち3つはReadWriteDirectories
、ReadOnlyDirectories
と呼ばれますInaccessibleDirectories
。私は仮想マシンでDebian 8.5を使用しています。一部 (最新?) バージョンの systemd ではReadWritePaths
、ReadOnlyPaths
と呼ばれますInaccessiblePaths
。このオプションを使用してアクセスできるディレクトリをホワイトリストに追加できますか?
特定のディレクトリにのみアクセスできることが知られているアプリケーションがあります。このディレクトリへのアクセスを制限したいと思います。しかし、このディレクトリを指定するために使用すると、ReadWritePaths
何の効果もないようです。これマンページ説明する
ReadWriteDirectories =にリストされているディレクトリは、名前空間内でアクセスでき、外部と同じアクセス権を持ちます。
ただし、このオプションに指定されていないディレクトリは同じ方法でアクセスできるようです。指定されていないすべてのコンテンツへのアクセスを拒否する方法は?それとも私のシステムが動作しないのでしょうか?新しいバージョンのマンページを除くすべての項目をブラックリストに追加することが可能であると考えることもできますInaccessibleDirectories=/
(オプションが呼び出されます)InaccessiblePaths
。
InaccessiblePaths =にリストされている項目は名前空間内のプロセスにアクセスできず、ReadWritePaths =またはReadOnlyPaths =で指定された項目を含む他のマウントポイントは計算されない可能性があります。
ReadWriteDirectories
それでは、ディレクトリホワイトリストを使用してReadOnlyDirectories
設定することは可能ですか?可能でなければ、ReadWriteDirectories
何もしないように見えながらもなぜ存在するのでしょうか?
ベストアンサー1
ReadWritePaths
その類似は、次のオプションと組み合わせて使用する場合にのみ本当に便利です。ブラックリスト特定のパス。アプリケーションが特定のパスにのみアクセスできる必要があることがわかっている場合は、以下を組み合わせて実行できます。
ProtectSystem=strict
特定のディレクトリを設定し、使用のためにホワイトリストに追加しますReadWritePaths
。ReadOnlyPaths
特定のディレクトリを設定してホワイトリストに追加しますReadWritePaths
。を使用してこれを行うと、/
実行するタスクの親セットが実行されますProtectSystem
(おそらく望ましくない/ dev、/ proc、および/ sysも制限します)。PrivateDevices
、ProtectKernelTunables
およびを使用してProtectControlGroups
これらのディレクトリを保護することもできます。