Kiel kandidatiĝi por Let's Encrypt?Ni Ĉifri SSL Senpaga Atestilo Principo & Instalado Lernilo

Kiel kandidatiĝi por Let's Encrypt?

Ni Ĉifri SSL-Atestilan Principon kaj Instaladon

Kio estas SSL? Chen Weiliang diskutis tion en sia antaŭa artikolo, " Kio estas la diferenco inter HTTP kaj HTTPS? Detala klarigo pri la SSL-ĉifrada procezo ."

Krom retkomercaj retejoj, kiuj devas aĉeti progresintajn ĉifritajn SSL-atestilojn, novmediaj profesiuloj, kiuj uzas retejojn por reklami siajn oficialajn WeChat-kontojn, povas efektive instali senpagajn ĉifritajn SSL-atestilojn. Tio povas helpi kun SEO kaj plibonigi la ŝlosilvortan rangon de la retejo en serĉiloj.

Kiel kandidatiĝi por Let's Encrypt?Ni Ĉifri SSL Senpaga Atestilo Principo & Instalado Lernilo

Let's Encrypt havas sian propran laborfluon ( https://certbot.eff.org/ ). Uzantoj de Linukso povas rilati al tiu laborfluo kaj sekvi ĉi tiun lernilon.

Elŝutu la certbot-aŭtomatan ilon unue, poste rulu la instalajn dependecojn de la ilo.

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

Generu SSL-atestilon

Sekve, prenante la blogan domajnon de Chen Weiliang kiel ekzemplon, bonvolu modifi ĝin laŭ viaj propraj bezonoj kaj lanĉi la jenan komandon per SSH.

Nepre modifi la komandon en:

  1. Poŝtejo
  2. servila vojo
  3. retpaĝa domajna nomo

Ununura domajna ununura dosierujo, generu atestilon:

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

Plurdomajna ununura dosierujo, generu atestilon: (te, pluraj domajnaj nomoj, ununura dosierujo, uzu la saman atestilon)

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

La generita SSL-atestilo estos konservita en:/etc/letsencrypt/live/www.chenweiliang.com/ Sub enhavo.


Multoblaj domajnaj nomoj kaj pluraj dosierujoj, generu atestilon: (tio estas, pluraj domajnaj nomoj, pluraj dosierujoj, uzu la saman atestilon)

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

Post kiam la atestilo Ni Ĉifri estas sukcese instalita, la sekva prompta mesaĝo aperos en SSH:

GRAVAJN NOTOJ:
– Gratulon!Via atestilo kaj chain estis konservitaj ĉe:
/etc/letsencrypt/live/www.chenweiliang.com/fullchain.pem
Via ŝlosildosiero estas konservita ĉe:
/etc/letsencrypt/live/www.chenweiliang.com/privkey.pem
Via atesto eksvalidiĝos je 2018-02-26 Por akiri novan aŭ ĝustigitan
versio de ĉi tiu atestilo estonte, simple rulu certbot-auto
denove. Por ne-interage renovigi *ĉiujn* viajn atestojn, kuru
"certbot-aŭtomata renovigo"
- Se vi ŝatas Certbot, bonvolu konsideri subteni nian laboron per:
Donaci al ISRG / Ni Ĉifru: https://letsencrypt.org/donate
Donaci al EFF: https://eff.org/donate-le

Renovigo de SSL-Atestilo

Renovigo de atestiloj estas ankaŭ tre oportuna, uzante crontab por aŭtomata renovigo. Por iuj Debian-versioj, kiuj ne havas crontab instalitan, vi povas unue instali ĝin permane.

apt-get install cron

La jenaj komandoj por nginx kaj apache estas enmetitaj en la dosieron /etc/crontab , kio signifas, ke ili estas renovigataj ĉiujn 10 tagojn, kaj 90-taga validperiodo sufiĉas.

Nginx crontab-dosiero, bonvolu aldoni:

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

Apache crontab dosiero, bonvolu aldoni:

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

SSL-atestilo Apache-agordo

Nun ni devas fari ŝanĝojn al la Apache-agordo.

