如何在CentOS 7上新增使用者到sudoers和sudo組
如果您是CentOS 7的新手,您首先需要學習如何將使用者新增到sudoers檔案和sudo組。這將賦予他們提升的許可權,並允許他們以root許可權執行命令。在本文中,我們將逐步引導您完成此過程。
什麼是Sudo?
在我們開始之前,讓我們討論一下sudo是什麼以及為什麼它很重要。Sudo代表“superuser do”,它是一個允許使用者執行具有管理員許可權的任務的命令。預設情況下,只有root使用者在CentOS 7上擁有這些許可權,但是使用sudo,我們也可以授予某些使用者執行管理員任務的能力。
什麼是Sudoers檔案?
sudoers檔案是一個配置檔案,它控制誰可以訪問sudo以及他們被允許做什麼。它位於/etc/sudoers,並使用visudo命令進行編輯。編輯sudoers檔案時,務必小心,確保您不會犯任何錯誤。輸入錯誤或語法錯誤可能會導致檔案無法使用,這可能會導致嚴重問題。
將使用者新增到Sudo組
賦予使用者sudo許可權最簡單的方法是將他們新增到sudo組。以下是操作方法:
步驟1:以Root使用者身份登入
要將使用者新增到sudo組,您需要以root使用者身份登入。如果您尚未以root使用者身份登入,您可以透過鍵入“su”並輸入您的root密碼來切換到root使用者。
步驟2:將使用者新增到Sudo組
要將使用者新增到sudo組,您將使用usermod命令。以下是語法:
usermod -aG sudo username
將“使用者名稱”替換為您要新增到sudo組的使用者名稱。“-a”標誌告訴usermod將使用者附加到組,而不是替換任何現有組成員身份。
這是一個例子
usermod -aG sudo john
此命令將使用者“john”新增到sudo組。
步驟3:驗證使用者的Sudo訪問許可權
要驗證使用者是否具有sudo訪問許可權,您可以切換到他們的帳戶並嘗試使用sudo執行命令。例如,您可以嘗試使用sudo執行“whoami”命令:
sudo whoami
這應該會提示您輸入密碼,然後如果一切正常,則返回“root”。
將使用者新增到Sudoers檔案
如果您不想將使用者新增到sudo組,您也可以直接將他們新增到sudoers檔案。以下是操作方法:
步驟1:以Root使用者身份登入
與將使用者新增到sudo組一樣,您需要以root使用者身份登入才能編輯sudoers檔案。
步驟2:編輯Sudoers檔案
要編輯sudoers檔案,您將使用visudo命令。此命令將在文字編輯器中開啟sudoers檔案,並在儲存更改之前檢查語法錯誤。要將使用者新增到sudoers檔案,您需要新增以下格式的行:
username ALL=(ALL) ALL
將“使用者名稱”替換為您要新增的使用者名稱。此行授予使用者使用sudo執行任何命令的許可權。
這是一個例子
john ALL=(ALL) ALL
此行授予使用者“john”使用sudo執行任何命令的許可權。
步驟3:儲存更改
完成sudoers檔案的編輯後,儲存更改並退出文字編輯器。如果您使用的是nano編輯器,您可以按Ctrl+O儲存更改,然後按Ctrl+X退出。如果您使用的是vim,您可以鍵入“:wq”並按Enter鍵儲存更改。
步驟4:驗證使用者的Sudo訪問許可權
要驗證使用者是否具有sudo訪問許可權,請切換到他們的帳戶並嘗試使用sudo執行命令。例如,您可以嘗試使用sudo執行“whoami”命令:
sudo whoami
這應該會提示您輸入密碼,然後如果一切正常,則返回“root”。
故障排除
如果您在將使用者新增到sudo組或sudoers檔案時遇到問題,以下是一些需要檢查的內容:
確保您已以Root使用者身份登入
您需要以root使用者身份登入才能更改sudoers檔案或將使用者新增到sudo組。如果您沒有以root使用者身份登入,請透過鍵入“su”並輸入您的root密碼來切換到root使用者。
檢查Sudoers檔案的語法
sudoers檔案具有非常嚴格的語法,即使是很小的錯誤也可能導致它無法使用。使用visudo命令檢查檔案語法是否有錯誤。
檢查Sudoers檔案的許可權
sudoers檔案應具有以下許可權:-r--r----- (440)。如果許可權不同,您可以使用以下命令設定它們:
chmod 440 /etc/sudoers
在CentOS 7上將使用者新增到sudoers檔案或sudo組時,還有一些額外的提示和最佳實踐需要牢記:
限制擁有Sudo訪問許可權的使用者數量
擁有sudo訪問許可權的使用者越多,有人犯錯或故意損害系統的風險就越大。僅向真正需要其工作職責的sudo訪問許可權的使用者授予sudo訪問許可權。
使用組管理Sudo訪問許可權
不要將單個使用者新增到sudoers檔案,而是考慮建立具有特定sudo許可權的組並將使用者新增到這些組。這使得更容易管理多個使用者的sudo訪問許可權,並降低了編輯sudoers檔案時出錯的風險。
謹慎使用“NOPASSWD”選項
“NOPASSWD”選項允許使用者在不輸入密碼的情況下執行sudo命令,這對於常用命令來說可能很方便。但是,如果未經授權的使用者獲得對使用者帳戶的訪問許可權或系統遭到破壞,這也會構成安全風險。僅對無需密碼即可安全執行的命令使用“NOPASSWD”選項。
稽核Sudo訪問許可權
透過啟用sudo訪問日誌記錄來跟蹤使用者何時以及如何頻繁使用sudo命令。這可以幫助您識別潛在的安全問題並稽核與公司政策的合規性。
在將使用者新增到sudoers檔案或sudo組時,另一個需要考慮的重要方面是確保使用者的密碼強度高且不易被猜測。弱密碼可能構成重大的安全風險,因為它們很容易被猜測或破解,從而允許未經授權訪問系統。鼓勵使用者使用強大、唯一的密碼,並考慮使用密碼管理器來生成和儲存複雜的密碼。
定期審查擁有sudo訪問許可權的使用者並確保他們仍然需要訪問許可權也是一個好習慣。不再需要sudo訪問許可權的使用者應從sudo組或sudoers檔案中刪除,以降低未經授權訪問系統的風險。
最後,務必使CentOS 7系統保持最新安全補丁和更新。可能會在sudo軟體本身中發現漏洞,安裝最新的更新可以幫助防止利用這些漏洞。
結論
將使用者新增到sudoers檔案或sudo組是保護CentOS 7伺服器的重要步驟。透過向某些使用者授予管理員許可權,您可以委派任務並降低因向所有人授予完全root訪問許可權而導致錯誤或事故的可能性。在更改sudoers檔案時務必謹慎,並在儲存之前仔細檢查語法。