Android

Apache aman dengan mengenkripsi mari di Ubuntu 18.04

HELIKOPTER TEMPUR RAJA UDARA YANG DITAKUTI - 7 HELIKOPTER TEMPUR MILITER TERBAIK DI DUNIA

HELIKOPTER TEMPUR RAJA UDARA YANG DITAKUTI - 7 HELIKOPTER TEMPUR MILITER TERBAIK DI DUNIA

Daftar Isi:

Anonim

Let's Encrypt adalah otoritas sertifikat yang dibuat oleh Internet Security Research Group (ISRG). Ini memberikan sertifikat SSL gratis melalui proses terotomatisasi sepenuhnya yang dirancang untuk menghilangkan pembuatan sertifikat manual, validasi, instalasi, dan pembaruan.

Sertifikat yang dikeluarkan oleh Let's Encrypt dipercaya oleh semua browser utama hari ini.

Dalam tutorial ini, kami akan memberikan petunjuk langkah demi langkah tentang cara mengamankan Apache Anda dengan Let's Encrypt menggunakan alat certbot di Ubuntu 18.04.

Prasyarat

Pastikan Anda telah memenuhi prasyarat berikut sebelum melanjutkan dengan tutorial ini:

  • Nama domain menunjuk ke IP server publik Anda. Kami akan menggunakan example.com . Anda telah memasang Apache dengan host virtual apache untuk domain Anda.

Instal Certbot

Certbot adalah alat berfitur lengkap dan mudah digunakan yang dapat mengotomatiskan tugas-tugas untuk memperoleh dan memperbarui Mari Enkripsi sertifikat SSL dan konfigurasi server web. Paket certbot termasuk dalam repositori Ubuntu default.

Perbarui daftar paket dan instal paket certbot:

sudo apt update sudo apt install certbot

Hasilkan Grup Dh (Diffie-Hellman) yang Kuat

Pertukaran kunci Diffie – Hellman (DH) adalah metode pertukaran kunci kriptografi yang aman melalui saluran komunikasi yang tidak aman. Kami akan menghasilkan set parameter DH 2048 bit baru untuk memperkuat keamanan:

sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048 Jika Anda mau, Anda dapat mengubah ukurannya hingga 4096 bit, tetapi dalam hal ini, pembuatannya dapat memakan waktu lebih dari 30 menit tergantung pada entropi sistem.

Memperoleh Mari Mengenkripsi sertifikat SSL

Untuk mendapatkan sertifikat SSL untuk domain, kita akan menggunakan plugin Webroot yang berfungsi dengan membuat file sementara untuk memvalidasi domain yang diminta dalam direktori ${webroot-path}/.well-known/acme-challenge . Server Let's Encrypt membuat permintaan HTTP ke file sementara untuk memvalidasi bahwa domain yang diminta menyelesaikan ke server tempat certbot berjalan.

Untuk membuatnya lebih sederhana, kita akan memetakan semua permintaan HTTP untuk. .well-known/acme-challenge ke direktori tunggal, /var/lib/letsencrypt .

Perintah berikut akan membuat direktori dan membuatnya dapat ditulis untuk server Apache.

sudo mkdir -p /var/lib/letsencrypt/.well-known sudo chgrp www-data /var/lib/letsencrypt sudo chmod g+s /var/lib/letsencrypt

Untuk menghindari duplikasi kode, buat dua snippet konfigurasi berikut:

/etc/apache2/conf-available/letsencrypt.conf

Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/" AllowOverride None Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Require method GET POST OPTIONS Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/" AllowOverride None Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Require method GET POST OPTIONS /etc/apache2/conf-available/ssl-params.conf

SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1 SSLHonorCipherOrder On Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" Header always set X-Frame-Options DENY Header always set X-Content-Type-Options nosniff # Requires Apache >= 2.4 SSLCompression off SSLUseStapling on SSLStaplingCache "shmcb:logs/stapling-cache(150000)" # Requires Apache >= 2.4.11 SSLSessionTickets Off SSLOpenSSLConfCmd DHParameters "/etc/ssl/certs/dhparam.pem"

