如何刪除對 AWS 金鑰對的存取?

如何刪除對 AWS 金鑰對的存取?

如果擁有多個 EC2 執行個體的 .pem 金鑰對的某人離開公司,刪除該金鑰的存取權限的最佳實務是什麼?據推測,簡單地從 AWS 控制台刪除金鑰並不會拒絕他們對所有實例的訪問,那麼是否有一種聰明的方法來審核和刪除他們的存取權限?如果我沒有密鑰文件的副本,如何確定他們沒有將公鑰添加到其他實例?

假設 Ubuntu 12.04 EC2 實例

答案1

安裝後,亞馬遜不再對您的執行個體執行任何操作,因此我認為它們沒有為這種情況提供的功能。您可以編寫一個腳本來循環所有實例並檢查他的密鑰是否在那裡(這不太漂亮,但它會起作用:)):

for INSTANCE in $(ec2-describe-instances | grep INSTANC | grep running | awk '{print $4;}')
do
  ssh -lec2-user -oStrictHostKeyChecking=no $INSTANCE 'cat ~/.ssh/authorized_keys | grep mtak'
  if [ $? -eq 0 ];
    then
    echo $INSTANCE
  fi
done

您也可以新增一個sed線上程式以從authorized_keys 檔案中刪除金鑰。

答案2

作為安全措施,您還可以使用安全群組設定限制 IP 位址網路範圍對伺服器的存取。透過這種方式,您可以阻止人們存取您的多個 EC2 實例,儘管他們擁有 .pem 金鑰對

相關內容