Direktori Artikel
Bagaimana cara mendaftar Let's Encrypt?
Mari Enkripsi Prinsip & Tutorial Instalasi Sertifikat SSL
Apa itu SSL?Chen WeiliangPada artikel sebelumnya "Apa perbedaan antara http vs https? Penjelasan rinci tentang proses enkripsi SSL” disebutkan dalam.
SelainPerdagangan elektronikSitus web harus membeli sertifikat SSL terenkripsi lanjutan dan menggunakan situs web sebagai WeChatPromosi akun publik的media yang baruTeman-teman, jika Anda ingin menginstal sertifikat SSL, Anda sebenarnya dapat menginstal sertifikat SSL terenkripsi secara gratis.SEOIni sangat membantu dan dapat meningkatkan peringkat kata kunci situs web di mesin pencari.
Let's Encrypt sendiri telah menulis serangkaian proses (https://certbot.eff.org/),menggunakanLinuxsobat bisa mengikuti tutorial ini sambil mengacu pada prosesnya.
Unduh alat certbot-auto terlebih dahulu, lalu jalankan dependensi instalasi alat.
wget https://dl.eff.org/certbot-auto --no-check-certificate chmod +x ./certbot-auto ./certbot-auto -n
Hasilkan sertifikat SSL
Selanjutnya, denganChen WeiliangAmbil contoh nama domain blog, silahkan modifikasi sesuai kebutuhan anda SSH menjalankan perintah berikut.
Pastikan untuk mengubah perintah di:
- Kotak surat
- jalur server
- nama domain situs web
Direktori tunggal domain tunggal, buat sertifikat:
./certbot-auto certonly --email [email protected] --agree-tos --no-eff-email --webroot -w /home/admin/web/chenweiliang.com/public_html -d www.chenweiliang.com
Direktori tunggal multi-domain, buat sertifikat: (yaitu, beberapa nama domain, direktori tunggal, gunakan sertifikat yang sama)
./certbot-auto certonly --email [email protected] --agree-tos --no-eff-email --webroot -w /home/admin/web/chenweiliang.com/public_html -d www.chenweiliang.com -d img.chenweiliang.com
Sertifikat SSL yang dihasilkan akan disimpan di:/etc/letsencrypt/live/www.chenweiliang.com/
Di bawah konten.
Beberapa nama domain dan beberapa direktori, menghasilkan sertifikat: (yaitu, beberapa nama domain, beberapa direktori, gunakan sertifikat yang sama)
./certbot-auto certonly --email [email protected] --agree-tos --no-eff-email --webroot -w /home/admin/web/chenweiliang.com/public_html -d www.chenweiliang.com -d img.chenweiliang.com -w /home/eloha/public_html/site/etufo.org -d www.etufo.org -d img.etufo.org
Setelah sertifikat Let's Encrypt berhasil diinstal, akan muncul prompt SSH sebagai berikut:
CATATAN PENTING:
– Selamat! Sertifikat dan chain telah disimpan di:
/etc/letsencrypt/live/www.chenweiliang.com/fullchain.pem
File kunci Anda telah disimpan di:
/etc/letsencrypt/live/www.chenweiliang.com/privkey.pem
Sertifikat Anda akan kedaluwarsa pada 2018-02-26. Untuk mendapatkan yang baru atau yang di-tweak
versi sertifikat ini di masa mendatang, cukup jalankan certbot-auto
lagi. Untuk memperbarui *semua* sertifikat Anda secara non-interaktif, jalankan
"perpanjangan otomatis certbot"
- Jika Anda menyukai Certbot, silakan pertimbangkan mendukung pekerjaan kami dengan:
Donasi ke ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donasi ke EFF: https://eff.org/donate-le
Pembaruan Sertifikat SSL
Perpanjangan sertifikat juga sangat mudah, menggunakancrontabPerbaharui Otomatis.Beberapa Debian tidak menginstal crontab, Anda dapat menginstalnya secara manual terlebih dahulu.
apt-get install cron
Perintah berikut masing-masing ada di nginx dan Apache / etc / crontab Perintah yang dimasukkan dalam file berarti diperbarui setiap 10 hari, dan masa berlaku 90 hari sudah cukup.
File crontab Nginx, tambahkan:
0 3 */10 * * /root/certbot-auto renew --renew-hook "/etc/init.d/nginx reload"
File crontab Apache, tambahkan:
0 3 */10 * * /root/certbot-auto renew --renew-hook "service httpd restart"
Konfigurasi Apache sertifikat SSL
Sekarang, kita perlu membuat perubahan pada konfigurasi Apache.
Kiat:
- jika Anda menggunakanPanel Kontrol CWP, di centang Tambahkan nama domain Secara otomatis menghasilkan sertifikat SSL, itu akan secara otomatis mengkonfigurasi sertifikat SSL untuk Apache.
- Jika Anda melakukan lebih dari langkah-langkah berikut, kesalahan mungkin terjadi setelah memulai ulang Apache.
- Jika ada kesalahan, hapus konfigurasi yang Anda tambahkan secara manual.
Edit file httpd.conf
/usr/local/apache/conf/httpd.conf
Temukan
Listen 443
- (hapus nomor komentar sebelumnya #)
atau tambahkan port mendengarkan 443
Listen 443
SSH periksa port mendengarkan Apache
grep ^Listen /usr/local/apache/conf/httpd.conf
Temukan
mod_ssl
- (hapus nomor komentar sebelumnya #)
atau tambahkan
LoadModule ssl_module modules/mod_ssl.so
Temukan
httpd-ssl
- (hapus nomor komentar sebelumnya #)
Kemudian, SSH jalankan perintah berikut (perhatikan untuk mengubah jalur Anda sendiri):
at >/usr/local/apache/conf/extra/httpd-ssl.conf<<EOF Listen 443 AddType application/x-x509-ca-cert .crt AddType application/x-pkcs7-crl .crl SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH SSLProxyCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH SSLHonorCipherOrder on SSLProtocol all -SSLv2 -SSLv3 SSLProxyProtocol all -SSLv2 -SSLv3 SSLPassPhraseDialog builtin SSLSessionCache "shmcb:/usr/local/apache/logs/ssl_scache(512000)" SSLSessionCacheTimeout 300 SSLMutex "file:/usr/local/apache/logs/ssl_mutex" EOF
Selanjutnya, di akhir konfigurasi Apache untuk situs web yang Anda buatpengikut.
Tambahkan file konfigurasi bagian SSL (perhatikan untuk menghapus komentar, dan ubah jalur ke milik Anda):
<VirtualHost *:443> DocumentRoot /home/admin/web/chenweiliang.com/public_html //网站目录 ServerName www.chenweiliang.com:443 //域名 ServerAdmin [email protected] //邮箱 ErrorLog "/var/log/www.chenweiliang.com-error_log" //错误日志 CustomLog "/var/log/www.chenweiliang.com-access_log" common //访问日志 SSLEngine on SSLCertificateFile /etc/letsencrypt/live/www.chenweiliang.com/fullchain.pem //之前生成的证书 SSLCertificateKeyFile /etc/letsencrypt/live/www.chenweiliang.com/privkey.pem //之前生成的密钥 <Directory "/home/admin/web/chenweiliang.com/public_html"> //网站目录 SetOutputFilter DEFLATE Options FollowSymLinks AllowOverride All suPHP_UserGroup eloha eloha //用户组(有些服务器配置需要,有些可能不需要,出错请删除此行) Order allow,deny Allow from all DirectoryIndex index.html index.phps </Directory> </VirtualHost>
Akhirnya restart Apache di atasnya:
service httpd restart
Apache memaksa pengalihan HTTP ke HTTPS
- Banyak permintaan web selalu hanya dapat dijalankan dengan SSL.
- Kita perlu memastikan bahwa setiap kali kita menggunakan SSL, website harus diakses melalui SSL.
- Jika ada pengguna yang mencoba mengakses situs web dengan URL non-SSL, ia harus diarahkan ke situs web SSL.
- Redirect ke URL SSL menggunakan modul Apache mod_rewrite.
- Seperti menggunakan paket instalasi sekali klik LAMP, instalasi otomatis sertifikat SSL bawaan dan pengalihan paksa ke HTTPS, pengalihan ke HTTPSTerpaksa, Anda tidak perlu menambahkan pengalihan HTTPS.
Tambahkan aturan pengalihan
- Di file konfigurasi Apache, edit host virtual situs web dan tambahkan pengaturan berikut.
- Anda juga dapat menambahkan pengaturan yang sama ke root dokumen di situs web Anda di file .htaccess Anda.
RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Jika Anda hanya ingin menentukan URL tertentu untuk dialihkan ke HTTPS:
RewriteEngine On RewriteRule ^message$ https://www.etufo.org/message [R=301,L]
- Jika seseorang mencoba mengakses pesan , halaman akan melompat ke https, dan pengguna hanya dapat mengakses URL dengan SSL.
Mulai ulang Apache agar file .htaccess diterapkan:
service httpd restart
注意 事项
- Silahkan ubah alamat email di atas menjadi alamat email Anda.
- Harap ingat untuk mengubah nama domain situs web di atas menjadi nama domain situs web Anda.
Masalah lokasi aturan pengalihan
Di bawah aturan pseudo-statis, saat menempatkan aturan lompatan pengalihan, Anda biasanya menemukan http tidak dapat dialihkan ke https Masalah.
Awalnya kami menyalin kode redirect ke .htaccess dan itu akan muncul dalam kasus berikut
- [L] menunjukkan bahwa aturan saat ini adalah aturan terakhir, berhenti menganalisis aturan penulisan ulang berikut.
- Jadi saat mengakses halaman artikel yang dialihkan, [L] menghentikan aturan berikut, sehingga aturan pengalihan tidak berfungsi.
Saat mengunjungi beranda http, kami ingin memicu pengalihan URL, lewati aturan pseudo-statis untuk menjalankan aturan lompatan pengalihan, sehingga dapat dicapaihttp seluruh situs dialihkan ke https .
Jangan masukkan aturan pengalihan https [L] Di bawah aturan, taruh [L] di atas aturan
Bacaan lebih lanjut:
- Apa perbedaan antara http vs https? Penjelasan rinci tentang proses enkripsi SSL
- Apa yang harus saya lakukan jika saya mendapatkan error 500 setelah menginstal sertifikat SSL Let's Encrypt di panel kontrol CWP?
- Secara otomatis melompat ke nama domain tingkat kedua tanpa nama domain tingkat atas www: nama domain root 301 mengalihkan www
Harapan Chen Weiliang Blog ( https://www.chenweiliang.com/ ) berbagi "Bagaimana cara mendaftar Let's Encrypt? Let's Encrypt SSL Free Certificate Principle & Installation Tutorial", yang bermanfaat bagi Anda.
Selamat datang untuk membagikan tautan artikel ini:https://www.chenweiliang.com/cwl-512.html
Selamat datang di saluran Telegram blog Chen Weiliang untuk mendapatkan pembaruan terkini!
📚 Panduan ini mengandung nilai yang sangat besar, 🌟Ini adalah kesempatan langka, jangan sampai terlewatkan! ⏰⌛💨
Bagikan dan sukai jika Anda suka!
Berbagi dan suka Anda adalah motivasi berkelanjutan kami!