Director articol
Cum să aplici pentru Let's Encrypt?
Să criptăm principiul certificatului SSL și tutorial de instalare
Ce este SSL?Chen WeiliangÎn articolul anterior „Care este diferența dintre http și https? Explicație detaliată a procesului de criptare SSL„Este menționat în.
除了E-commerceSite-ul web trebuie să achiziționeze un certificat SSL criptat avansat și să utilizeze site-ul web ca WeChatPromovarea conturilor publice的noi mediaOameni buni, dacă doriți să instalați un certificat SSL, de fapt, puteți instala gratuit un certificat SSL criptat.SEOUtil, poate îmbunătăți clasarea cuvintelor cheie ale site-ului web în motoarele de căutare.
Let's Encrypt în sine a scris un set de procese (https://certbot.eff.org/),utilizareLinuxprieteni, puteți urma acest tutorial în timp ce vă referiți la proces.
Descărcați mai întâi instrumentul certbot-auto, apoi rulați dependențele de instalare ale instrumentului.
wget https://dl.eff.org/certbot-auto --no-check-certificate chmod +x ./certbot-auto ./certbot-auto -n
Generați certificat SSL
În continuare, cuChen WeiliangLuați ca exemplu numele domeniului blogului, modificați-l în funcție de nevoile dvs. SSH rulează următoarele comenzi.
Asigurați-vă că modificați comanda în:
- cutie poștală
- calea serverului
- numele de domeniu al site-ului web
Director unic de domeniu, generați un certificat:
./certbot-auto certonly --email [email protected] --agree-tos --no-eff-email --webroot -w /home/admin/web/chenweiliang.com/public_html -d www.chenweiliang.com
Director unic cu mai multe domenii, generați un certificat: (adică, mai multe nume de domenii, un singur director, utilizați același certificat)
./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
Certificatul SSL generat va fi salvat în:/etc/letsencrypt/live/www.chenweiliang.com/
Sub conținut.
Mai multe nume de domenii și mai multe directoare, generați un certificat: (adică mai multe nume de domenii, mai multe directoare, utilizați același certificat)
./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
După ce certificatul Let's Encrypt este instalat cu succes, următorul mesaj prompt va apărea în SSH:
NOTITE IMPORTANTE:
– Felicitări! Certificatul și capain au fost salvate la:
/etc/letsencrypt/live/www.chenweiliang.com/fullchain.pem
Fișierul dvs. cheie a fost salvat la:
/etc/letsencrypt/live/www.chenweiliang.com/privkey.pem
Certificatul dvs. va expira pe 2018. Pentru a obține unul nou sau modificat
versiunea acestui certificat în viitor, pur și simplu rulați certbot-auto
Din nou. Pentru a reînnoi în mod non-interactiv *toate* certificatele dvs., rulați
„certbot-auto renew”
- Dacă vă place Certbot, vă rugăm să luați în considerare sprijinirea activității noastre prin:
Donați către ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donați către EFF: https://eff.org/donate-le
Reînnoirea certificatului SSL
Reînnoirea certificatului este, de asemenea, foarte convenabilă, folosindcrontabReînnoire automată.Unele Debian nu au crontab instalat, mai întâi îl puteți instala manual.
apt-get install cron
Următoarele comenzi sunt în nginx și respectiv apache / etc / crontab Comanda introdusă în dosar înseamnă că se reînnoiește la fiecare 10 zile, iar o perioadă de valabilitate de 90 de zile este suficientă.
Fișier crontab Nginx, adăugați:
0 3 */10 * * /root/certbot-auto renew --renew-hook "/etc/init.d/nginx reload"
Fișierul crontab Apache, adăugați:
0 3 */10 * * /root/certbot-auto renew --renew-hook "service httpd restart"
Certificat SSL de configurare Apache
Acum, trebuie să facem modificări la configurația Apache.
Sfaturi:
- daca folosestiPanoul de control CWP, în bifa Adăugare nume de domeniu Generați automat un certificat SSL, acesta va configura automat certificatul SSL pentru Apache.
- Dacă efectuați mai mulți pași din următorii, poate apărea o eroare după repornirea Apache.
- Dacă există o eroare, ștergeți configurația adăugată manual.
Editați fișierul httpd.conf ▼
/usr/local/apache/conf/httpd.conf
Găsiți ▼
Listen 443
- (eliminați numărul de comentariu precedent #)
sau adăugați portul de ascultare 443 ▼
Listen 443
Verifică SSH portul de ascultare Apache ▼
grep ^Listen /usr/local/apache/conf/httpd.conf
Găsiți ▼
mod_ssl
- (eliminați numărul de comentariu precedent #)
sau adăugați ▼
LoadModule ssl_module modules/mod_ssl.so
Găsiți ▼
httpd-ssl
- (eliminați numărul de comentariu precedent #)
Apoi, SSH execută următoarea comandă (notă pentru a schimba calea la propria ta):
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
Apoi, la sfârșitul configurației Apache pentru site-ul web pe care l-ați creatsub.
Adăugați fișierul de configurare al secțiunii SSL (rețineți pentru a elimina comentariul și schimbați calea la propria dvs.):
<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>
În sfârșit, reporniți Apache pe el:
service httpd restart
Apache forțează redirecționarea HTTP către HTTPS
- Multe solicitări web pot rula întotdeauna numai cu SSL.
- Trebuie să ne asigurăm că de fiecare dată când folosim SSL, site-ul trebuie să fie accesat prin SSL.
- Dacă orice utilizator încearcă să acceseze site-ul web cu o adresă URL non-SSL, el trebuie să fie redirecționat către site-ul web SSL.
- Redirecționați la adresa URL SSL utilizând modulul Apache mod_rewrite.
- Cum ar fi utilizarea pachetului de instalare LAMP cu un singur clic, instalarea automată încorporată a certificatului SSL și redirecționarea forțată către HTTPS, redirecționarea către HTTPSIn forta, nu trebuie să adăugați o redirecționare HTTPS.
Adăugați o regulă de redirecționare
- În fișierul de configurare Apache, editați gazda virtuală a site-ului web și adăugați următoarele setări.
- De asemenea, puteți adăuga aceleași setări la rădăcina documentului de pe site-ul dvs. în fișierul .htaccess.
RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Dacă doriți doar să specificați o anumită adresă URL pentru a redirecționa către HTTPS:
RewriteEngine On RewriteRule ^message$ https://www.etufo.org/message [R=301,L]
- Dacă cineva încearcă să acceseze mesaj , pagina va trece la https, iar utilizatorul poate accesa adresa URL numai cu SSL.
Reporniți Apache pentru ca fișierul .htaccess să aibă efect:
service httpd restart
注意 事项
- Vă rugăm să schimbați adresa de e-mail de mai sus cu adresa dvs. de e-mail.
- Vă rugăm să nu uitați să schimbați numele de domeniu al site-ului web de mai sus cu numele domeniului site-ului dvs.
Problemă cu locația regulii de redirecționare
În conformitate cu regulile pseudo-statice, atunci când plasați reguli de salt de redirecționare, vă întâlniți de obicei http nu poate redirecționa către https Problema.
Inițial am copiat codul de redirecționare în .htaccess și va apărea în următoarele cazuri ▼
- [L] indică faptul că regula curentă este ultima regulă, nu mai analizați următoarele reguli de rescriere.
- Deci, atunci când accesați pagina articolului redirecționat, [L] oprește următoarea regulă, astfel încât regula de redirecționare nu funcționează.
Când vizităm pagina de pornire http, dorim să declanșăm o redirecționare URL, să omitem regula pseudo-statică pentru a executa regula de salt de redirecționare, astfel încât să poată fi realizatăRedirecționare http la nivelul întregului site către https .
Nu introduceți reguli de redirecționare https [L] Sub reguli, pune [L] deasupra regulilor ▼
Lectură suplimentară:
- Care este diferența dintre http și https? Explicație detaliată a procesului de criptare SSL
- Ce ar trebui să fac dacă primesc o eroare 500 după instalarea certificatului Let's Encrypt SSL în panoul de control CWP?
- Salt automat la numele de domeniu de nivel al doilea fără numele domeniului de nivel superior www: numele de domeniu rădăcină 301 redirecționează www.
Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) a distribuit „Cum să aplicați pentru Let's Encrypt? Let's Encrypt SSL Free Certificate Principle & Installation Tutorial”, care vă este util.
Bine ați venit să distribuiți linkul acestui articol:https://www.chenweiliang.com/cwl-512.html
Bun venit pe canalul Telegram al blogului lui Chen Weiliang pentru a primi cele mai recente actualizări!
📚 Acest ghid conține o valoare uriașă, 🌟Aceasta este o oportunitate rară, nu o ratați! ⏰⌛💨
Distribuie si da like daca iti place!
Partajarea și like-urile tale sunt motivația noastră continuă!