

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Membuat pasangan kunci untuk instans Amazon EC2
<a name="create-key-pairs"></a>

Anda dapat menggunakan Amazon EC2 untuk membuat pasangan kunci, atau Anda dapat menggunakan alat pihak ketiga untuk membuat pasangan kunci, lalu mengimpornya ke Amazon EC2.

Amazon EC2 mendukung kunci RSA SSH-2 2048-bit untuk instance Linux dan Windows. Amazon EC2 juga mendukung ED25519 kunci untuk instans Linux.

Untuk petunjuk tentang cara menyambung ke instans Anda setelah Anda membuat key pair, lihat [Hubungkan ke instans Linux Anda, menggunakan SSH.](connect-to-linux-instance.md) dan[Hubungkan ke instans Windows Anda menggunakan RDP](connecting_to_windows_instance.md).

**Topics**
+ [Membuat pasangan kunci menggunakan Amazon EC2](#having-ec2-create-your-key-pair)
+ [Buat key pair menggunakan AWS CloudFormation](#create-key-pair-cloudformation)
+ [Membuat pasangan kunci menggunakan alat pihak ketiga dan mengimpor kunci publik ke Amazon EC2](#how-to-generate-your-own-key-and-import-it-to-aws)

## Membuat pasangan kunci menggunakan Amazon EC2
<a name="having-ec2-create-your-key-pair"></a>

Saat Anda membuat pasangan kunci menggunakan Amazon EC2, kunci publik akan disimpan di Amazon EC2, dan Anda akan menyimpan kunci privat.

Anda dapat membuat hingga 5.000 pasangan kunci per Wilayah. Untuk meminta peningkatan, buat kasus dukungan. Untuk informasi selengkapnya, lihat [Membuat kasus dukungan](https://docs.aws.amazon.com/awssupport/latest/user/case-management.html#creating-a-support-case) di *Panduan Dukungan Pengguna*.

------
#### [ Console ]

**Untuk membuat pasangan kunci menggunakan Amazon EC2**

1. Buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Pada panel navigasi, di **Jaringan & Keamanan**, pilih **Pasangan Kunci**.

1. Pilih **Buat pasangan kunci**.

1. Untuk **Nama**, masukkan nama deskriptif untuk pasangan kunci tersebut. Amazon EC2 akan mengaitkan kunci publik dengan nama yang Anda cantumkan sebagai nama kunci. Nama kunci dapat terdiri dari hingga 255 karakter ASCII. Tidak boleh mengandung spasi di depan maupun belakang.

1. Pilih jenis key pair yang sesuai untuk sistem operasi Anda:

   (Instance Linux) Untuk **jenis pasangan Kunci**, pilih **RSA** atau. **ED25519**

   (Instans Windows) Untuk **jenis pasangan kunci**, pilih **RSA**. **ED25519**kunci tidak didukung untuk instance Windows.

1. Untuk **Format file kunci privat**, pilih format untuk menyimpan kunci privat tersebut. Untuk menyimpan kunci privat dalam format yang dapat digunakan dengan OpenSSH, pilih **pem**. Untuk menyimpan kunci privat dalam format yang dapat digunakan dengan PuTTY, pilih **ppk**.

1. Untuk menambahkan tanda ke kunci publik, pilih **Tambah tanda** (Tambahkan tanda), lalu masukkan kunci dan nilai untuk tanda tersebut. Ulangi hal itu untuk setiap tanda. 

1. Pilih **Buat pasangan kunci**.

1. File kunci privat tersebut akan secara otomatis diunduh oleh peramban Anda. Nama file dasar adalah nama yang Anda tentukan sebagai nama pasangan kunci Anda, dan ekstensi dari nama file tersebut ditentukan oleh format file yang Anda pilih. Simpan file kunci privat di suatu tempat yang aman.
**penting**  
Ini adalah satu-satunya kesempatan Anda untuk menyimpan file kunci privat tersebut.

1. Jika Anda berencana menggunakan klien SSH pada komputer macOS atau Linux untuk terhubung ke instans Linux, gunakan perintah berikut untuk mengatur izin file kunci privat Anda sehingga hanya Anda yang dapat membacanya.

   ```
   chmod 400 key-pair-name.pem
   ```

   Jika Anda tidak mengatur izin tersebut, Anda tidak akan dapat terhubung ke instans Anda menggunakan pasangan kunci ini. Untuk informasi selengkapnya, lihat [Kesalahan: File kunci privat yang tidak dilindungi](TroubleshootingInstancesConnecting.md#troubleshoot-unprotected-key).

------
#### [ AWS CLI ]

**Untuk membuat pasangan kunci menggunakan Amazon EC2**

1. Gunakan perintah [https://docs.aws.amazon.com/cli/latest/reference/ec2/create-key-pair.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-key-pair.html) seperti berikut untuk membuat pasangan kunci dan untuk menyimpan kunci privat dalam file `.pem`. `--query`Opsi mencetak materi kunci pribadi ke output. `--output`Opsi ini menyimpan materi kunci pribadi dalam file yang ditentukan. Ekstensi harus salah satu `.pem` atau`.ppk`, tergantung pada format kunci. Nama kunci pribadi dapat berbeda dari nama kunci publik, tetapi untuk kemudahan penggunaan, gunakan nama yang sama.

   ```
   aws ec2 create-key-pair \
       --key-name my-key-pair \
       --key-type rsa \
       --key-format pem \
       --query "KeyMaterial" \
       --output text > my-key-pair.pem
   ```

1. Jika Anda berencana menggunakan klien SSH pada komputer macOS atau Linux untuk terhubung ke instans Linux, gunakan perintah berikut untuk mengatur izin file kunci privat Anda sehingga hanya Anda yang dapat membacanya.

   ```
   chmod 400 key-pair-name.pem
   ```

   Jika Anda tidak mengatur izin tersebut, Anda tidak akan dapat terhubung ke instans Anda menggunakan pasangan kunci ini. Untuk informasi selengkapnya, lihat [Kesalahan: File kunci privat yang tidak dilindungi](TroubleshootingInstancesConnecting.md#troubleshoot-unprotected-key).

------
#### [ PowerShell ]

**Untuk membuat pasangan kunci menggunakan Amazon EC2**  
Gunakan [https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2KeyPair.html](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2KeyPair.html)cmdlet sebagai berikut untuk menghasilkan kunci dan menyimpannya ke file `.pem` atau`.ppk`. **Out-File**Cmdlet menyimpan materi kunci pribadi dalam file dengan ekstensi yang ditentukan. Ekstensi harus salah satu `.pem` atau`.ppk`, tergantung pada format kunci. Nama kunci pribadi dapat berbeda dari nama kunci publik, tetapi untuk kemudahan penggunaan, gunakan nama yang sama.

```
(New-EC2KeyPair `
    -KeyName "my-key-pair" `
    -KeyType "rsa" `
    -KeyFormat "pem").KeyMaterial | Out-File -Encoding ascii -FilePath C:\path\my-key-pair.pem
```

------

## Buat key pair menggunakan AWS CloudFormation
<a name="create-key-pair-cloudformation"></a>

Saat Anda membuat key pair baru menggunakan CloudFormation, kunci pribadi disimpan ke AWS Systems Manager Parameter Store. Nama parameter memiliki format berikut:

```
/ec2/keypair/key_pair_id
```

Untuk informasi selengkapnya, lihat [Penyimpanan Parameter AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-parameter-store.html) dalam *Panduan Pengguna AWS Systems Manager *.

**Untuk membuat key pair menggunakan CloudFormation**

1. Tentukan [AWS::EC2::KeyPair](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-keypair.html)sumber daya di template Anda.

   ```
   Resources:
     NewKeyPair:
       Type: 'AWS::EC2::KeyPair'
       Properties: 
         KeyName: new-key-pair
   ```

1. Gunakan perintah [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-key-pairs.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-key-pairs.html) sebagai berikut untuk mendapatkan ID dari pasangan kunci.

   ```
   aws ec2 describe-key-pairs --filters Name=key-name,Values=new-key-pair --query KeyPairs[*].KeyPairId --output text
   ```

   Berikut ini adalah output contoh.

   ```
   key-05abb699beEXAMPLE
   ```

1. Gunakan perintah [https://docs.aws.amazon.com/cli/latest/reference/ssm/get-parameter.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/get-parameter.html) sebagai berikut untuk mendapatkan parameter kunci Anda dan menyimpan materi kunci dalam file `.pem`.

   ```
   aws ssm get-parameter --name /ec2/keypair/key-05abb699beEXAMPLE --with-decryption --query Parameter.Value --output text > new-key-pair.pem
   ```

**Izin IAM yang diperlukan**

 CloudFormation Untuk mengaktifkan mengelola parameter Parameter Store atas nama Anda, peran IAM yang diambil oleh CloudFormation atau pengguna Anda harus memiliki izin berikut:
+ `ssm:PutParameter` – Memberikan izin guna membuat parameter untuk materi kunci privat.
+ `ssm:DeleteParameter` – Memberikan izin guna menghapus parameter yang menyimpan materi kunci privat. Izin ini diperlukan apakah pasangan kunci diimpor atau dibuat oleh CloudFormation.

Ketika CloudFormation menghapus key pair yang dibuat atau diimpor oleh stack, ia melakukan pemeriksaan izin untuk menentukan apakah Anda memiliki izin untuk menghapus parameter, meskipun CloudFormation membuat parameter hanya ketika membuat key pair, bukan ketika mengimpor key pair. CloudFormation tes untuk izin yang diperlukan menggunakan nama parameter fabrikasi yang tidak cocok dengan parameter apa pun di akun Anda. Oleh karena itu, Anda mungkin melihat nama parameter fabrikasi dalam pesan kesalahan `AccessDeniedException`.

## Membuat pasangan kunci menggunakan alat pihak ketiga dan mengimpor kunci publik ke Amazon EC2
<a name="how-to-generate-your-own-key-and-import-it-to-aws"></a>

Alih-alih menggunakan Amazon EC2 untuk membuat key pair, Anda dapat membuat key pair RSA atau ED25519 dengan menggunakan alat pihak ketiga dan kemudian mengimpor kunci publik ke Amazon EC2.

**Ketentuan untuk pasangan kunci**
+ Jenis yang didukung:
  + (Linux dan Windows) RSA
  + (Hanya Linux) ED25519
**catatan**  
ED25519 kunci tidak didukung untuk instance Windows.
  + Amazon EC2 tidak menerima kunci DSA.
+ Format yang didukung:
  + Format kunci publik OpenSSH (untuk Linux, format dalam) `~/.ssh/authorized_keys`
  + (Hanya Linux) Jika Anda terhubung menggunakan SSH saat menggunakan EC2 Instance Connect API, SSH2 formatnya juga didukung.
  + Format file kunci privat SSH harus dalam format PEM atau PPK
  + (Khusus RSA) Format DER dengan enkode Base64
  + (Khusus RSA) Format file kunci publik SSH sebagaimana yang ditentukan dalam [RFC 4716](https://www.ietf.org/rfc/rfc4716.txt)
+ Panjang yang didukung:
  + 1024, 2048, dan 4096.
  + (Hanya Linux) Jika Anda terhubung menggunakan SSH saat menggunakan EC2 Instance Connect API, panjang yang didukung adalah 2048 dan 4096.

**Cara membuat pasangan kunci menggunakan alat pihak ketiga**

1. Buat pasangan kunci dengan alat pihak ketiga yang Anda kehendaki. Sebagai contoh, Anda dapat menggunakan **ssh-keygen** (alat yang disediakan bersamaan dengan instalasi OpenSSH standar). Atau, Java, Ruby, Python, dan banyak bahasa pemrograman lainnya menyediakan pustaka standar yang dapat Anda gunakan untuk membuat key pair.
**penting**  
Kunci privat harus berupa format PEM atau PPK. Sebagai contoh, gunakan `ssh-keygen -m PEM` untuk membuat kunci OpenSSH dalam format PEM.

1. Simpan kunci publik ke file lokal. Misalnya, `~/.ssh/my-key-pair.pub` (Linux, macOS) atau `C:\keys\my-key-pair.pub` (Windows). Ekstensi nama file untuk file ini bukan hal penting.

1. Simpan kunci privat ke file lokal yang memiliki ekstensi `.pem` atau `.ppk`. Misalnya, `~/.ssh/my-key-pair.pem` atau `~/.ssh/my-key-pair.ppk` (Linux, macOS) atau `C:\keys\my-key-pair.pem` atau `C:\keys\my-key-pair.ppk` (Windows). Ekstensi file penting karena, tergantung pada alat yang Anda gunakan untuk terhubung ke instance Anda, Anda memerlukan format file tertentu. OpenSSH membutuhkan `.pem` file, sedangkan Putty membutuhkan file. `.ppk`
**penting**  
Simpan file kunci privat di suatu tempat yang aman. Anda harus memberikan nama kunci publik Anda saat meluncurkan instans, dan nama kunci privat yang terkait setiap kali Anda terhubung dengan instans tersebut.

Setelah Anda membuat pasangan kunci, gunakan salah satu metode berikut ini untuk mengimpor kunci publik Anda ke Amazon EC2.

------
#### [ Console ]

**Cara mengimpor kunci publik ke Amazon EC2**

1. Buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di panel navigasi, pilih **Pasangan Kunci**.

1. Pilih **Impor pasangan kunci**.

1. Untuk **Nama**, masukkan nama deskriptif untuk kunci publik. Nama dapat terdiri dari hingga 255 karakter ASCII. Tidak termasuk spasi di bagian paling depan dan paling belakang.
**catatan**  
Ketika Anda terhubung ke instans Anda dari konsol EC2, konsol akan menyarankan nama ini untuk nama file kunci privat Anda.

1. Pilih **Browse** (Jelajah) untuk melakukan navigasi ke dan memilih kunci publik Anda, atau tempelkan konten kunci publik Anda ke bidang **Konten kunci publik**.

1. Pilih **Impor pasangan kunci**.

1. Pastikan kunci publik yang Anda impor muncul dalam daftar pasangan kunci.

------
#### [ AWS CLI ]

**Cara mengimpor kunci publik ke Amazon EC2**  
Gunakan perintah [https://docs.aws.amazon.com/cli/latest/reference/ec2/import-key-pair.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/import-key-pair.html).

```
aws ec2 import-key-pair \
    --key-name my-key-pair \
    --public-key-material fileb://path/my-key-pair.pub
```

**Cara melakukan verifikasi terhadap pasangan kunci yang berhasil diimpor**  
Gunakan perintah [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-key-pairs.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-key-pairs.html).

```
aws ec2 describe-key-pairs --key-names my-key-pair
```

------
#### [ PowerShell ]

**Cara mengimpor kunci publik ke Amazon EC2**  
Gunakan [https://docs.aws.amazon.com/powershell/latest/reference/items/Import-EC2KeyPair.html](https://docs.aws.amazon.com/powershell/latest/reference/items/Import-EC2KeyPair.html)cmdlet.

```
$publickey=[Io.File]::ReadAllText("C:\Users\TestUser\.ssh\id_rsa.pub")
Import-EC2KeyPair `
    -KeyName my-key-pair `
    -PublicKey $publickey
```

**Cara melakukan verifikasi terhadap pasangan kunci yang berhasil diimpor**  
Gunakan [https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2KeyPair.html](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2KeyPair.html)cmdlet.

```
Get-EC2KeyPair -KeyName my-key-pair
```

------