Apache-2.2

Linux:如何授予使用者重新啟動 apache 的權限?

  • September 30, 2015

我有一個在非 root 使用者下執行的腳本,在某些情況下,它應該重新啟動 apache httpd。

我允許使用者這樣做的最簡單方法是什麼?

我正在使用 Ubuntu Server 8.04 LTS。

簡短的回答:

使用visudo,將以下內容添加到您的 sudoers 文件中,將使用者名替換為正確的使用者名:

username ALL = /etc/init.d/apache2 

如果您不想在執行此操作之前輸入密碼,請使用以下命令:

username ALL = NOPASSWD: /etc/init.d/apache2 

在此之後,“使用者名”使用者可以執行sudo /etc/init.d/apache2 start(或停止、重新啟動等)

長答案:如果您還沒有為此設置一個單獨的使用者,您可能需要為此設置一個單獨的使用者,然後配置 /etc/sudoers 文件以允許使用者或組執行您想要的命令。

例如,要允許使用者“ben”以 root 身份執行所有命令並提示輸入密碼,您可以執行以下操作:

ben ALL= ALL

要允許 ‘ben’ 只執行一個命令(例如,rm),您可以執行以下操作:

ben ALL= /bin/rm 

如果您以使用者身份執行腳本並且不想提示輸入密碼,則需要使用“NOPASSWD”選項,如下所示:

ben ALL=NOPASSWD: /bin/commandname options

您可以通過在組名稱前加上百分號來對組執行相同的操作,如下所示:

%supportstaff          ALL= NOPASSWD: /bin/commandname 

引用自:https://serverfault.com/questions/69847