Linux

如何使 AWS CLI 在我的伺服器中更安全?

  • September 8, 2016

我是 AWS CLI 的新手,但讓我有點困擾的是,我需要將我的憑證儲存在一個文件中。我在 S3 上有幾個buckets,我為我的應用程序創建了一個帳戶,該帳戶只能訪問此儲存桶。但是,如果我的伺服器被黑客入侵,攻擊者可以輕鬆讀取我的.aws/credentials文件並破壞我儲存桶中的所有內容。然後,我的公司就會遇到很大的問題,因為我們非常依賴 AWS!有什麼建議可以提高這種場景的安全性嗎?

我完全可以理解,如果我的伺服器被黑了,並且有 sudo 訪問權限,我的機會很小,但是,我想盡可能地提高難度以防止任何損壞。

問題一:

是我需要將憑據儲存在文件中的事實

如果您的伺服器是 EC2 實例,那麼您不必將憑證儲存在文件中。

相反,將 IAM 角色和實例配置文件用於您的 EC2 實例。執行此操作時,請勿為 AWS CLI 配置憑證。當您使用 CLI 執行命令時,CLI 將在伺服器外收集臨時憑證並使用它們。

http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html

如果您這樣做,那麼如果有人未經授權訪問伺服器,將不會有任何憑據文件可供他們帶走。要造成任何損害,他們必須直接在伺服器上進行。

問題 2:

為防止損壞儲存桶,請啟用儲存桶版本控制。通過這樣做,如果有人刪除和/或更改對象,您就可以訪問舊版本。

此外,如果您確實需要刪除對象,請啟用 MFA 刪除。啟用後,當需要刪除對象時必須使用 MFA。不使用 MFA 設備,禁止刪除對象。

對於訪問儲存桶的任何人,請授予他們最低權限。小心一味放任s3:*。如果他們只需要讀取對象,只需給他們s3:GetObject.

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