如何在 Linux 中不輸入密碼執行 sudo 命令

Aaron Kili發表於2017-02-04

假設你在只有自己使用的計算機上執行 Linux 系統,比如在膝上型電腦上,在每次呼叫 sudo 時需要輸入密碼,長期下來就會覺得很乏味。因此,在本指南中,我們將描述如何配置 sudo 命令在執行時而不輸入密碼。

此設定在 /etc/sudoers 檔案中完成,這是使用 sudo 命令的預設安全策略;在使用者許可權指定部分。

重要:在 sudeors 檔案中,預設開啟的 authenticate 引數用於驗證目的。如果設定了它,使用者必須透過密碼(或其他身份驗證方法)進行身份驗證,然後才能使用 sudo 執行命令。

但是,可以使用 NOPASSWD(當使用者呼叫 sudo 命令時不需要密碼)標記來覆蓋此預設值。

配置使用者許可權的語法如下:

user_list host_list=effective_user_list tag_list command_list

其中:

  1. user_list - 使用者列表或已經設定的使用者別名。
  2. host_list - 主機列表或使用者可以在其上執行 sudo 的主機別名。
  3. effective_user_list - 以該使用者或別名執行的使用者列表
  4. tag_list - 標籤列表,如 NOPASSWD
  5. command_list - 使用者使用 sudo 執行的命令或命令別名列表。

要允許使用者(下面的示例中的 aaronkilik)使用 sudo 不輸入密碼即可執行所有命令,請開啟 sudoers 檔案:

$ sudo visudo

新增下面的行:

aaronkilik ALL=(ALL) NOPASSWD: ALL

對於組而言,在組名前面使用 % 字元;這意味著 sys 組的所有成員都可以不用密碼使用 sudo

%sys ALL=(ALL) NOPASSWD: ALL

要允許使用者不用密碼使用 sudo 執行指定命令(/bin/kill),新增下面的行:

aaronkilik ALL=(ALL) NOPASSWD: /bin/kill

下面的行會讓 sys 組成員在使用 sudo 執行命令:/bin/kill/bin/rm 時不用輸入密碼:

%sys ALL=(ALL) NOPASSWD: /bin/kill, /bin/rm

Run sudo Without Password

不用密碼執行 sudo

對於更多的 sudo 配置和其他使用選項,請閱讀我們有更多例子描述的文章,:

在本篇中,我們討論瞭如何配置 sudo 命令來不用輸入密碼執行。不要忘記在評論欄中給我們提供你關於這份指導的想法和其他對於 Linux 系統管理員有用的 sudoers 配置。


作者簡介:

Aaron Kili 是 Linux 和 F.O.S.S 愛好者,將來的 Linux SysAdmin 及 web 開發者,目前是 TecMint 的內容創作者,他喜歡用電腦工作,並堅信分享知識。


via: http://www.tecmint.com/run-sudo-command-without-password-linux/

作者:Aaron Kili 譯者:geekpi 校對:jasminepeng

本文由 LCTT 原創編譯,Linux中國 榮譽推出

相關文章