Direktori Artikel
Bagaimana untuk memohon Let's Encrypt?
Mari Sulitkan Prinsip Sijil SSL & Tutorial Pemasangan
Apakah SSL?Chen WeiliangDalam artikel sebelum ini "Apakah perbezaan antara http vs https? Penjelasan terperinci tentang proses penyulitan SSL” disebut dalam.
selain daripadaE-dagangLaman web mesti membeli sijil SSL yang disulitkan lanjutan dan menggunakan tapak web sebagai WeChatPromosi akaun awamDaripadamedia baruOrang ramai, jika anda ingin memasang sijil SSL, anda sebenarnya boleh memasang sijil SSL yang disulitkan secara percuma.SEOBermanfaat, boleh meningkatkan ranking kata kunci laman web dalam enjin carian.
Let's Encrypt sendiri telah menulis satu set proses (https://certbot.eff.org/), gunakanLinuxkawan-kawan boleh ikut tutorial ini sambil merujuk kepada proses.
Muat turun alat certbot-auto dahulu, kemudian jalankan kebergantungan pemasangan alat itu.
wget https://dl.eff.org/certbot-auto --no-check-certificate chmod +x ./certbot-auto ./certbot-auto -n
Hasilkan sijil SSL
Seterusnya, denganChen WeiliangAmbil nama domain blog sebagai contoh, sila ubah suai mengikut keperluan anda sendiri.SSH menjalankan arahan berikut.
Pastikan anda mengubah suai arahan:
- Peti mel
- laluan pelayan
- nama domain tapak web
Direktori tunggal domain tunggal, jana sijil:
./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 berbilang domain, jana sijil: (iaitu, berbilang nama domain, direktori tunggal, gunakan sijil 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
Sijil SSL yang dijana akan disimpan dalam:/etc/letsencrypt/live/www.chenweiliang.com/
Di bawah kandungan.
Berbilang nama domain dan berbilang direktori, menjana sijil: (iaitu, berbilang nama domain, berbilang direktori, gunakan sijil 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
Selepas sijil Let's Encrypt berjaya dipasang, mesej gesaan berikut akan muncul dalam SSH:
NOTA PENTING:
– Tahniah! Sijil dan chain telah disimpan di:
/etc/letsencrypt/live/www.chenweiliang.com/fullchain.pem
Fail kunci anda telah disimpan di:
/etc/letsencrypt/live/www.chenweiliang.com/privkey.pem
Sijil anda akan tamat tempoh pada 2018-02-26. Untuk mendapatkan sijil baharu atau tweak
versi sijil ini pada masa hadapan, hanya jalankan certbot-auto
sekali lagi. Untuk memperbaharui *semua* sijil anda secara tidak interaktif, jalankan
"certbot-auto renew"
- Jika anda suka Certbot, sila pertimbangkan untuk menyokong kerja kami dengan:
Menderma kepada ISRG / Let's Encrypt: https://letsencrypt.org/donate
Menyumbang kepada KESAN: https://eff.org/donate-le
Pembaharuan Sijil SSL
Pembaharuan sijil juga sangat mudah, menggunakancrontabAutobaharui.Sesetengah Debian tidak memasang crontab, anda boleh memasangnya secara manual terlebih dahulu.
apt-get install cron
Arahan berikut adalah dalam nginx dan apache masing-masing / etc / crontab Perintah yang dimasukkan dalam fail bermakna ia diperbaharui setiap 10 hari, dan tempoh sah 90 hari adalah mencukupi.
Fail crontab Nginx, sila tambah:
0 3 */10 * * /root/certbot-auto renew --renew-hook "/etc/init.d/nginx reload"
Fail crontab Apache, sila tambah:
0 3 */10 * * /root/certbot-auto renew --renew-hook "service httpd restart"
Sijil SSL konfigurasi Apache
Sekarang, kita perlu membuat perubahan pada konfigurasi Apache.
Petua:
- jika anda menggunakanPanel Kawalan CWP, dalam semak Tambah nama domain Menjana sijil SSL secara automatik, ia akan mengkonfigurasi sijil SSL untuk Apache secara automatik.
- Jika anda melakukan lebih banyak langkah berikut, ralat mungkin berlaku selepas memulakan semula Apache.
- Jika terdapat ralat, padamkan konfigurasi yang anda tambahkan secara manual.
Edit fail httpd.conf ▼
/usr/local/apache/conf/httpd.conf
Cari ▼
Listen 443
- (buang nombor ulasan sebelumnya #)
atau tambah port mendengar 443 ▼
Listen 443
SSH semak port mendengar Apache ▼
grep ^Listen /usr/local/apache/conf/httpd.conf
Cari ▼
mod_ssl
- (buang nombor ulasan sebelumnya #)
atau tambah ▼
LoadModule ssl_module modules/mod_ssl.so
Cari ▼
httpd-ssl
- (buang nombor ulasan sebelumnya #)
Kemudian, SSH laksanakan arahan berikut (nota untuk menukar laluan kepada 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
Seterusnya, pada akhir konfigurasi Apache untuk tapak web yang anda buatbawah.
Tambahkan fail konfigurasi bahagian SSL (nota untuk mengalih keluar ulasan dan tukar laluan kepada anda sendiri):
<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 mulakan semula Apache padanya:
service httpd restart
Apache memaksa HTTP ubah hala ke HTTPS
- Banyak permintaan web pada bila-bila masa hanya boleh dijalankan dengan SSL.
- Kita perlu memastikan bahawa setiap kali kita menggunakan SSL, tapak web mesti diakses melalui SSL.
- Jika mana-mana pengguna cuba mengakses tapak web dengan URL bukan SSL, dia mesti diubah hala ke tapak web SSL.
- Ubah hala ke URL SSL menggunakan modul Apache mod_rewrite.
- Seperti menggunakan pakej pemasangan LAMP satu klik, pemasangan automatik terbina dalam sijil SSL dan ubah hala paksa ke HTTPS, ubah hala ke HTTPSBerkuatkuasa, anda tidak perlu menambah ubah hala HTTPS.
Tambahkan peraturan ubah hala
- Dalam fail konfigurasi Apache, edit hos maya tapak web dan tambah tetapan berikut.
- Anda juga boleh menambah tetapan yang sama pada akar dokumen di tapak web anda dalam fail .htaccess anda.
RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Jika anda hanya mahu menentukan URL tertentu untuk diubah hala ke HTTPS:
RewriteEngine On RewriteRule ^message$ https://www.etufo.org/message [R=301,L]
- Jika seseorang cuba mengakses mesej , halaman akan melompat ke https, dan pengguna hanya boleh mengakses URL dengan SSL.
Mulakan semula Apache untuk fail .htaccess berkuat kuasa:
service httpd restart
注意 事项
- Sila tukar alamat e-mel di atas kepada alamat e-mel anda.
- Sila ingat untuk menukar nama domain tapak web di atas kepada nama domain tapak web anda.
Masalah lokasi peraturan ubah hala
Di bawah peraturan pseudo-statik, apabila meletakkan peraturan lompat ubah hala, biasanya anda akan hadapi http tidak boleh mengubah hala ke https Masalah.
Pada mulanya kami menyalin kod ubah hala ke dalam .htaccess dan ia akan muncul dalam kes berikut ▼
- [L] menunjukkan bahawa peraturan semasa ialah peraturan terakhir, berhenti menganalisis peraturan tulis semula berikut.
- Oleh itu, apabila mengakses halaman artikel diubah hala, [L] menghentikan peraturan berikut, jadi peraturan ubah hala tidak berfungsi.
Apabila melawat halaman utama http, kami ingin mencetuskan pengalihan URL, langkau peraturan pseudo-statik untuk melaksanakan peraturan lompat pengalihan, supaya ia boleh dicapaihttp seluruh tapak ubah hala ke https .
Jangan letakkan peraturan ubah hala https [L] Di bawah peraturan, letakkan [L] di atas peraturan ▼
Bacaan lanjutan:
- Apakah perbezaan antara http vs https? Penjelasan terperinci tentang proses penyulitan SSL
- Apakah yang perlu saya lakukan jika saya mendapat ralat 500 selepas memasang sijil SSL Let's Encrypt dalam panel kawalan CWP?
- Lompat ke nama domain peringkat kedua secara automatik tanpa nama domain peringkat atas www: nama domain akar 301 mengubah hala www
Blog Harapan Chen Weiliang ( https://www.chenweiliang.com/ ) berkongsi "Bagaimana untuk memohon Let's Encrypt? Mari Encrypt SSL Percuma Prinsip Sijil & Tutorial Pemasangan", yang membantu anda.
Selamat datang untuk berkongsi pautan artikel ini:https://www.chenweiliang.com/cwl-512.html
Selamat datang ke saluran Telegram blog Chen Weiliang untuk mendapatkan kemas kini terkini!
📚 Panduan ini mengandungi nilai yang besar, 🌟Ini adalah peluang yang jarang berlaku, jangan lepaskan! ⏰⌛💨
Share dan like jika anda suka!
Perkongsian dan suka anda adalah motivasi berterusan kami!