

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

# Menggunakan SSL
<a name="workingsecurity-ssl"></a>

**penting**  
 AWS OpsWorks Stacks Layanan ini mencapai akhir masa pakai pada 26 Mei 2024 dan telah dinonaktifkan untuk pelanggan baru dan yang sudah ada. Kami sangat menyarankan pelanggan untuk memindahkan beban kerja mereka ke solusi lain sesegera mungkin. Jika Anda memiliki pertanyaan tentang migrasi, hubungi AWS Dukungan Tim di [AWS re:Post](https://repost.aws/) atau melalui [AWS Dukungan](https://aws.amazon.com/support) Premium.

Untuk menggunakan SSL dengan aplikasi Anda, Anda harus terlebih dahulu mendapatkan sertifikat server digital dari Certificate Authority (CA). Untuk kesederhanaan, panduan ini membuat sertifikat dan kemudian menandatanganinya sendiri. Sertifikat yang ditandatangani sendiri berguna untuk tujuan pembelajaran dan pengujian, tetapi Anda harus selalu menggunakan sertifikat yang ditandatangani oleh CA untuk tumpukan produksi. 

Dalam panduan ini, Anda akan melakukan hal berikut: 

1. Instal dan konfigurasi OpenSSL.

1. Buat kunci privat.

1. Buat permintaan penandatanganan sertifikat.

1. Hasilkan sertifikat yang ditandatangani sendiri.

1. Edit aplikasi dengan informasi sertifikat Anda. 

**penting**  
[Jika aplikasi Anda menggunakan SSL, kami sarankan Anda menonaktifkan, jika mungkin SSLv3, di lapisan server aplikasi Anda untuk mengatasi kerentanan yang dijelaskan dalam CVE-2014-3566.](https://cve.mitre.org/cgi-bin/cvename.cgi?name=cve-2014-3566) Jika tumpukan Anda menyertakan lapisan Ganglia, Anda harus menonaktifkan SSL v3 untuk lapisan itu juga. Detailnya tergantung pada lapisan tertentu; untuk informasi lebih lanjut, lihat yang berikut ini.  
[Lapisan OpsWorks Tumpukan Server Aplikasi Java](layers-java.md)
[Lapisan OpsWorks Tumpukan Server Aplikasi Node.js](workinglayers-node.md)
[Lapisan OpsWorks Tumpukan Server Aplikasi PHP](workinglayers-php.md)
[Lapisan OpsWorks Tumpukan Server Aplikasi Rails](workinglayers-rails.md)
[Lapisan OpsWorks Tumpukan Server Web Statis](workinglayers-static.md)
[Lapisan Ganglia](workinglayers-ganglia.md)

**Topics**
+ [Langkah 1: Instal dan Konfigurasikan OpenSSL](#w2ab1c14c57c29c15)
+ [Langkah 2: Buat Kunci Pribadi](#w2ab1c14c57c29c17)
+ [Langkah 3: Buat Permintaan Penandatanganan Sertifikat](#w2ab1c14c57c29c19)
+ [Langkah 4: Kirim CSR ke Otoritas Sertifikat](#w2ab1c14c57c29c21)
+ [Langkah 5: Edit Aplikasi](#w2ab1c14c57c29c23)

## Langkah 1: Instal dan Konfigurasikan OpenSSL
<a name="w2ab1c14c57c29c15"></a>

Membuat dan mengunggah sertifikat server memerlukan alat yang mendukung protokol SSL dan TLS. OpenSSL adalah alat sumber terbuka yang menyediakan fungsi kriptografi dasar yang diperlukan untuk membuat token RSA dan menandatanganinya dengan kunci pribadi Anda.

 Prosedur berikut mengasumsikan bahwa komputer Anda belum menginstal OpenSSL. 

**Untuk menginstal OpenSSL di Linux dan Unix**

1. Pergi ke [OpenSSL:](https://www.openssl.org/source/) Sumber, Tarballs.

1. Unduh sumber terbaru.

1. Bangun paketnya.

**Untuk menginstal OpenSSL di Windows**

1. [Jika Microsoft Visual C \$1\$1 2008 Redistributable Package belum diinstal pada sistem Anda, download paket.](https://www.microsoft.com/en-us/download/details.aspx?id=11895)

1. Jalankan installer dan ikuti petunjuk yang diberikan oleh Microsoft Visual C \$1\$1 2008 Redistributable Setup Wizard untuk menginstal redistributable.

1. Buka [OpenSSL: Distribusi Biner, klik versi binari](https://www.openssl.org/community/binaries.html) OpenSSL yang sesuai untuk lingkungan Anda, dan simpan penginstal secara lokal.

1. Jalankan installer dan ikuti instruksi di **OpenSSL Setup** Wizard untuk menginstal binari. 

Buat variabel lingkungan yang menunjuk ke titik instalasi OpenSSL dengan membuka terminal atau jendela perintah dan menggunakan baris perintah berikut. 
+ Di Linux dan Unix

  ```
  export OpenSSL_HOME=path_to_your_OpenSSL_installation
  ```
+ Pada Windows

  ```
  set OpenSSL_HOME=path_to_your_OpenSSL_installation 
  ```

Tambahkan path binari OpenSSL ke variabel path komputer Anda dengan membuka terminal atau jendela perintah dan menggunakan baris perintah berikut.
+ Di Linux dan Unix

  ```
  export PATH=$PATH:$OpenSSL_HOME/bin 
  ```
+ Pada Windows

  ```
  set Path=OpenSSL_HOME\bin;%Path% 
  ```

**catatan**  
Setiap perubahan yang Anda buat pada variabel lingkungan dengan menggunakan baris perintah ini hanya valid untuk sesi baris perintah saat ini.

## Langkah 2: Buat Kunci Pribadi
<a name="w2ab1c14c57c29c17"></a>

Anda memerlukan kunci pribadi unik untuk membuat Permintaan Penandatanganan Sertifikat (CSR). Buat kunci dengan menggunakan baris perintah berikut:

```
openssl genrsa 2048 > privatekey.pem
```

## Langkah 3: Buat Permintaan Penandatanganan Sertifikat
<a name="w2ab1c14c57c29c19"></a>

Permintaan Penandatanganan Sertifikat (CSR) adalah file yang dikirim ke Otoritas Sertifikat (CA) untuk mengajukan sertifikat server digital. Buat CSR dengan menggunakan baris perintah berikut.

```
openssl req -new -key privatekey.pem -out csr.pem
```

Output perintah akan terlihat mirip dengan berikut ini:

```
You are about to be asked to enter information that will be incorporated 
	into your certificate request.
	What you are about to enter is what is called a Distinguished Name or a DN.
	There are quite a few fields but you can leave some blank
	For some fields there will be a default value,
	If you enter '.', the field will be left blank.
```

Tabel berikut dapat membantu Anda membuat permintaan sertifikat.


**Data Permintaan Sertifikat**  

| Nama | Deskripsi | Contoh | 
| --- | --- | --- | 
| Nama Negara | Singkatan ISO dua huruf untuk negara Anda. | AS = Amerika Serikat | 
| Negara Bagian atau Provinsi | Nama negara bagian atau provinsi tempat organisasi Anda berada. Nama ini tidak boleh disingkat. | Washington | 
| Nama Lokal | Nama kota tempat organisasi Anda berada. | Seattle | 
| Nama Organisasi | Nama lengkap legal organisasi Anda. Jangan menyingkat nama organisasi Anda. | CorporationX | 
| Unit Organisasi | (Opsional) Untuk informasi organisasi tambahan. | Pemasaran | 
| Nama Umum | Nama domain yang sepenuhnya memenuhi syarat untuk CNAME Anda. Anda akan menerima peringatan pemeriksaan nama sertifikat jika ini tidak sama persis. | www.example.com | 
| Alamat Email | Alamat email administrator server | someone@example.com | 

**catatan**  
Bidang Nama Umum sering disalahpahami dan diselesaikan secara tidak benar. Nama umum biasanya host Anda ditambah nama domain. Ini akan terlihat seperti “www.example.com” atau “example.com”. Anda perlu membuat CSR menggunakan nama umum yang benar. 

## Langkah 4: Kirim CSR ke Otoritas Sertifikat
<a name="w2ab1c14c57c29c21"></a>

Untuk penggunaan produksi, Anda akan memperoleh sertifikat server dengan mengirimkan CSR Anda ke Otoritas Sertifikat (CA), yang mungkin memerlukan kredensi atau bukti identitas lainnya. Jika aplikasi Anda berhasil, CA mengembalikan sertifikat identitas yang ditandatangani secara digital dan mungkin file rantai sertifikat. AWS tidak merekomendasikan CA tertentu. Untuk sebagian daftar yang tersedia CAs, lihat [Otoritas Sertifikat - Penyedia](https://en.wikipedia.org/wiki/Certificate_authority#Providers) di Wikipedia.

Anda juga dapat membuat sertifikat yang ditandatangani sendiri, yang hanya dapat digunakan untuk tujuan pengujian. Untuk contoh ini, gunakan baris perintah berikut untuk menghasilkan sertifikat yang ditandatangani sendiri. 

```
openssl x509 -req -days 365 -in csr.pem -signkey privatekey.pem -out server.crt
```

Output akan terlihat serupa dengan yang berikut ini:

```
Loading 'screen' into random state - done
Signature ok
subject=/C=us/ST=washington/L=seattle/O=corporationx/OU=marketing/CN=example.com/emailAddress=someone@example.com
Getting Private key
```

## Langkah 5: Edit Aplikasi
<a name="w2ab1c14c57c29c23"></a>

Setelah Anda membuat sertifikat dan menandatanganinya, perbarui aplikasi Anda untuk mengaktifkan SSL dan memberikan informasi sertifikat Anda. Di halaman **Aplikasi**, pilih aplikasi untuk membuka halaman detail, lalu klik **Edit Aplikasi**. Untuk mengaktifkan dukungan SSL, atur **Aktifkan SSL** ke **Ya**, yang menampilkan opsi konfigurasi berikut.

**Sertifikat SSL**  
Tempelkan isi file public key certificate (.crt) ke dalam kotak. Sertifikat harus terlihat seperti berikut:  

```
-----BEGIN CERTIFICATE-----
MIICuTCCAiICCQCtqFKItVQJpzANBgkqhkiG9w0BAQUFADCBoDELMAkGA1UEBhMC
dXMxEzARBgNVBAgMCndhc2hpbmd0b24xEDAOBgNVBAcMB3NlYXR0bGUxDzANBgNV
BAoMBmFtYXpvbjEWMBQGA1UECwwNRGV2IGFuZCBUb29sczEdMBsGA1UEAwwUc3Rl
cGhhbmllYXBpZXJjZS5jb20xIjAgBgkqhkiG9w0BCQEWE3NhcGllcmNlQGFtYXpv
...
-----END CERTIFICATE-----
```
Jika Anda menggunakan Nginx dan Anda memiliki file rantai sertifikat, Anda harus menambahkan konten ke file sertifikat kunci publik.
Jika Anda memperbarui sertifikat yang ada, lakukan hal berikut:  
+ Pilih **Perbarui sertifikat SSL** untuk memperbarui sertifikat.
+ Jika sertifikat baru tidak cocok dengan kunci pribadi yang ada, pilih **Perbarui kunci sertifikat SSL**.
+ Jika sertifikat baru tidak cocok dengan rantai sertifikat yang ada, pilih **Perbarui sertifikat SSL**.

**Kunci Sertifikat SSL**  
Rekatkan isi file kunci pribadi (file.pem) ke dalam kotak. Seharusnya terlihat seperti berikut:  

```
----BEGIN RSA PRIVATE KEY-----
MIICXQIBAAKBgQC0CYklJY5r4vV2NHQYEpwtsLuMMBhylMrgBShKq+HHVLYQQCL6
+wGIiRq5qXqZlRXje3GM5Jvcm6q0R71MfRIl1FuzKyqDtneZaAIEYniZibHiUnmO
/UNqpFDosw/6hY3ONk0fSBlU4ivD0Gjpf6J80jL3DJ4R23Ed0sdL4pRT3QIDAQAB
AoGBAKmMfWrNRqYVtGKgnWB6Tji9QrKQLMXjmHeGg95mppdJELiXHhpMvrHtpIyK
...
-----END RSA PRIVATE KEY-----
```

**Sertifikat SSL dari Otoritas Sertifikasi**  
Jika Anda memiliki file rantai sertifikat, tempelkan konten ke dalam kotak.  
Jika Anda menggunakan Nginx, Anda harus membiarkan kotak ini kosong. Jika Anda memiliki file rantai sertifikat, tambahkan ke file sertifikat kunci publik di Sertifikat **SSL**.

![\[SSL Settings interface with options for SSL Dukungan, Certificate, Key, and Certification Authorities.\]](http://docs.aws.amazon.com/id_id/opsworks/latest/userguide/images/app_ssl_settings.png)


Setelah Anda mengklik **Simpan**, [gunakan ulang aplikasi](workingapps-deploying.md) untuk memperbarui instans online Anda.

Untuk [lapisan server aplikasi bawaan](workingcookbook-json.md#workingcookbook-json-deploy), OpsWorks Stacks secara otomatis memperbarui konfigurasi server. Setelah penerapan selesai, Anda dapat memverifikasi bahwa instalasi OpenSSL Anda berfungsi, sebagai berikut.

**Untuk memverifikasi instalasi OpenSSL**

1. Pergi ke halaman **Instances**.

1. Jalankan aplikasi dengan mengklik alamat IP instans server aplikasi atau, jika Anda menggunakan penyeimbang beban, alamat IP penyeimbang beban.

1. Ubah awalan alamat IP dari **http://** ke **https://** dan segarkan browser untuk memverifikasi halaman dimuat dengan benar dengan SSL.

Pengguna yang telah mengonfigurasi aplikasi untuk dijalankan di Mozilla Firefox terkadang mendapatkan kesalahan sertifikat berikut:`SEC_ERROR_UNKNOWN_ISSUER`. Kesalahan ini dapat disebabkan oleh fungsionalitas penggantian sertifikat dalam program antivirus dan antimalware organisasi Anda, oleh beberapa jenis perangkat lunak pemantauan dan pemfilteran lalu lintas jaringan, atau oleh malware. Untuk informasi selengkapnya tentang cara memecahkan masalah kesalahan ini, lihat [Cara memecahkan masalah kode kesalahan keamanan di situs web aman di situs web Dukungan](https://support.mozilla.org/en-US/kb/error-codes-secure-websites?redirectlocale=en-US&redirectslug=troubleshoot-SEC_ERROR_UNKNOWN_ISSUER#w_monitoringfiltering-in-corporate-networks) Mozilla Firefox.

[Untuk semua lapisan lain, termasuk lapisan khusus, OpsWorks Stacks hanya menambahkan pengaturan SSL ke atribut aplikasi. `deploy`](workingcookbook-json.md#workingcookbook-json-deploy) Anda harus menerapkan resep khusus untuk mengambil informasi dari objek node dan mengkonfigurasi server dengan tepat.