本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立金鑰對
以下 New-EC2KeyPair
範例會建立金鑰對,並存放在 PowerShell 變數 $myPSKeyPair
中
PS >
$myPSKeyPair = New-EC2KeyPair -KeyName myPSKeyPair
將金鑰對物件輸送到 Get-Member
Cmdlet,來查看物件的結構。
PS >
$myPSKeyPair | Get-Member
TypeName: Amazon.EC2.Model.KeyPair Name MemberType Definition ---- ---------- ---------- Equals Method bool Equals(System.Object obj) GetHashCode Method int GetHashCode() GetType Method type GetType() ToString Method string ToString() KeyFingerprint Property System.String KeyFingerprint {get;set;} KeyMaterial Property System.String KeyMaterial {get;set;} KeyName Property System.String KeyName {get;set;}
將金鑰對物件輸送到 Format-List
cmdlet 以檢視 KeyName
、KeyFingerprint
和 KeyMaterial
成員的值。(輸出已截斷以利閱讀)。
PS >
$myPSKeyPair | Format-List KeyName, KeyFingerprint, KeyMaterial
KeyName : myPSKeyPair KeyFingerprint : 09:06:70:8e:26:b6:e7:ef:8f:fe:4a:1d:bc:9c:6a:63:11:ac:ad:3c KeyMaterial : ----BEGIN RSA PRIVATE KEY---- MIIEogIBAAKCAQEAkK+ANYUS9c7niNjYfaCn6KYj/D0I6djnFoQE... Mz6btoxPcE7EMeH1wySUp8nouAS9xbl9l7+VkD74bN9KmNcPa/Mu... Zyn4vVe0Q5il/MpkrRogHqOB0rigeTeV5Yc3lvO0RFFPu0Kz4kcm... w3Jg8dKsWn0plOpX7V3sRC02KgJIbejQUvBFGi5OQK9bm4tXBIeC... daxKIAQMtDUdmBDrhR1/YMv8itFe5DiLLbq7Ga+FDcS85NstBa3h... iuskGkcvgWkcFQkLmRHRoDpPb+OdFsZtjHZDpMVFmA9tT8EdbkEF... 3SrNeqZPsxJJIxOodb3CxLJpg75JU5kyWnb0+sDNVHoJiZCULCr0... GGlLfEgB95KjGIk7zEv2Q7K6s+DHclrDeMZWa7KFNRZuCuX7jssC... xO98abxMr3o3TNU6p1ZYRJEQ0oJr0W+kc+/8SWb8NIwfLtwhmJEy... 1BX9X8WFX/A8VLHrT1elrKmLkNECgYEAwltkV1pOJAFhz9p7ZFEv... vvVsPaF0Ev9bk9pqhx269PB5Ox2KokwCagDMMaYvasWobuLmNu/1... lmwRx7KTeQ7W1J3OLgxHA1QNMkip9c4Tb3q9vVc3t/fPf8vwfJ8C... 63g6N6rk2FkHZX1E62BgbewUd3eZOS05Ip4VUdvtGcuc8/qa+e5C... KXgyt9nl64pMv+VaXfXkZhdLAdY0Khc9TGB9++VMSG5TrD15YJId... gYALEI7m1jJKpHWAEs0hiemw5VmKyIZpzGstSJsFStERlAjiETDH... YAtnI4J8dRyP9I7BOVOn3wNfIjk85gi1/0Oc+j8S65giLAfndWGR... 9R9wIkm5BMUcSRRcDy0yuwKBgEbkOnGGSD0ah4HkvrUkepIbUDTD... AnEBM1cXI5UT7BfKInpUihZi59QhgdK/hkOSmWhlZGWikJ5VizBf... drkBr/vTKVRMTi3lVFB7KkIV1xJxC5E/BZ+YdZEpWoCZAoGAC/Cd... TTld5N6opgOXAcQJwzqoGa9ZMwc5Q9f4bfRc67emkw0ZAAwSsvWR... x3O2duuy7/smTwWwskEWRK5IrUxoMv/VVYaqdzcOajwieNrblr7c... -----END RSA PRIVATE KEY-----
KeyMaterial
成員用於存放金鑰對的私有金鑰。公有金鑰存放於 AWS 內。您無法從 AWS 擷取公有金鑰,但您可以透過比對私有金鑰和從 AWS 傳回之公有金鑰的 KeyFingerprint
,來驗證公有金鑰。
檢視金鑰對的指紋
您可以使用 Get-EC2KeyPair
cmdlet 來檢視金鑰對的指紋。
PS >
Get-EC2KeyPair -KeyName myPSKeyPair | format-list KeyName, KeyFingerprint
KeyName : myPSKeyPair KeyFingerprint : 09:06:70:8e:26:b6:e7:ef:8f:fe:4a:1d:bc:9c:6a:63:11:ac:ad:3c
存放您的私有金鑰
若要將私有金鑰存放至檔案,請將 KeyFingerMaterial
成員輸送至 Out-File
cmdlet。
PS >
$myPSKeyPair.KeyMaterial | Out-File -Encoding ascii myPSKeyPair.pem
將私有金鑰寫入檔案時,您必須指定 -Encoding ascii
。否則,openssl
等工具將可能無法正確地讀取檔案。您可以使用如下所示的命令,驗證所產生檔案的格式是否正確:
PS >
openssl rsa -check < myPSKeyPair.pem
(openssl
工具不包含在 AWS Tools for PowerShell 或 AWS SDK for .NET 中。)
移除您的金鑰對
您需要金鑰對,才能啟動和連線到執行個體。當您使用完金鑰對後,您可以將其移除。若要從 AWS 移除公有金鑰,請使用 Remove-EC2KeyPair
cmdlet。出現提示時,按下 Enter
移除金鑰對。
PS >
Remove-EC2KeyPair -KeyName myPSKeyPair
Confirm Performing the operation "Remove-EC2KeyPair (DeleteKeyPair)" on target "myPSKeyPair". [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):
變數 $myPSKeyPair
仍然存在於目前的 PowerShell 工作階段,也仍包含金鑰對資訊。myPSKeyPair.pem
檔案也存在。不過,私有金鑰不再有效,因為金鑰對的公有金鑰不再存放於 AWS 中。