Hur ansöker man om Let's Encrypt? Let's Encrypt SSL Free Certificate Principle & Installation Tutorial

Hur ansöker man om Let's Encrypt?

Låt oss kryptera SSL-certifikatprincip och installationshandledning

Vad är SSL? Chen Weiliang diskuterade detta i sin tidigare artikel, " Vad är skillnaden mellan HTTP och HTTPS? En detaljerad förklaring av SSL-krypteringsprocessen ."

Förutom e- handelswebbplatser, som måste köpa avancerade krypterade SSL-certifikat, kan nya medieexperter som använder webbplatser för att marknadsföra sina officiella WeChat-konton faktiskt installera gratis krypterade SSL-certifikat. Detta kan hjälpa till med SEO och förbättra webbplatsens sökordsrankning i sökmotorer.

Hur ansöker man om Let's Encrypt? Let's Encrypt SSL Free Certificate Principle & Installation Tutorial

Let's Encrypt har ett eget arbetsflöde ( https://certbot.eff.org/ ). Linux- användare kan använda det arbetsflödet och följa den här handledningen.

Ladda ner verktyget certbot-auto först och kör sedan verktygets installationsberoenden.

wget https://dl.eff.org/certbot-auto --no-check-certificate
chmod +x ./certbot-auto
./certbot-auto -n

Generera SSL-certifikat

Ta sedan Chen Weiliangs bloggdomännamn som exempel, ändra det efter dina egna behov och kör följande kommando via SSH.

Var noga med att ändra kommandot i:

  1. brevlåda
  2. serversökväg
  3. webbplatsens domännamn

Enskild domän enda katalog, generera ett certifikat:

./certbot-auto certonly --email [email protected] --agree-tos --no-eff-email --webroot -w /home/admin/web/chenweiliang.com/public_html -d www.chenweiliang.com

En katalog för flera domäner, generera ett certifikat: (dvs. flera domännamn, en katalog, använd samma certifikat)

./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

Det genererade SSL-certifikatet kommer att sparas i:/etc/letsencrypt/live/www.chenweiliang.com/ Under innehåll.


Flera domännamn och flera kataloger, generera ett certifikat: (det vill säga flera domännamn, flera kataloger, använd samma certifikat)

./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

Efter att Let's Encrypt-certifikatet har installerats, visas följande meddelande i SSH:

VIKTIGA ANTECKNINGAR:
– Grattis Ditt certifikat och XNUMX kapain har sparats på:
/etc/letsencrypt/live/www.chenweiliang.com/fullchain.pem
Din nyckelfil har sparats på:
/etc/letsencrypt/live/www.chenweiliang.com/privkey.pem
Ditt certifikat upphör att gälla 2018-02-26. För att få ett nytt eller tweaked
version av detta certifikat i framtiden, kör helt enkelt certbot-auto
igen. För att icke-interaktivt förnya *alla* dina certifikat, kör
"certbot-auto förnya"
- Om du gillar Certbot, var vänlig överväga att stödja vårt arbete genom att:
Donera till ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donera till EFF: https://eff.org/donate-le

Förnyelse av SSL-certifikat

Certifikatförnyelse är också mycket bekvämt, med hjälp av crontab för automatisk förnyelse. För vissa Debian-versioner som inte har crontab installerat kan du först installera det manuellt.

apt-get install cron

Följande kommandon för nginx och apache matas in i filen /etc/crontab , vilket innebär att de förnyas var tionde dag, och en giltighetsperiod på 90 dagar är tillräcklig.

Nginx crontab-fil, lägg till:

0 3 */10 * * /root/certbot-auto renew --renew-hook "/etc/init.d/nginx reload"

Apache crontab-fil, lägg till:

0 3 */10 * * /root/certbot-auto renew --renew-hook "service httpd restart"

SSL-certifikat Apache-konfiguration

Nu måste vi göra ändringar i Apache-konfigurationen.

