どのユーザーでWebサーバー、redis、mongodbを実行する必要がありますか?


8

このVPSには、root、another_one、nobodyの3人のユーザーがいます。すべてのウェブサーバーファイル、構成、&c。が所有していrootます。しかし、私は何を実行するかについては疑問があります。Webサーバーにrootを使用すると、システムがセキュリティホールにさらされる可能性がありますが、ログインしようとするnobodyと、設定したことのないパスワードがわからないので、わからないことがあります。さらに別のユーザーを作成する必要がありますか?

今のところ、nginxについてのみ確信があります。ルートとして実行し、プロセスをnobodyとして起動します。しかし、Webサーバーや、dbやredisなどの他のサービスについてはどうでしょうか。

注:another_userはsudoを実行できるので、rootとそれほど変わらないことを述べておきます。

回答:


9

私は常に専用ユーザーでサービスを実行しています。だから私はこれらのユーザーを作成します:

  • nginx
  • モンゴ
  • アパッチ
  • mysql
  • redis

ルートとして実際のサービスを実行してはいけません!

多くの場合、ディストリビューションパッケージマネージャーを使用してこれらのアプリケーションをインストールすると、インストールの一部として、これらのサービスごとにユーザーが自動的に作成されます。

私は通常CentOS / RHELを使用しており、Apacheなどをインストールすると、その時点でユーザー「apache」が自動的に作成されます。MySQLとNginxについても同様です。


よろしくお願いします!はい、たとえば、redisをインストールすると、redisユーザーも作成されたことがわかりました。私はこのアドバイスに従います、ありがとう。
ルービック

私は物事を構成していて、複数のユーザーが特定の権限を設定する方が簡単です!
ルービック

私はこのアプローチが好きです。好奇心から、グループに対するあなたの戦略は何ですか?サービスグル​​ープはありますか?または、サービスユーザーごとに個別のグループを保持していますか?
Patrick M

@PatrickM-別のグループ。サービスは相互に可能な限り隔離する必要があります。
slm

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.