Security

我應該與哪個使用者一起執行 Web 伺服器、redis 和 mongodb?

  • July 20, 2013

在這個 VPS 上有三個使用者:root、another_one、nobody。所有網路伺服器文件、配置等。由 擁有root。但是,我對執行事物有什麼疑問。如果我對 Web 伺服器使用 root,我可能會將系統暴露在安全漏洞中,而如果我嘗試登錄nobody它會詢問我一個我從未設置且我不知道的密碼。我應該創建另一個使用者嗎?

現在我只確定 nginx:我以 root 身份執行它,它以無人身份生成程序。但是 Web 伺服器和其他服務,如 db 和 redis 呢?

注意:我應該提到another_user 可以sudo,所以它與root 沒有什麼不同。

我總是與專門的使用者一起執行服務。所以我會創建這些使用者:

  • nginx
  • 蒙哥
  • 阿帕奇
  • mysql
  • 再說一遍

您永遠不應該以 root 身份執行實際服務!

通常在使用分發包管理器安裝這些應用程序時,作為安裝的一部分,將為這些服務中的每一個自動創建一個使用者。

我通常使用 CentOS/RHEL,當我安裝 Apache 之類的東西時,會自動創建使用者“apache”。MySQL 和 Nginx 也是如此。

您猶豫是否以 root 身份執行服務是正確的。您最好為 Web 伺服器創建單獨的使用者。閱讀https://serverfault.com/questions/357108/what-are-the-best-linux-permissions-to-use-for-my-website中的文件所有權和權限討論也不會有什麼壞處

引用自:https://unix.stackexchange.com/questions/83734