web-dev-qa-db-ja.com

システムユーザーとしてサービスを実行する理由

UNIXの世界について一般的な質問があります。

私は現在、Ubuntuを自宅で実行していて、デバイスに Transmission をインストールし、それをtransmission-debianとして実行してファイルを保存していますユーザー。これを自分のユーザーに変更するのが理にかなっているので、ファイルを操作するのが簡単で、Sudo?なぜこれが悪い考えなのでしょうか?

19
ScipioAfricanus

ユーザーではなく独自の専用システムユーザーとしてTransmissionを実行することを推奨する主な理由は、ソフトウェアに、構成されたディレクトリの外にファイルを公開するエクスプロイトを許可する脆弱性がある場合、最終的には可能性を公開しないことですLinux自体が基本的な許可を通じてその種のアクセスを防止するため、ホームディレクトリからの機密ファイル。

通常のユーザーでTransmissionのディレクトリ内のファイルを管理しやすくするには、debian-transmissionグループにユーザーを追加することを検討する必要があります。これは、Transmissionディレクトリ内のファイルを所有し、少なくとも)ディレクトリとその中のファイルへの読み取り/書き込みアクセスが必要です。

buntu howtoの提案 このコマンド(ユーザーを環境変数から取得するように少し変更):

Sudo usermod -a -G debian-transmission "$USER"

usermodを実行した後は、ログアウトして再度ログインすることを忘れないでください。既存のプロセスのグループには影響しません。)

うまくいけば、これにより、Transmissionでダウンロードしたファイルを管理しやすくなり、独自の専用システムユーザーの下でファイルを実行したままにして、セキュリティを向上させることができます。

40
filbranden