Android

Selamat apache dengan mari menyulitkan pada ubuntu 18.04

White Apache | WESTERN | Full Movie English | Free Feature Film | Cowboy Film

White Apache | WESTERN | Full Movie English | Free Feature Film | Cowboy Film

Isi kandungan:

Anonim

Let's Encrypt adalah kuasa sijil yang dibuat oleh Kumpulan Penyelidikan Keamanan Internet (ISRG). Ia menyediakan sijil SSL percuma melalui proses automatik sepenuhnya yang direka untuk menghapuskan pembuatan sijil manual, pengesahan, pemasangan, dan pembaharuan.

Sijil yang dikeluarkan oleh Let's Encrypt dipercayai oleh semua pelayar utama hari ini.

Dalam tutorial ini, kami akan memberikan arahan langkah demi langkah tentang cara untuk menjamin Apache anda dengan Let's Encrypt menggunakan alat certbot di Ubuntu 18.04.

Prasyarat

Pastikan anda telah memenuhi prasyarat berikut sebelum meneruskan dengan tutorial ini:

  • Nama domain yang menunjuk ke IP pelayan awam anda. Kami akan menggunakan example.com . Anda mempunyai Apache yang dipasang dengan hos maya apache untuk domain anda.

Pasang Certbot

Certbot adalah alat pilihan dan mudah digunakan yang boleh mengautomasikan tugas-tugas untuk mendapatkan dan memperbaharui Sijil Sijil SSL dan mengkonfigurasi pelayan web. Pakej certbot dimasukkan dalam repositori Ubuntu lalai.

Kemas kini senarai pakej dan pasang pakej certbot:

sudo apt update sudo apt install certbot

Menjana Kumpulan Dh (Diffie-Hellman) yang kuat

Pertukaran utama Diffie-Hellman (DH) adalah satu kaedah yang selamat bertukar kunci kriptografi ke atas saluran komunikasi yang tidak bercagar. Kami akan menghasilkan satu set baru 2048 bit DH parameter untuk mengukuhkan keselamatan:

sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048 Sekiranya anda mahu, anda boleh menukar saiz sehingga 4096 bit, tetapi dalam kes itu, generasi mungkin mengambil masa lebih daripada 30 minit bergantung kepada entropi sistem.

Mendapatkan Sijil Encik Sijil SSL

Untuk mendapatkan sijil SSL untuk domain, kami akan menggunakan plugin Webroot yang berfungsi dengan membuat fail sementara untuk mengesahkan domain yang diminta dalam direktori ${webroot-path}/.well-known/acme-challenge . Server Let's Encrypt membuat permintaan HTTP ke fail sementara untuk mengesahkan bahawa domain yang diminta menyelesaikan ke pelayan di mana sertbot berjalan.

Untuk menjadikannya lebih mudah, kami akan memetakan semua permintaan HTTP untuk .well-known/acme-challenge kepada direktori tunggal, /var/lib/letsencrypt .

Perintah berikut akan mencipta direktori dan menjadikannya boleh ditulis untuk pelayan Apache.

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

Untuk mengelakkan kod duplikasi, buat dua coretan 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"

Potongan di atas menggunakan chippers yang dicadangkan oleh Cipherli.st, membolehkan OCSP Stapling, HTTP Strict Transport Security (HSTS) dan menguatkan sedikit kepala HTTP yang berfokus pada keselamatan.

Sebelum mendayakan fail konfigurasi, pastikan mod_ssl dan mod_headers didayakan dengan mengeluarkan:

sudo a2enmod ssl sudo a2enmod headers

Seterusnya, dayakan fail konfigurasi SSL dengan menjalankan perintah berikut:

sudo a2enconf letsencrypt sudo a2enconf ssl-params

Dayakan modul HTTP / 2, yang akan menjadikan tapak anda lebih cepat dan lebih mantap:

sudo a2enmod

Muat semula konfigurasi Apache untuk melaksanakan perubahan:

sudo systemctl reload apache2

Sekarang, kita boleh menjalankan alat Certbot dengan plugin webroot dan mendapatkan fail sijil SSL dengan menaip:

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

Jika sijil SSL berjaya diperolehi, certbot akan mencetak mesej 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 bahawa anda mempunyai fail sijil, edit konfigurasi hos maya domain anda seperti 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 www ke versi bukan-www. Jatuh bebas untuk menyesuaikan konfigurasi mengikut keperluan anda.

Muat semula perkhidmatan Apache untuk perubahan yang berlaku:

sudo systemctl reload apache2

Anda kini boleh membuka laman web anda menggunakan https:// , dan anda akan melihat ikon kunci hijau.

Pembaharuan Auto Mari Sahkan sijil SSL

Mari sifatkan sijil sah selama 90 hari. Untuk memperbaharui sijil secara automatik sebelum mereka tamat tempoh, pakej certbot mewujudkan cronjob yang berjalan dua kali sehari dan secara automatik memperbaharui sijil 30 hari sebelum tamat tempohnya.

Sebaik sahaja sijil diperbaharui, kami juga harus memuatkan semula perkhidmatan Apache. --renew-hook "systemctl reload apache2" ke fail /etc/cron.d/certbot supaya kelihatan 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 pembaharuan, anda boleh menggunakan --dry-run suis --dry-run :

sudo certbot renew --dry-run

Sekiranya tiada kesilapan, ia bermakna proses pembaharuan berjaya.

Kesimpulannya

Dalam tutorial ini, anda menggunakan sijil klien Let's Encrypt, untuk memuat turun sijil SSL untuk domain anda. Anda juga telah membuat coretan Apache untuk mengelakkan kod pendua dan konfigurasi Apache untuk menggunakan sijil. Pada akhir tutorial, anda telah menyediakan cronjob untuk pembaharuan sijil automatik.

Apache ubuntu mari kita menyulitkan certbot ssl

Jawatan ini adalah sebahagian daripada siri cara pemasangan-lamp-stack-on-ubuntu-18-04.

Jawatan lain dalam siri ini:

• Bagaimana Untuk Memasang Apache di Ubuntu 18.04 • Bagaimana Menyediakan Apache Virtual Hosts di Ubuntu 18.04 • Secure Apache dengan Let's Encrypt di Ubuntu 18.04 • Bagaimana Memasang MySQL di Ubuntu 18.04 • Cara Pasang PHP di Ubuntu 18.04