Directory articoli
Come richiedere Let's Encrypt?
Crittografiamo il principio del certificato SSL e il tutorial sull'installazione
Cos'è SSL?Chen WeiangNell'articolo precedente"Qual è la differenza tra http e https? Spiegazione dettagliata del processo di crittografia SSL" menzionato in.
OltreE-commerceIl sito Web deve acquistare un certificato SSL crittografato avanzato e utilizzare il sito Web come WeChatPromozione dell'account pubblico的nuovi mediaPersone, se vuoi installare un certificato SSL, puoi effettivamente installare un certificato SSL crittografato gratuitamente.Gestione SEOUtile, può migliorare il posizionamento delle parole chiave del sito Web nei motori di ricerca.
Let's Encrypt stesso ha scritto una serie di processi (https://certbot.eff.org/),utilizzoLinuxamici, potete seguire questo tutorial mentre vi riferite al processo.
Scarica prima lo strumento certbot-auto, quindi esegui le dipendenze di installazione dello strumento.
wget https://dl.eff.org/certbot-auto --no-check-certificate chmod +x ./certbot-auto ./certbot-auto -n
Genera certificato SSL
Avanti, conChen WeiangPrendi il nome di dominio del blog come esempio, modificalo in base alle tue esigenze SSH esegue i seguenti comandi.
Assicurati di modificare il comando in:
- 邮箱
- percorso del server
- Dominio del sito Web
Directory singola a dominio singolo, genera un certificato:
./certbot-auto certonly --email [email protected] --agree-tos --no-eff-email --webroot -w /home/admin/web/chenweiliang.com/public_html -d www.chenweiliang.com
Directory singola multidominio, genera un certificato: (ad es. più nomi di dominio, directory singola, utilizza lo stesso certificato)
./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
Il certificato SSL generato verrà salvato in:/etc/letsencrypt/live/www.chenweiliang.com/
Sotto i contenuti.
Più nomi di dominio e più directory, genera un certificato: (ovvero più nomi di dominio, più directory, utilizza lo stesso certificato)
./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
Dopo che il certificato Let's Encrypt è stato installato correttamente, in SSH verrà visualizzato il seguente messaggio di richiesta:
NOTE IMPORTANTI:
– Congratulazioni!Il tuo certificato e chain sono stati salvati in:
/etc/letsencrypt/live/www.chenweiliang.com/fullchain.pem
Il tuo file chiave è stato salvato in:
/etc/letsencrypt/live/www.chenweiliang.com/privkey.pem
Il tuo certificato scadrà il 2018-02-26. Per ottenere un certificato nuovo o ottimizzato
versione di questo certificato in futuro, esegui semplicemente certbot-auto
Per rinnovare in modo non interattivo *tutti* i tuoi certificati, esegui
"certbot-rinnovo automatico"
- Se ti piace Certbot, considera di supportare il nostro lavoro tramite:
Donazione a ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donare a EFF: https://eff.org/donate-le
Rinnovo del certificato SSL
Anche il rinnovo del certificato è molto conveniente, utilizzandocrontabRinnovo Automatico.Alcune Debian non hanno crontab installato, puoi prima installarlo manualmente.
apt-get install cron
I seguenti comandi sono rispettivamente in nginx e apache / etc / crontab Il comando inserito nel file significa che si rinnova ogni 10 giorni ed è sufficiente un periodo di validità di 90 giorni.
Nginx file crontab, aggiungi:
0 3 */10 * * /root/certbot-auto renew --renew-hook "/etc/init.d/nginx reload"
File crontab Apache, aggiungi:
0 3 */10 * * /root/certbot-auto renew --renew-hook "service httpd restart"
Certificato SSL Configurazione Apache
Ora, dobbiamo apportare modifiche alla configurazione di Apache.
Suggerimenti:
- se usiPannello di controllo CWP, nel controllo Aggiungi nome di dominio Genera automaticamente un certificato SSL, configurerà automaticamente il certificato SSL per Apache.
- Se esegui più dei seguenti passaggi, potrebbe verificarsi un errore dopo il riavvio di Apache.
- In caso di errore, eliminare la configurazione aggiunta manualmente.
Modifica il file httpd.conf ▼
/usr/local/apache/conf/httpd.conf
Trova ▼
Listen 443
- (rimuovere il numero di commento precedente #)
o aggiungi la porta di ascolto 443 ▼
Listen 443
SSH controlla la porta di ascolto di Apache ▼
grep ^Listen /usr/local/apache/conf/httpd.conf
Trova ▼
mod_ssl
- (rimuovere il numero di commento precedente #)
o aggiungi ▼
LoadModule ssl_module modules/mod_ssl.so
Trova ▼
httpd-ssl
- (rimuovere il numero di commento precedente #)
Quindi, SSH esegui il seguente comando (nota per cambiare il percorso al tuo):
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
Successivamente, al termine della configurazione di Apache per il sito Web che hai creatosotto.
Aggiungi il file di configurazione della sezione SSL (nota per rimuovere il commento e cambia il percorso con il tuo):
<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>
Infine riavvia Apache su di esso:
service httpd restart
Apache forza il reindirizzamento HTTP su HTTPS
- Molte richieste web possono sempre essere eseguite solo con SSL.
- Dobbiamo assicurarci che ogni volta che utilizziamo SSL, è necessario accedere al sito Web tramite SSL.
- Se un utente tenta di accedere al sito Web con un URL non SSL, deve essere reindirizzato al sito Web SSL.
- Reindirizzamento all'URL SSL utilizzando il modulo mod_rewrite di Apache.
- Come l'utilizzo del pacchetto di installazione LAMP con un clic, l'installazione automatica integrata del certificato SSL e il reindirizzamento forzato a HTTPS, il reindirizzamento a HTTPSVigente, non è necessario aggiungere un reindirizzamento HTTPS.
Aggiungi regola di reindirizzamento
- Nel file di configurazione di Apache, modifica l'host virtuale del sito Web e aggiungi le seguenti impostazioni.
- Puoi anche aggiungere le stesse impostazioni alla radice del documento sul tuo sito web nel tuo file .htaccess.
RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Se desideri semplicemente specificare un determinato URL da reindirizzare a HTTPS:
RewriteEngine On RewriteRule ^message$ https://www.etufo.org/message [R=301,L]
- Se qualcuno tenta di accedere messaggio , la pagina passerà a https e l'utente può accedere all'URL solo con SSL.
Riavvia Apache per rendere effettivo il file .htaccess:
service httpd restart
注意 事项
- Si prega di modificare l'indirizzo e-mail sopra con il proprio indirizzo e-mail.
- Ricordati di cambiare il nome di dominio del sito web sopra con il nome di dominio del tuo sito web.
Problema di posizione della regola di reindirizzamento
Sotto regole pseudo-statiche, quando si posizionano regole di reindirizzamento di salto, di solito incontrerete http non può reindirizzare a https Il problema.
Inizialmente abbiamo copiato il codice di reindirizzamento in .htaccess e apparirà nei seguenti casi ▼
- [L] indica che la regola corrente è l'ultima, interrompere l'analisi delle seguenti regole di riscrittura.
- Quindi, quando si accede alla pagina dell'articolo reindirizzato, [L] interrompe le seguenti regole, quindi le regole di reindirizzamento non funzionano.
Quando visitiamo la home page http, vogliamo attivare un reindirizzamento URL, saltare la regola pseudo-statica per eseguire la regola di salto di reindirizzamento, in modo che possa essere raggiuntaReindirizzamento http a livello di sito a https .
Non inserire regole di reindirizzamento https [L] Sotto le regole, metti [L] al di sopra delle regole ▼
Lettura estesa:
- Qual è la differenza tra http e https? Spiegazione dettagliata del processo di crittografia SSL
- Cosa devo fare se ricevo un errore 500 dopo aver installato il certificato Let's Encrypt SSL nel pannello di controllo di CWP?
- Salta automaticamente al nome di dominio di secondo livello senza il nome di dominio di primo livello www: il nome di dominio principale 301 reindirizza www
Speranza Chen Weiliang Blog ( https://www.chenweiliang.com/ ) ha condiviso "Come richiedere Let's Encrypt? Let's Encrypt SSL Free Certificate Principle & Installation Tutorial", che ti è utile.
Benvenuti a condividere il link di questo articolo:https://www.chenweiliang.com/cwl-512.html
Benvenuto nel canale Telegram del blog di Chen Weiliang per ricevere gli ultimi aggiornamenti!
📚 Questa guida contiene un valore enorme, 🌟Questa è un'opportunità rara, non perderla! ⏰⌛💨
Condividi e metti mi piace se ti va!
La tua condivisione e i tuoi like sono la nostra continua motivazione!