Cuplikan di atas menggunakan chipper yang direkomendasikan oleh Cipherli.st, memungkinkan OCSP Stapling, HTTP Strict Transport Security (HSTS) dan memberlakukan beberapa header HTTP yang berfokus pada keamanan.

Sebelum mengaktifkan file konfigurasi, pastikan mod_ssl dan mod_headers diaktifkan dengan mengeluarkan:

sudo a2enmod ssl sudo a2enmod headers

Selanjutnya, aktifkan file konfigurasi SSL dengan menjalankan perintah berikut:

sudo a2enconf letsencrypt sudo a2enconf ssl-params

Aktifkan modul HTTP / 2, yang akan membuat situs Anda lebih cepat dan lebih kuat:

sudo a2enmod

Muat ulang konfigurasi Apache agar perubahan diterapkan:

sudo systemctl reload apache2

Sekarang, kita dapat menjalankan alat Certbot dengan plugin webroot dan mendapatkan file sertifikat SSL dengan mengetik:

sudo certbot certonly --agree-tos --email [email protected] --webroot -w /var/lib/letsencrypt/ -d example.com -d www.example.com

Jika sertifikat SSL berhasil diperoleh, certbot akan mencetak pesan berikut:

IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/example.com/privkey.pem Your cert will expire on 2018-10-28. To obtain a new or tweaked version of this certificate in the future, simply run certbot again. To non-interactively renew *all* of your certificates, run "certbot renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF:

Sekarang Anda memiliki file sertifikat, edit konfigurasi virtual host domain Anda sebagai berikut:

/etc/apache2/sites-available/example.com.conf

ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration

Dengan konfigurasi di atas, kami memaksa HTTPS dan mengalihkan dari versi www ke versi non-www. Jatuh bebas untuk menyesuaikan konfigurasi sesuai dengan kebutuhan Anda.

Muat ulang layanan Apache agar perubahan diterapkan:

sudo systemctl reload apache2

Anda sekarang dapat membuka situs web Anda menggunakan https:// , dan Anda akan melihat ikon kunci hijau.

Perpanjangan otomatis Mari Enkripsi sertifikat SSL

Sertifikat Let's Encrypt berlaku selama 90 hari. Untuk secara otomatis memperbarui sertifikat sebelum habis masa berlakunya, paket certbot membuat cronjob yang berjalan dua kali sehari dan secara otomatis memperbarui sertifikat apa pun 30 hari sebelum berakhirnya.

Setelah sertifikat diperbarui, kami juga harus memuat ulang layanan Apache. Tambahkan --renew-hook "systemctl reload apache2" ke file /etc/cron.d/certbot sehingga terlihat seperti berikut:

/etc/cron.d/certbot

0 */12 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(3600))' && certbot -q renew --renew-hook "systemctl reload apache2"

Untuk menguji proses pembaruan, Anda dapat menggunakan sakelar certbot --dry-run :

sudo certbot renew --dry-run

Jika tidak ada kesalahan, itu berarti proses pembaruan berhasil.

Kesimpulan

Dalam tutorial ini, Anda menggunakan Let's Encrypt client certbot, untuk mengunduh sertifikat SSL untuk domain Anda. Anda juga telah membuat snippet Apache untuk menghindari duplikasi kode dan mengkonfigurasi Apache untuk menggunakan sertifikat. Di akhir tutorial, Anda telah menyiapkan cronjob untuk perpanjangan sertifikat otomatis.

apache ubuntu mari kita mengenkripsi certbot ssl

Posting ini adalah bagian dari seri bagaimana menginstal lampu-stack-on-ubuntu-18-04.

Posting lain dalam seri ini:

• Cara Menginstal Apache di Ubuntu 18.04 • Cara Mengatur Apache Virtual Host di Ubuntu 18.04 • Mengamankan Apache dengan Let's Encrypt di Ubuntu 18.04 • Cara Menginstal MySQL di Ubuntu 18.04 • Cara Menginstal PHP di Ubuntu 18.04