tips:

  • om du använderCWP kontrollpanel, i kryssrutan Lägg till domännamn Generera automatiskt ett SSL-certifikat, kommer det automatiskt att konfigurera SSL-certifikatet för Apache.
  • Om du gör fler av följande steg kan ett fel uppstå efter omstart av Apache.
  • Om det finns ett fel, radera konfigurationen du lade till manuellt.

Redigera filen httpd.conf ▼

/usr/local/apache/conf/httpd.conf

Hitta ▼

Listen 443
  • (ta bort föregående kommentarsnummer #)

eller lägg till lyssningsport 443 ▼

Listen 443

SSH kontrollera Apache-lyssningsporten ▼

grep ^Listen /usr/local/apache/conf/httpd.conf

Hitta ▼

mod_ssl
  • (ta bort föregående kommentarsnummer #)

eller lägg till ▼

LoadModule ssl_module modules/mod_ssl.so

Hitta ▼

httpd-ssl
  • (ta bort föregående kommentarsnummer #)

SSH kör sedan följande kommando (observera att ändra sökvägen till din egen):

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

Nästa steg, i slutet av Apache-konfigurationen för webbplatsen du skapade, under </VirtualHost>.

Lägg till konfigurationsfilen för SSL-sektionen (observera att ta bort kommentaren och ändra sökvägen till din egen):

<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>

Starta slutligen om Apache på den:

service httpd restart

Apache tvingar HTTP-omdirigering till HTTPS

  • Många webbförfrågningar kan alltid endast köras med SSL.
  • Vi måste se till att varje gång vi använder SSL måste webbplatsen nås via SSL.
  • Om någon användare försöker komma åt webbplatsen med en icke-SSL-URL måste han omdirigeras till SSL-webbplatsen.
  • Omdirigera till SSL URL med Apache mod_rewrite modul.
  • Som att använda LAMP-installationspaket med ett klick, inbyggd automatisk installation av SSL-certifikat och tvingad omdirigering till HTTPS, omdirigering till HTTPSI kraft, behöver du inte lägga till en HTTPS-omdirigering.

Lägg till omdirigeringsregel

  • I Apaches konfigurationsfil, redigera webbplatsens virtuella värd och lägg till följande inställningar.
  • Du kan också lägga till samma inställningar i dokumentroten på din webbplats i din .htaccess-fil.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Om du bara vill ange en viss URL för att omdirigera till HTTPS:

RewriteEngine On
RewriteRule ^message$ https://www.etufo.org/message [R=301,L]
  • Om någon försöker komma åt meddelande , kommer sidan att hoppa till https och användaren kan bara komma åt URL:en med SSL.

Starta om Apache för att .htaccess-filen ska börja gälla:

service httpd restart

注意 事项

  • Vänligen ändra ovanstående e-postadress till din e-postadress.
  • Kom ihåg att ändra ovanstående webbplatsdomännamn till ditt webbplatsdomännamn.

Omdirigeringsregelns platsproblem

När man placerar omdirigeringsregler under pseudostatiska regler stöter man ofta på problemet att HTTP inte kan omdirigera hela webbplatsen till HTTPS.

Från början kopierade vi omdirigeringskoden till .htaccess och den kommer att visas i följande fall ▼

Omdirigeringsregeln [L] finns ovan.

  • [L] indikerar att den nuvarande regeln är den sista regeln, sluta analysera följande omskrivningsregler.
  • Så när du kommer åt den omdirigerade artikelsidan stoppar [L] följande regler, så omdirigeringsreglerna fungerar inte.

När vi öppnar en HTTP-hemsida vill vi utlösa en URL-omdirigering, som kringgår URL-omskrivningsreglerna för att köra omdirigeringsreglerna, så att hela webbplatsen kan omdirigeras från HTTP till HTTPS.

Placera inte HTTPS-omdirigeringsregler under [L] -regler; placera dem ovanför [L] -regler. ▼

De pseudostatiska SSL-omdirigeringsreglerna [L] finns nedan.

Utökad läsning:

发表 评论

您的邮箱地址不会被公开。必填项已用*标注

Bläddra till början