Root

Nginx 靜態建構 - 以非 root 使用者身份執行

  • November 5, 2014

我已經靜態編譯了 nGinx,它工作正常。當我從普通使用者啟動 nginx 靜態 bin 時,如何創建一個普通使用者並以 root 身份執行它?!

謝謝

我認為您要求的是如何授予非 sudo 使用者權限以允許 Nginx 綁定到特權埠。

如果是這種情況,那麼在/etc/sudoers文件(快捷方式visudo)中添加以下行:

Cmnd_Alias   NGINX = /path/to/binary/nginx
username ALL=NOPASSWD: NGINX

當然,在上面的範例中,您需要更改/path/to/binary/以匹配它在系統上的位置,並將username更改為您希望執行命令的使用者名。

您也可以通過創建 NGINX 組而不是僅使用使用者名來獲得相同的結果,並且該組中的所有使用者都具有該權限。

groupadd groupnamehere
usermod -G groupnamehere usertoaddtogrouphere

現在在sudoers文件中,用這個替換username我上面給出的行:

%groupnamehere ALL=NOPASSWD: NGINX

要對此進行測試,請成為使用者並執行以下命令:

1)Become the user =>  su - usernamehere
2)Check groups user is in => groups
3)Run command => sudo nginx restart
4)In case nginx isn't a global command run => sudo /path/to/binary/nginx restart

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