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

來源:互聯網
上載者:User

作為ubuntu等案頭系統,預設登入的帳號是沒有root許可權的,為了提升許可權來執行任務,我們一般用到sudo+命令來執行,但是不難發現我們一般都要輸入密碼。那麼有沒有什麼方法可以讓我們執行sudo的時候不輸入密碼呢?當然有咯。那就是對sudoers檔案進行修改。

如何修改sudoers?直接修改/etc/sudoers嗎?不,那樣子修改很容易造成許可權錯亂。奶牛手動修改的時候,由於對于格式並不是那麼瞭解,所以編輯的時候報錯很多次,因此不建議用直接修改法。我們可以用visudo來進行編輯。

進入終端,執行sudo visudo

在#User privilege specification下面會羅列一些規則,我們現在需要做的是對我們的使用者進行一些操作。假如我們的使用者名稱為nenew

在檔案的最後一行添加:

nenew    ALL=(ALL) NOPASSWD: ALL

然後儲存退出,執行

sudo usermod -aG admin nenew

重啟下看看nenew帳號執行sudo還要求輸入密碼嗎?這裡我們需要瞭解順序這個問題,在ubuntu的wiki上有比較詳細的介紹。

%admin ALL=(ALL) ALL
這行只是讓admin組的使用者擁有可以像任何帳號一樣執行命令的能力,但是還是需要有密碼的,因此我們需要把我們的nenew使用者加入到admin組中,所以有sudo usermod -aG admin nenew ,然後是對其進行NOPASSWD定義,這行一定要在%admin ALL=(ALL) ALL 這行後面,才會生效。

文章發玩之後很多朋友提出不安全問題來,確實,這樣是存在安全隱患的。奶牛此文的目的也只是想讓各位瞭解下sudoers的那個生效的順序,當然,我們可以把最後的

nenew    ALL=(ALL) NOPASSWD: ALL 更改為對於命令進行限制,例如對於關機命令取消密碼

nenew    ALL=(ALL) NOPASSWS: /sbin/shutdown, /sbin/halt, /sbin/reboot

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.