Cara Menginstal Sertifikat SSL Ayo untuk Mengamankan Nginx di RHEL 9/8
- 4586
- 1379
- Dominick Barton
Di artikel ini, kami akan memandu Anda tentang cara menghasilkan dan menginstal sertifikat SSL/TLS yang diperoleh secara gratis Mari Enkripsi Otoritas Sertifikat yang akan kami gunakan untuk mengamankan transaksi HTTP webserver NGINX pada distribusi berbasis RHEL dan RHEL seperti Fedora, Linux Rocky Dan Almalinux.
Jika Anda ingin menginstal Mari Enkripsi Untuk Apache pada distribusi berbasis RHEL dan RHEL, ikuti panduan ini di bawah ini:
[Anda mungkin juga suka: cara menginstal Let's Encrypt SSL Certificate untuk mengamankan Apache di RHEL Systems]
Persyaratan
- Nama domain terdaftar dengan valid
A
Catatan DNS untuk mengarah kembali ke alamat IP publik server. - Nginx Web Server yang diinstal dengan SSL diaktifkan dan host virtual diaktifkan (hanya untuk beberapa domain atau subdomains hosting).
Pengaturan Lingkungan Pengujian Kami
Siapkan https dengan mari enkripsi untuk mengamankan nginx di rhelLangkah 1: Instal Nginx Web Server di RHEL Systems
1. Pada langkah pertama, jika Anda tidak punya Nginx Daemon yang sudah diinstal, keluarkan perintah di bawah ini dengan hak istimewa root untuk menginstal Nginx WebServer dari repositori EPEL.
------------- Di Rhel, Rocky & Almalinux 9 ------------- # DNF Instal https: // dl.Fedoraproject.org/pub/epel/epel-release-latest-9.Noarch.RPM ------------- On Rhel, Rocky & Almalinux 8 ------------- # DNF Instal https: // dl.Fedoraproject.org/pub/epel/epel-release-latest-8.Noarch.RPM ------------- Instal Nginx Web Server ------------- # yum instal nginx
Catatan: Pengguna Fedora tidak perlu menginstal repositori EPEL.
Langkah 2: Instal Let's Encrypt (Certbot) di RHEL Systems
2. Metode tercepat untuk menginstal klien Let's Encrypt pada sistem Linux adalah dengan menginstal certbot Dan python3-certbot-nginx Paket dari repositori EPEL.
# DNF menginstal certbot python3-certbot-nginxInstal Certbot untuk Nginx di RHEL Systems
3. Setelah certbot Klien telah diinstal, verifikasi versi yang diinstal dari Let's Encrypt Software dengan menjalankan perintah di bawah ini:
# certbot --version Certbot 1.30.0
Langkah 3: Dapatkan Sertifikat SSL Mari Gratis untuk Nginx
4. Proses mendapatkan gratis Sertifikat SSL/TLS untuk Nginx akan dilakukan secara manual dengan menggunakan Mari Enkripsi Standalone plugin.
Metode ini membutuhkan port itu 80 Harus gratis selama itu Mari Enkripsi Klien memvalidasi identitas server dan menghasilkan sertifikat.
Jadi, jika nginx sudah berjalan, hentikan daemon dengan perintah berikut dan jalankan utilitas SS untuk mengonfirmasi bahwa port 80 tidak lagi digunakan di tumpukan jaringan.
# Service nginx stop # systemctl stop nginx # ss -tlnPeriksa port jaringan mendengarkan-
5. Sekarang saatnya untuk mendapatkan sertifikat SSL gratis dari Mari Enkripsi dengan menjalankan certbot perintah dengan --Nginx
Untuk menginisialisasi pengambilan dan konfigurasi Let's Encrypt Security Certificate untuk Domain Nginx.
# certbot ---nginx atau # certbot ---nginx -d contoh.com -D www.contoh.comInstal mari kita enkripsi sertifikat untuk domain nginx
6. Akhirnya, jika semuanya berjalan sebagaimana mestinya, pesan info ucapan selamat akan ditampilkan di terminal bash Anda. Pesan juga akan ditampilkan saat sertifikat akan kedaluwarsa.
Letsencrypt Instalasi selesaiLangkah 4: Instal Let's Encrypt SSL Certificate di Nginx
9. Sekarang Anda memiliki gratis Sertifikat SSL/TLS, Saatnya menginstalnya di Nginx WebServer agar domain Anda dapat menggunakannya.
Semua sertifikat SSL baru ditempatkan /etc/letsencrypt/live/
di bawah direktori yang dinamai nama domain Anda. Gunakan perintah LS untuk mencantumkan file sertifikat yang dikeluarkan untuk domain Anda dan mengidentifikasi mereka.
# sudo ls/etc/letsencrypt/live/ # sudo ls -al/etc/letsencrypt/live/your_domain.tldLetsencrypt sertifikat SSL
10. Untuk menginstal file sertifikat di nginx dan mengaktifkan SSL, buka /etc/nginx/nginx.conf
file untuk mengedit dan menambahkan pernyataan di bawah ini setelah baris mendengarkan terakhir dari blok server. Gunakan ilustrasi di bawah ini sebagai panduan.
# vi/etc/nginx/nginx.conf
Kutipan blok Nginx SSL:
# Konfigurasi SSL Dengarkan 443 SSL Default_Server; ssl_certificate/etc/letsencrypt/live/your_domain.tld/fullchain.PEM; ssl_certificate_key/etc/letsencrypt/live/your_domain.tld/privkey.PEM; SSL_PROTOCOLS TLSV1 TLSV1.1 TLSV1.2; ssl_prefer_server_ciphers on; SSL_CIPHERS 'EECDH+AESGCM: EDH+AESGCM: AES256+EECDH: AES256+EDH';Aktifkan https pada konfigurasi nginx
Ganti nama domain String untuk sertifikat SSL agar sesuai dengan domain Anda sendiri.
11. Akhirnya, restart Nginx layanan dan kunjungi domain Anda melalui protokol https di https: // yourdomain
. Halaman harus memuat lancar, tanpa kesalahan sertifikat.
# Systemctl restart nginx # service nginx restart
12. Untuk memverifikasi SSL/TLS Sertifikat dan kelurusannya kunjungi tautan berikut:
https: // www.ssllabs.com/ssltest/analisis.htmlVerifikasi mari kita enkripsi sertifikat di domain Verifikasi Sertifikat SSL HTTPS di Domain
13. Jika Anda mendapat pemberitahuan bahwa server Anda mendukung yang lemah Dh pertukaran utama dan peringkat keseluruhan B nilai, menghasilkan yang baru Diffie-Hellman Cipher di /etc/nginx/ssl/ direktori untuk melindungi server Anda dari Kemacetan Serang dengan menjalankan perintah berikut.
# mkdir/etc/nginx/ssl # cd/etc/nginx/ssl # openssl dhparam -out dhparams.PEM 4096
Dalam contoh ini kami telah menggunakan a 4096 Bit Key, yang sebenarnya membutuhkan waktu lama untuk menghasilkan dan menempatkan overhead tambahan di server Anda dan pada jabat tangan SSL.
Jika tidak ada kebutuhan eksplisit untuk menggunakan kunci selama ini dan Anda tidak akan paranoid, Anda harus aman dengan a 2048 Kunci bit.
14. Setelah DH Kunci telah dihasilkan, buka file konfigurasi nginx dan tambahkan pernyataan di bawah ini setelah SSL_CIPHERS
baris untuk menambahkan kunci DH dan naikkan tingkat keamanan domain Anda ke A+
nilai.
# vi/etc/nginx/nginx.conf
Tambahkan kutipan blok berikut ke Nginx.conf:
ssl_dhparam/etc/nginx/ssl/dhparams.PEM; ssl_session_timeout 30m; SSL_SESSION_CACHE Dibagikan: SSL: 10m; SSL_BUFFER_SIZE 8K; add_header ketat-transport-keamanan max-usia = 31536000;Tambahkan Cipher Diffie-Hellman ke Konfigurasi Nginx
15. Mengulang kembali Nginx Layanan untuk menerapkan perubahan dan menguji ulang sertifikat SSL Anda dengan membersihkan cache hasil sebelumnya dari tautan yang disebutkan di atas.
# Systemctl restart nginx # service nginx restartVerifikasi LetsEncrypt Sertifikat SSL di Situs Web
Langkah 5: Auto Renew Nginx Free Memungkinkan Enkripsi Sertifikat SSL
16. Mari Enkripsi CA Rilis gratis SSL/TLS sertifikat berlaku untuk 90 hari -hari. Sertifikat dapat diperbarui dan diterapkan secara manual sebelum kedaluwarsa menggunakan plugin webroot, tanpa menghentikan server web Anda, dengan mengeluarkan perintah di bawah ini:
# certbot ---nginx -d contoh.com -D www.contoh.com # SystemCTL Reload nginx
Saat menjalankan perintah di atas pastikan Anda mengganti contoh.com
untuk mencocokkan domain Anda.
17. Untuk memperbaharui sertifikat secara otomatis sebelum kedaluwarsa membuat pekerjaan cron ke file crontab yang ada.
# crontab -e
Tambahkan pekerjaan cron berikut di bagian bawah file, yang akan berjalan setiap hari pada siang hari untuk memeriksa kadaluwarsa sertifikat dan memperbaruinya. Itu --diam
Opsi memberitahu certbot untuk tidak menghasilkan output.
0 12 * * */usr/bin/Certbot Renew -Quiet
Itu saja! Sekarang, Nginx Server dapat memberikan konten web yang aman dengan gratis SSL/TLS Let's Encrypt Sertifikat di situs web Anda.
- « Kumpulkan Alat Pemantauan Kinerja All-In-One Lanjutan untuk Linux
- 11 otoritas sertifikat SSL gratis dan berbiaya rendah »