/etc
以下の構成ファイルを読み、以下のデータベースファイルに書き込む必要があるアプリケーションを開発しています。/var/lib
.service
アプリケーションがシステムサービスとして実行できるようにファイルを操作しています。
アプリケーションは多くのネットワーク関連タスクを実行し、そのピアが不明な場合があります。
.service
ネットワークと未知のピアに関連するセキュリティ影響に注意したいので、ファイルのUserパラメータを一般ユーザー(rootではない)に設定しました。ただし、これによりアプリケーションがデータベースに書き込むことができなくなります/var/lib
。 。
これを設定する安全な方法は何ですか?
答え1
私の解決策は@filbrandenのコメント提案に似ています(ありがとう!)。
管理者ユーザーは特定のグループに属します。グループの所有権を/var/lib/db
グループに設定し(ユーザーの所有権はそのままですroot
)、ディレクトリの権限を775
(drwxrwxr-x
グループにw
権限がある)に設定しました。
systemdサービスは管理者によって実行されるため、/var/lib/db
作成にエラーは発生しません。