Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengakhiri HTTPS pada EC2 instance yang menjalankan Java SE
Untuk jenis kontainer Java SE, Anda mengaktifkan HTTPS dengan file konfigurasi.ebextensions, dan file konfigurasi nginx yang mengonfigurasi server nginx untuk digunakan. HTTPS
Semua AL2 AL2 023/platform mendukung fitur konfigurasi proxy yang seragam. Untuk informasi selengkapnya tentang mengonfigurasi server proxy pada versi platform Anda yang menjalankan AL2 023/AL2, lihat. Konfigurasi proksi terbalik
Tambahkan snippet berikut ke file konfigurasi Anda, menggantikan sertifikat dan placeholder kunci pribadi seperti yang diperintahkan, dan simpan snippet dalam direktori .ebextensions
. File konfigurasi melakukan tugas berikut:
-
Kunci
files
tersebut membuat file berikut pada instans:/etc/pki/tls/certs/server.crt
-
Membuat file sertifikat pada instans. Ganti
certificate file contents
dengan isi sertifikat Anda.catatan
YAMLbergantung pada lekukan yang konsisten. Cocokkan tingkat indentasi saat mengganti konten dalam file konfigurasi contoh dan pastikan bahwa editor teks Anda menggunakan spasi, bukan karakter tab, untuk indentasi.
Jika Anda memiliki sertifikat menengah, sertakan sertifikat tersebut di
server.crt
setelah sertifikat situs Anda.-----BEGIN CERTIFICATE-----
certificate file contents
-----END CERTIFICATE----------BEGIN CERTIFICATE-----
first intermediate certificate
-----END CERTIFICATE----- -----BEGIN CERTIFICATE-----second intermediate certificate
-----END CERTIFICATE----- /etc/pki/tls/certs/server.key
-
Membuat file kunci pribadi pada instans. Ganti
private key contents
dengan isi kunci pribadi yang digunakan untuk membuat permintaan sertifikat atau sertifikat yang ditandatangani sendiri.
-
Kunci
container_commands
tersebut memulai ulang serverr nginx setelah semuanya dikonfigurasi sehingga server memuat file konfigurasi nginx.
contoh .ebextensions/https-instance.config
files:
/etc/pki/tls/certs/server.crt:
content: |
-----BEGIN CERTIFICATE-----
certificate file contents
-----END CERTIFICATE-----
/etc/pki/tls/certs/server.key:
content: |
-----BEGIN RSA PRIVATE KEY-----
private key contents
# See note below.
-----END RSA PRIVATE KEY-----
container_commands:
01restart_nginx:
command: "service nginx restart"
catatan
Hindari melakukan file konfigurasi yang berisi kunci pribadi Anda ke kontrol sumber. Setelah Anda menguji konfigurasi dan mengonfirmasi bahwa konfigurasi berfungsi, simpan kunci pribadi Anda di Amazon S3 dan ubah konfigurasi untuk mengunduhnya selama deployment. Untuk instruksi, lihat Menyimpan kunci pribadi dengan aman di Amazon S3.
Tempatkan hal berikut dalam sebuah file dengan ekstensi .conf
di .ebextensions/nginx/conf.d/
direktori paket sumber Anda (misalnya, .ebextensions/nginx/conf.d/https.conf
). Ganti app_port
dengan nomor port yang didengarkan aplikasi Anda. Contoh ini mengkonfigurasi server nginx untuk mendengarkan pada port 443 menggunakan. SSL Untuk informasi selengkapnya tentang file konfigurasi ini pada platform Java SE, lihat Mengonfigurasi server proksi.
contoh . ebextensions/nginx/conf.d/https.conf
# HTTPS server
server {
listen 443;
server_name localhost;
ssl on;
ssl_certificate /etc/pki/tls/certs/server.crt;
ssl_certificate_key /etc/pki/tls/certs/server.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://localhost:app_port
;
proxy_set_header Connection "";
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
}
}
Pada lingkungan instans tunggal, Anda juga harus mengubah grup keamanan instans untuk mengizinkan lalu lintas pada port 443. File konfigurasi berikut mengambil ID grup keamanan menggunakan AWS CloudFormation fungsi dan menambahkan aturan ke dalamnya.
contoh .ebextensions/ .config https-instance-single
Resources:
sslSecurityGroupIngress:
Type: AWS::EC2::SecurityGroupIngress
Properties:
GroupId: {"Fn::GetAtt" : ["AWSEBSecurityGroup", "GroupId"]}
IpProtocol: tcp
ToPort: 443
FromPort: 443
CidrIp: 0.0.0.0/0
Untuk lingkungan yang seimbang beban, Anda mengonfigurasi penyeimbang beban untuk meneruskan lalu lintas aman melalui yang tidak tersentuh, atau mendekripsi dan mengenkripsi ulang untuk enkripsi. end-to-end