Linux

Ubuntu 上的 Sudo 訪問

  • February 13, 2014

我是 linux 和系統管理員世界的新手,所以我正在尋找一些建議和一些答案。我設置了一個執行 Ubuntu 12.04 的 EC2 實例,並通過密鑰對 SSH。

首先,我通讀了Ubuntu 使用者管理頁面,但它給我留下了一些問題。我在頁面上註意到了這一點

Sudo 允許授權使用者使用他們自己的密碼臨時提升他們的權限,而不必知道屬於 root 帳戶的密碼。

當我執行 sudo 命令時,在使用 SSH 訪問我的伺服器後,系統不會提示我輸入密碼。我讀過不要將數據庫訪問密碼(例如 PHP 和 MySQL)儲存在純文字文件中,而是使用 .cnf 文件而不是權限設置為 600。如果有人確實設法進入我的伺服器,他們就擁有要做的是輸入sudo vi /path/to/cnf然後他們可以查看密碼。假設我有 sudo 的密碼,這一切的意義是什麼?

  1. 考慮到預設情況下我沒有密碼,我是否應該為 sudo 添加密碼?
  2. 考慮到我正在使用 UFW 限制對埠 22 的訪問並且我正在使用密鑰對,對於能夠通過 SSH 連接到我的伺服器的人來說風險有多大?
  3. 看到我使用 EC2 設置我的 Ubuntu 伺服器時,我在添加/更改密碼時看到的所有資源都說預設情況下是從設置中使用的。我真的沒有設置任何東西。這一切都是通過 AWS 預先配置的。這是一個問題嗎?

對於能夠 SSH 的人來說風險有多大

風險真的很小。 看看這個問題,你可以做一些事情來盡量減少暴力嘗試的影響。

是不是要加密碼…

您的帳戶有密碼,但 sudo 已配置為不通過設置以下配置來提示您。ref 如果您通過密鑰進行所有身份驗證,則此設置在大多數情況下都很好。NOPASSWD如果您想收到提示,您可以從此文件中刪除。

# ubuntu user is default user in cloud-images.
# It needs passwordless sudo functionality.
ubuntu ALL=(ALL) NOPASSWD:ALL

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