Cara Mengamankan Apache Dengan SSL dan Ayo Berenkripsi di Freebsd

Cara Mengamankan Apache Dengan SSL dan Ayo Berenkripsi di Freebsd

Dalam tutorial ini kita akan belajar cara mengamankan Apache http server dengan TLS/SSL Sertifikat yang ditawarkan oleh Mari Enkripsi di dalam Freebsd 11.X. Kami juga akan membahas cara mengotomatisasi proses pembaruan sertifikat untuk Encrypt '.

Baca juga: Instal Let's Encrypt for Nginx di FreeBSD

TLS/SSL Sertifikat digunakan oleh Apache Web Server untuk mengenkripsi komunikasi antara node akhir, atau lebih biasa antara server dan klien untuk memberikan keamanan. Mari Enkripsi Menyediakan certbot utilitas baris perintah, yang merupakan aplikasi yang dapat memfasilitasi cara Anda dapat memperoleh sertifikat tepercaya secara gratis.

Persyaratan:

  1. Pemasangan FreeBSD 11.X
  2. 10 hal yang harus dilakukan setelah instalasi freebsd
  3. Cara menginstal apache, mariadb dan php di freebsd

Langkah 1: Mengkonfigurasi Apache SSL di FreeBSD

1. Sebelum mulai menginstal utilitas certbot dan membuat file konfigurasi TSL untuk Apache, Pertama buat dua direktori berbeda bernama situs-tersedia Dan Situs-Enabled Dalam direktori konfigurasi root apache dengan mengeluarkan perintah di bawah ini.

Tujuan dari dua direktori ini adalah untuk memfasilitasi manajemen konfigurasi hosting virtual dalam sistem, tanpa memodifikasi Apache utama httpd.conf file konfigurasi setiap kali kami menambahkan host virtual baru.

# mkdir/usr/local/etc/apache24/situs-tersedia # mkdir/usr/local/etc/apache24/diaktifkan situs 

2. Setelah Anda membuat kedua direktori, buka Apache httpd.conf file dengan editor teks dan tambahkan baris berikut mendekati akhir file seperti yang diilustrasikan di bawah ini.

# nano/usr/local/etc/apache24/httpd.conf 

Tambahkan baris berikut:

Termasuk opsional etc/apache24/diaktifkan situs/*.conf 
Konfigurasikan Apache di freebsd

3. Selanjutnya, aktifkan Tls Modul untuk Apache dengan membuat file baru berikut bernama 020_mod_ssl.conf di dalam modul.D direktori dengan konten berikut.

# nano/usr/local/etc/apache24/modul.D/020_MOD_SSL.conf 

Tambahkan baris berikut untuk mengajukan 020_mod_ssl.conf.

Dengarkan 443 SSLPROTOCOL ALL -SSLV2 -SSLV3 SSLCIPHERSUITE Tinggi: Medium:!Anull:!Md5 sslpassphrasedialog builtin sslsessioncachimeout 300 
Konfigurasi Apache SSL di FreeBSD

4. Sekarang, butuhkan SSL modul dari /usr/local/etc/apache24/httpd.conf file dengan menghapus tagar dari awal baris berikut seperti yang diilustrasikan di bawah ini:

LoadModule ssl_module libexec/apache24/mod_ssl.Jadi 
Aktifkan modul SSL di Apache

5. Selanjutnya, buat Tls file konfigurasi untuk domain Anda di situs-tersedia Direktori, lebih disukai dengan nama domain Anda, seperti yang disajikan dalam kutipan di bawah ini:

# nano/usr/local/etc/apache24/situs-tersedia/bsd.LAN-SSL.conf 

Tambahkan konfigurasi virtualhost berikut ke file BSD.LAN-SSL.conf.

 SERVERNAME www.Domain Anda.com serveralias yourdomain.com documentrooth "/usr/local/www/apache24/data/" sslengine di sslcertificateFile "/usr/local/etc/letsencrypt/live/www.Domain Anda.com/sertifikat.PEM "sslcertificateKeyFile"/usr/local/etc/letsencrypt/live/www.Domain Anda.com/privkey.PEM "SSLCertificateChainFile"/usr/local/etc/letsencrypt/live/www.Domain Anda.com/fullchain.PEM "SSLOPTIONS +STDENVVARS SSLOPTIONS +STDENVVAR BROWSERMATCH" MSIE [2-5] "\ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 CustomLog "/var/log/apache/httpd-ssl_request.log "\" %t %h %ssl_protocol x %ssl_cipher x \ "" %r \"" %b ""Opsi indeks followsymlinks multiviews #allowoverride mengontrol arahan apa yang mungkin ditempatkan di dalam .file htaccess. AlloVerRide semua #Controls yang bisa mendapatkan barang dari file server ini memerlukan semua kesalahan yang diberikan ""/var/log/apache/yourdomain.SSL-error.Log ""CustomLog""/Var/Log/Apache/YourDomain.SSL-ACCESS_LOG ""digabungkan  

Makre yakin Anda mengganti variabel nama domain dari Nama server, Serveralias, Catatan eror, CustomLog pernyataan yang sesuai.

Langkah 2: Instal Lets'Rrypt on Freebsd

6. Pada langkah berikutnya, keluarkan perintah berikut untuk menginstal certbot utilitas disediakan oleh Mari Enkripsi, yang akan digunakan untuk mendapatkan Apache TSL Sertifikat gratis untuk domain Anda.

Saat menginstal certbot serangkaian prompt akan ditampilkan di layar Anda. Gunakan tangkapan layar di bawah ini untuk mengonfigurasi certbot kegunaan. Juga, menyusun dan menginstal Certbot Utility mungkin membutuhkan waktu, tergantung pada sumber daya mesin Anda.

# CD/USR/PORTS/Security/PY-CERTBOT # Buat Instal Bersih 
Instal Certbot di FreeBSD

7. Setelah proses kompilasi selesai, keluarkan perintah di bawah ini untuk memperbarui certbot utilitas dan certbot dependensi yang diperlukan.

# pkg instal py27-certbot # pkg instal py27-acme 

8. Untuk menghasilkan sertifikat untuk domain Anda, keluarkan perintah seperti yang diilustrasikan di bawah ini. Pastikan Anda menyediakan lokasi webroot yang benar di mana file situs web Anda disimpan dalam sistem file (Root document arahan dari file konfigurasi domain Anda) menggunakan -w bendera. Jika Anda memiliki banyak subdomain, tambahkan semuanya dengan -D bendera.

# certbot certonly --webroot -w/usr/local/www/apache24/data/-d yourdomain.com -D www.Domain Anda.com 

Saat memperoleh sertifikat, berikan alamat email untuk pembaruan sertifikat, tekan A untuk menyetujui dengan syarat dan ketentuan dan ketentuan N Untuk tidak membagikan alamat email, mari kita enkripsi mitra.

Output perintah certbot
Menyimpan log debug ke/var/log/letsencrypt/letsencrypt.Log Masukkan Alamat Email (Digunakan untuk Pembaruan Pembaruan dan Keamanan yang Mendesak) (Masukkan 'C' untuk membatalkan): [Email Dilindungi] Tampaknya ada masalah dengan alamat itu. Masukkan alamat email (digunakan untuk pemberitahuan pembaruan dan keamanan yang mendesak) Jika Anda benar-benar ingin melewatkan ini, Anda dapat menjalankan klien dengan-register-unsafely-without-email tetapi pastikan Anda kemudian mencadangkan kunci akun Anda dari/etc/letsencrypt/ Akun (masukkan 'C' untuk membatalkan): [Email Dilindungi] ------------------------------------ ------------------------------------------- Baca Ketentuan Layanan di https: // letsencrypt.org/dokumen/le-sa-v1.1.1-Agustus-1-2016.pdf. Anda harus setuju untuk mendaftar dengan server ACME di https: // acme-v01.API.Letsencrypt.org/direktori ----------------------------------------------- -------------------------------- (A) GREE/(C) Ancel: A ------------------------------------------------------------------------------- Apakah Anda bersedia membagikan alamat email Anda dengan Electronic Frontier Foundation, mitra pendiri Proyek Let's Encrypt dan organisasi nirlaba yang mengembangkan Certbot? Kami ingin mengirimi Anda email tentang EFF dan pekerjaan kami untuk mengenkripsi web, melindungi penggunanya dan mempertahankan hak digital. ------------------------------------------------------------------------------- (Ya Tidak: N Mendapatkan Sertifikat Baru Melakukan Tantangan berikut: HTTP-01 Challenge untuk www.domain.com Menggunakan Webroot Path/USR/LOCAL/WWW/APACHE24/Data untuk semua domain yang tidak tertandingi. Menunggu verifikasi… Membersihkan Tantangan Catatan Penting: - Selamat! Sertifikat dan rantai Anda telah disimpan di/usr/local/etc/letsencrypt/live/www.Domain Anda.com/fullchain.PEM. Sertifikat Anda akan berakhir pada 2017-11-15. Untuk mendapatkan versi baru atau tweak dari sertifikat ini di masa depan, cukup jalankan Certbot lagi. Untuk memperbarui non -interaktif * semua * sertifikat Anda, jalankan ""Certbot Renew"" - kredensial akun Anda telah disimpan di direktori konfigurasi Certbot Anda di/usr/local/etc/letsencrypt. Anda harus membuat cadangan yang aman dari folder ini sekarang. Direktori konfigurasi ini juga akan berisi sertifikat dan kunci pribadi yang diperoleh oleh certbot sehingga membuat cadangan reguler dari folder ini sangat ideal. - Jika Anda menyukai Certbot, harap pertimbangkan untuk mendukung pekerjaan kami dengan: menyumbang ke ISRG/Let's Encrypt: https: // letsencrypt.org/donasi menyumbang ke eff: https: // eff.org/donasi-le

9. Setelah Anda memperoleh sertifikat untuk domain Anda, Anda dapat menjalankan perintah LS untuk mencantumkan semua komponen sertifikat (rantai, kunci pribadi, sertifikat) seperti yang disajikan dalam contoh di bawah ini.

# ls -al/usr/local/etc/letsencrypt/live/www.Domain Anda.com/ 
Daftar Sertifikat Domain dan Kunci

Langkah 3: Perbarui Sertifikat Apache TLS di FreeBSD

10. Untuk menambahkan sertifikat ayat.

# nano/usr/local/etc/apache24/situs-tersedia/bsd.LAN-SSL.conf 

Tambahkan baris sertifikat TLS ini:

SslcertificateFile ""/usr/local/etc/letsencrypt/live/www.Domain Anda.com/sertifikat.PEM ""sslcertificateKeyFile""/usr/local/etc/letsencrypt/live/www.Domain Anda.com/privkey.PEM ""SSLCertificateChainFile""/usr/local/etc/letsencrypt/live/www.Domain Anda.com/fullchain.PEM "" 
Konfigurasikan sertifikat SSL untuk domain

11. Akhirnya, aktifkan file konfigurasi TLS, dengan membuat symlink untuk file konfigurasi TLS domain Anda Situs-Enabled Direktori, periksa konfigurasi Apache untuk kemungkinan kesalahan sintaksis dan, jika sintaksnya ok, restart Apache Daemon dengan mengeluarkan perintah di bawah ini.

# ln -sf/usr/local/etc/apache24/situs -tersedia/bsd.LAN-SSL.conf/usr/local/etc/apache24/Situs -Enabled/ # Apachectl -t # Service Apache24 Restart 

12. Untuk memeriksa apakah layanan Apache mendengarkan Https pelabuhan 443, Keluarkan perintah berikut untuk mendaftarkan soket jaringan httpd.

# sockstat -4 | grep httpd 
Periksa port Apache

13. Anda dapat menavigasi ke alamat domain Anda dari browser melalui protokol HTTPS untuk mengonfirmasi bahwa Sertifikat Enkripsi Mari berhasil diterapkan.

https: // www.Domain Anda.com 
Verifikasi HTTPS Let's Encrypt Certificate

14. Untuk mendapatkan informasi tambahan tentang sertifikat Enkripsi Let's yang dikeluarkan dari baris perintah, gunakan openssl perintah sebagai berikut.

# OpenSSL S_Client -Connect www.Domain Anda.com: 443 
Periksa informasi sertifikat mari kita

15. Anda juga dapat memverifikasi apakah lalu lintas dienkripsi dengan sertifikat yang valid yang disediakan oleh Mari Enkripsi CA dari perangkat seluler seperti yang diilustrasikan dalam tangkapan layar seluler di bawah ini.

Verifikasi mari kita mengenkripsi lalu lintas https

Itu saja! Klien sekarang dapat mengunjungi situs web Anda dengan aman, karena lalu lintas yang mengalir antara server dan browser klien dienkripsi. Untuk tugas yang lebih kompleks tentang utilitas certbot, kunjungi tautan berikut: https: // certbot.Eff.org/

"