Konsiloj:

  • se vi uzasCWP Kontrolpanelo, en la ĉeko Aldoni domajnan nomon Aŭtomate generi SSL-atestilon, ĝi aŭtomate agordos la SSL-atestilon por Apache.
  • Se vi faras pliajn el la sekvaj paŝoj, eraro povas okazi post rekomenco de Apache.
  • Se estas eraro, forigu la agordon, kiun vi aldonis permane.

Redaktu la httpd.conf dosieron ▼

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

Trovu ▼

Listen 443
  • (forigu la antaŭan komentan numeron #)

aŭ aldonu aŭskultan havenon 443 ▼

Listen 443

SSH-kontrolu Apache-aŭskultantan havenon ▼

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

Trovu ▼

mod_ssl
  • (forigu la antaŭan komentan numeron #)

aŭ aldonu ▼

LoadModule ssl_module modules/mod_ssl.so

Trovu ▼

httpd-ssl
  • (forigu la antaŭan komentan numeron #)

Poste, SSH plenumu la sekvan komandon (notu por ŝanĝi la vojon al via propra):

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

Poste, ĉe la fino de la Apache-agordo por la retejo, kiun vi kreis, sub </VirtualHost>.

Aldonu la agordan dosieron de la sekcio SSL (notu por forigi la komenton, kaj ŝanĝi la vojon al via propra):

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

Fine rekomencu Apache sur ĝi:

service httpd restart

Apache devigas HTTP-redirektilon al HTTPS

  • Multaj retpetoj ĉiam povas funkcii nur per SSL.
  • Ni devas certigi, ke ĉiufoje kiam ni uzas SSL, la retejo devas esti alirita per SSL.
  • Se iu ajn uzanto provas aliri la retejon kun URL ne-SSL, li devas esti redirektita al la retejo de SSL.
  • Alidirekti al SSL URL per Apache mod_rewrite-modulo.
  • Kiel uzi LAMP-unu-klakan instalpakaĵon, enkonstruitan aŭtomatan instaladon de SSL-atestilo kaj devigan alidirekton al HTTPS, alidirekton al HTTPSEn forto, vi ne bezonas aldoni HTTPS-alidirektilon.

Aldonu alidirektigan regulon

  • En la agorda dosiero de Apache, redaktu la virtualan gastiganton de la retejo kaj aldonu la sekvajn agordojn.
  • Vi ankaŭ povas aldoni la samajn agordojn al la dokumentradiko en via retejo en via .htaccess-dosiero.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Se vi nur volas specifi certan URL por redirekti al HTTPS:

RewriteEngine On
RewriteRule ^message$ https://www.etufo.org/message [R=301,L]
  • Se iu provas aliri mesaĝo , la paĝo saltos al https, kaj la uzanto nur povas aliri la URL kun SSL.

Rekomencu Apache por ke la .htaccess-dosiero ekvalidu:

service httpd restart

Antaŭzorgoj

  • Bonvolu ŝanĝi la supran retadreson al via retadreso.
  • Bonvolu memori ŝanĝi la supran retejan domajnan nomon al via reteja domajna nomo.

Redirekta regulo-loka problemo

Kiam oni metas alidirektajn regulojn sub pseŭdostatikajn regulojn, oni ofte renkontos la problemon, ke HTTP ne povas alidirekti la tutan retejon al HTTPS.

Komence ni kopiis la alidirektilon en .htaccess kaj ĝi aperos en la sekvaj kazoj ▼

La alidirekta regulo [L] estas supre.

  • [L] indikas ke la nuna regulo estas la lasta regulo, ĉesu analizi la sekvajn reverkajn regulojn.
  • Do alirante la alidirektitan artikolpaĝon, [L] ĉesigas la sekvan regulon, do la alidirekta regulo ne funkcias.

Kiam ni aliras HTTP-hejmpaĝon, ni volas ekigi URL-alidirektadon, preterirante la URL-reskribajn regulojn por efektivigi la alidirektajn regulojn, por ke la tuta retejo povu esti redirektita de HTTP al HTTPS.

Ne metu HTTPS-alidirektajn regulojn sub [L] regulojn; metu ilin super [L] regulojn. ▼

La pseŭdostatikaj SSL-alidirektaj reguloj [L] estas sube.

Plilongigita legado:

Lasu komenton

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

Rulumu al Supro