Secure Sockets Layer/Keamanan Lapisan Pengangkutan (SSL/TLS) membuat saluran terenkripsi antara server web dan klien web yang melindungi data dalam transit agar tidak dicuri. Tutorial ini menjelaskan cara menambahkan dukungan secara manual untuk SSL/TLS pada instans EC2 dengan Amazon Linux 2 dan server web Apache. Tutorial ini mengasumsikan bahwa Anda tidak menggunakan penyeimbang beban. Jika menggunakan Elastic Load Balancing, Anda dapat memilih untuk mengkonfigurasi SSL offload pada penyeimbang beban menggunakan sertifikat dari AWS Certificate Manager sebagai gantinya. Show
Untuk alasan historis, enkripsi web sering disebut hanya sebagai SSL. Meskipun peramban web masih mendukung SSL, protokol penerusnya, TLS, lebih aman dari serangan. Amazon Linux 2 menonaktifkan dukungan sisi server untuk semua versi SSL secara default. Badan standar keamananmenganggap TLS 1.0 untuk menjadi tidak aman. TLS 1.0 dan TLS 1.1 secara resmiusangMaret 2021. Tutorial ini berisi panduan yang secara eksklusif didasarkan pada pengaktifan TLS 1.2. TLS 1.3 diselesaikan pada tahun 2018 dan tersedia di Amazon Linux 2 selama pustaka TLS yang mendasarinya (OpenSSL dalam tutorial ini) didukung dan diaktifkan. Untuk informasi lebih lanjut tentang standar enkripsi yang diperbarui, lihat RFC 7568 dan RFC 8446. Tutorial ini mengacu pada enkripsi web modern hanya sebagai TLS. Prosedur ini ditujukan untuk digunakan dengan Amazon Linux 2. Kami juga berasumsi bahwa Anda mulai dengan instans Amazon EC2 baru. Jika Anda mencoba untuk mengatur instans EC2 menjalankan distribusi yang berbeda, atau sebuah instans yang menjalankan versi lama dari Amazon Linux 2, beberapa prosedur dalam tutorial ini mungkin tidak berfungsi. Untuk AMI Amazon Linux: lihatTutorial: Mengonfigurasi SSL/TLS dengan Amazon Linux AMI. Untuk Ubuntu, lihat dokumentasi komunitas berikut ini: Buka SSL di Ubuntu. Untuk Red Hat Enterprise Linux, lihat berikut ini: Menyiapkan Apache HTTP Web Server. Untuk distribusi lain, lihat dokumentasi spesifik mereka. Sebagai alternatif, Anda dapat menggunakanAWS Certificate Manager(ACM)AWSNitro enclaves, yang merupakan aplikasi enclave yang memungkinkan Anda menggunakan sertifikat SSL/TLS publik dan pribadi dengan aplikasi web dan server yang berjalan di instans Amazon EC2 denganAWSNitro Enclences. Nitro Enclances adalah kemampuan Amazon EC2 yang memungkinkan pembuatan lingkungan komputasi terisolasi untuk melindungi dan memproses data yang sangat sensitif, seperti sertifikat SSL/TLS dan kunci pribadi. ACM untuk Nitro Enclave bekerja dengannginxberjalan di instans Linux Amazon EC2 Anda untuk membuat kunci pribadi, mendistribusikan sertifikat dan kunci pribadi, dan untuk mengelola perpanjangan sertifikat. Untuk menggunakan ACM untuk Nitro Enclave, Anda harus menggunakan instans Linux berkemampuan enclave. Untuk informasi selengkapnya, lihatApaAWSNitro Enclences?danAWS Certificate Manageruntuk Nitro Enclencesdi dalamAWSPanduan Pengguna Nitro Enclances. Daftar Isi
PrasyaratSebelum memulai tutorial ini, selesaikan langkah berikut:
Langkah 1: Aktifkan TLS di serverPilihan: Selesaikan tutorial ini menggunakan otomatisasi Untuk menyelesaikan tutorial ini menggunakanAWS Systems ManagerOtomatisasi alih-alih tugas-tugas berikut, jalankandokumen otomatisasi. Prosedur ini membawa Anda melalui proses pengaturan TLS di Amazon Linux 2 dengan sertifikat digital yang ditandatangani sendiri. Sertifikat yang ditandatangani sendiri dapat diterima untuk pengujian namun bukan produksi. Jika Anda menampilkan sertifikat yang ditandatangani sendiri ke internet, pengunjung ke situs Anda disambut oleh peringatan keamanan. Untuk mengaktifkan TLS di server
Langkah 2: Mendapatkan sertifikat yang ditandatangani CAAnda dapat menggunakan proses berikut untuk mendapatkan sertifikat yang ditandatangani CA:
Sertifikat host TLS X.509 yang ditandatangani sendiri bersifat identik secara kriptologis dengan sertifikat yang ditandatangani CA. Perbedaannya bersifat sosial, bukan matematika. CA menjanjikan, setidaknya, untuk memvalidasi kepemilikan domain sebelum menerbitkan sertifikat kepada pemohon. Setiap peramban web memuat daftar CA tepercaya oleh vendor peramban untuk melakukan hal ini. Sertifikat X.509 utamanya terdiri dari kunci publik yang sesuai dengan kunci server privat Anda, dan tanda tangan oleh CA yang terhubung secara kriptografis dengan kunci publik. Ketika peramban terhubung ke server web melalui HTTPS, server menyajikan sertifikat untuk peramban untuk memeriksa daftar CA tepercaya. Jika penandatangan ada di daftar, atau dapat diakses melalui rantai kepercayaan yang terdiri dari penanda tangan tepercaya lainnya, peramban menegosiasikan saluran data terenkripsi cepat dengan server dan memuat halaman. Sertifikat umumnya memerlukan biaya karena tenaga kerja yang terlibat dalam memvalidasi permintaan tersebut, jadi tidak masalah untuk mempertimbangkan berbagai kemungkinan. Beberapa CA menawarkan sertifikat tingkat dasar secara cuma-cuma. Hal yang paling menonjol dari CA adalah proyek Let's Encrypt, yang juga mendukung otomatisasi pembuatan sertifikat dan proses pembaruan. Untuk informasi selengkapnya tentang penggunaan Let's Encrypt sebagai CA Anda, lihat Automasi sertifikat: Let's Encrypt dengan Certbot pada Amazon Linux 2. Jika Anda berencana untuk menawarkan layanan kelas komersial, AWS Certificate Manager adalah pilihan yang baik. Yang mendasari sertifikat host adalah kuncinya. Sejak 2019, pemerintah dan kelompok industri merekomendasikan penggunaan ukuran kunci minimum (modulus) sebesar 2048 bit untuk kunci RSA yang ditujukan untuk melindungi dokumen, hingga tahun 2030. Ukuran modulus default yang dihasilkan oleh OpenSSL di Amazon Linux 2 adalah 2048 bit, yang dapat digunakan dalam sertifikat yang ditandatangani CA. Dalam prosedur berikut, langkah opsional yang disediakan bagi mereka yang menginginkan kunci yang disesuaikan, misalnya, adalah satu dengan modulus yang lebih besar atau menggunakan algoritme enkripsi berbeda. Instruksi untuk memperoleh sertifikat host yang ditandatangani CA ini tidak berfungsi kecuali jika Anda memiliki domain DNS yang terdaftar dan dihosting. Untuk mendapatkan sertifikat yang ditandatangani CA
Langkah 3: Menguji dan memperkuat konfigurasi keamananSetelah TLS Anda beroperasi dan terbuka ke publik, Anda harus menguji seberapa kuat TLS itu sesungguhnya. Hal ini mudah dilakukan menggunakan layanan daring seperti Qualys SSL Labs, yang melakukan analisis yang bebas dan menyeluruh atas pengaturan keamanan Anda. Berdasarkan hasilnya, Anda dapat memutuskan untuk memperkuat konfigurasi keamanan default dengan mengendalikan protokol mana yang diterima, cipher mana yang lebih disukai, dan yang mana yang tidak Anda sertakan. Untuk informasi lebih lanjut, lihat cara Qualys merumuskan nilainya. Pengujian di dunia nyata sangat penting untuk keamanan server Anda. Kesalahan konfigurasi kecil dapat menyebabkan pelanggaran keamanan serius dan hilangnya data. Karena praktik keamanan yang direkomendasikan terus berubah sebagai respons terhadap penelitian dan ancaman yang muncul, audit keamanan secara berkala sangat penting bagi administrasi server yang baik. Pada situs Qualys SSL Labs, masukkan nama domain server Anda yang sepenuhnya
memenuhi syarat, dalam formulir
Meskipun gambaran umum menunjukkan bahwa konfigurasi sebagian besar baik, laporan terperinci menunjukkan beberapa potensi masalah, yang tercantum dalam urutan kepelikan: ✗ Cipher RC4 didukung untuk digunakan oleh peramban tertentu yang lebih lama. Cipher adalah inti matematis dari algoritme enkripsi. RC4, cipher cepat yang digunakan untuk mengenkripsi aliran data TLS, dikenal memiliki beberapa kelemahan serius. Kecuali jika Anda memiliki alasan yang sangat bagus untuk mendukung peramban terdahulu, Anda harus menonaktifkan cipher ini. ✗ Versi TLS lama dapat didukung. Konfigurasi ini mendukung TLS 1.0 (sudah tidak digunakan) dan TLS 1.1 (pada jalur menuju deprekasi). Hanya TLS 1.2 yang telah direkomendasikan sejak 2018. ✗ Forward secrecy tidak sepenuhnya didukung. Forward secrecy adalah fitur algoritme yang mengenkripsi menggunakan kunci sesi sementara (ephemeral) yang berasal dari kunci privat. Artinya, dalam praktiknya, penyerang tidak dapat mendekripsi data HTTPS bahkan jika mereka memiliki kunci privat jangka panjang server web. Untuk mengoreksi dan memperkuat konfigurasi TLS untuk masa mendatang
Untuk mengubah daftar cipher yang diperbolehkan
Setelah
menyelesaikan kedua prosedur ini, simpan perubahan ke Jika Anda menguji domain lagi di Qualys SSL Labs, Anda akan melihat bahwa kelemahan RC4 dan peringatan lainnya hilang dan rangkumannya terlihat seperti berikut.
Setiap pembaruan untuk OpenSSL memperkenalkan cipher baru dan menghapus dukungan untuk cipher lama. Perbarui instans EC2 Amazon Linux 2 up-to-date, perhatikan pengumuman keamanan dariOpenSSL, dan nantikan pemberitahuan laporan eksploitasi keamanan baru dalam pers teknis. Pecahkan masalah
Automasi sertifikat: Let's Encrypt dengan Certbot pada Amazon Linux 2Mari Enkripsi sertifikat DST Root CA X3 yang ditandatangani silangkedaluwarsadi atas30 September 2021. Hal ini dapat menyebabkan koneksi Let's Encrypt gagal dengan OpenSSL 1.0.x pada CentOS/RHEL7 dan Amazon Linux. Langkah-langkah remediasi dapat ditemukankemari, atau Anda dapat mengikuti salah satu solusi manual yang ditemukan diHalaman blog OpenSSL. Instruksi untuk memperoleh sertifikat host Let's Encrypt ini tidak berfungsi kecuali jika Anda memiliki domain DNS yang terdaftar dan dihosting. Instruksi ini tidak berfungsi dengan nama host DNS publik yang ditetapkan olehAWS. Otoritas sertifikat Let's Encrypt adalah inti dari upaya Electronic Frontier Foundation (EFF) untuk mengenkripsi seluruh internet. Sejalan dengan tujuan tersebut, sertifikat host Let's Encrypt dirancang untuk dibuat, divalidasi, diinstal, dan dipertahankan dengan intervensi manusia secara terbatas. Aspek otomatis dari manajemen sertifikat dijalankan oleh agen perangkat lunak yang berjalan di server web Anda. Setelah diinstal dan dikonfigurasi, agen tersebut berkomunikasi secara aman dengan Let's Encrypt dan melakukan tugas administratif di Apache dan sistem manajemen kunci. Tutorial ini menggunakan agen Certbot bebas karena memungkinkan Anda untuk menyediakan kunci enkripsi khusus sebagai dasar untuk sertifikat Anda, atau memungkinkan agen itu sendiri untuk membuat kunci berdasarkan default-nya. Anda juga dapat mengonfigurasi Certbot untuk memperbarui sertifikat Anda secara berkala tanpa interaksi manusia, seperti yang dijelaskan di Untuk mengotomatiskan Certbot. Untuk informasi lebih lanjut, tanyakan tentang Panduan Pengguna dan halaman man pada Certbot. Certbot tidak didukung secara resmi di Amazon Linux 2, tetapi tersedia untuk diunduh dan berfungsi dengan benar saat diinstal. Kami merekomendasikan agar Anda membuat cadangan berikut untuk melindungi data Anda dan menghindari ketidaknyamanan:
Bersiap menginstalSelesaikan prosedur berikut sebelum Anda menginstal Certbot.
Instal dan jalankan CertbotProsedur ini didasarkan pada dokumentasi EFF untuk menginstal Certbot di Fedora dan RHEL 7. Prosedur ini menjelaskan penggunaan default Certbot, yang menghasilkan sertifikat berdasarkan kunci RSA 2048-bit.
Konfigurasi pembaruan sertifikat otomatisCertbot dirancang untuk menjadi bagian yang tidak terlihat dan tahan kesalahan pada sistem server Anda. Secara default, Certbot akan menghasilkan sertifikat host dengan waktu kedaluwarsa yang singkat selama 90 hari. Jika Anda belum mengonfigurasikan sistem untuk memanggil perintah secara otomatis, Anda harus menjalankan ulang perintah certbot secara manual sebelum kedaluwarsa. Prosedur ini menunjukkan cara mengotomatiskan Certbot dengan mengatur tugas cron. Untuk mengotomatiskan Certbot
Apa maksud perintah chmod 755?Apa Arti CHMOD 755? Mengatur hak akses menjadi chmod 755 hampir sama dengan chmod 644. Perbedaannya semua user dapat hak akses untuk mengeksekusi file. Ini biasanya digunakan untuk folder public yang membutuhkan perintah untuk berpindah dari direktori satu ke direktori lainnya.
Apakah fungsi dari perintah chmod?chmod sendiri adalah singkatan dari Change Mode yang di mana fungsinya sebagai managemen hak akses / permission terhadap suatu folder atau file kepada User, Group, dan Other. Sedangkan chown ialah sebuah perintah yang di gunakan untuk mengganti owner atau kepemilikan dari sebuah file atau folder.
Apa yang dilakukan perintah ls?3. ls [options] nama Fungsi : menampilkan daftar file dalam directory aktif. Keterangan : Perintah ini akan menampilkan informasi mengenai directory dan file. Bentuk sederhana perintah ls akan menampilkan hanya nama file.
Apa itu permission pada Linux?Pada dasarnya konsep file permission di GNU/Linux adalah suatu pengaturan kepemilikan file/folder berdasarkan user dan/atau group. Kepemilikan file/folder bisa diberikan kepada user/group. Secara garis besar file permission di bagi menjadi 3 yaitu user, group, dan other.
|