ລາຍການຫົວເລື່ອງ
ວິທີການສະໝັກ Let's Encrypt?
ໃຫ້ເຂົ້າລະຫັດຫລັກການໃບຢັ້ງຢືນ SSL ແລະສອນການຕິດຕັ້ງ
SSL ແມ່ນຫຍັງ?Chen Weiliangໃນບົດຄວາມທີ່ຜ່ານມາ "ຄວາມແຕກຕ່າງລະຫວ່າງ http vs https ແມ່ນຫຍັງ? ຄໍາອະທິບາຍລາຍລະອຽດຂອງຂະບວນການເຂົ້າລະຫັດ SSL"ມັນໄດ້ຖືກກ່າວເຖິງໃນ.
ນອກຈາກການຄ້າທາງອີເລັກໂທຣນິກເວັບໄຊທ໌ຕ້ອງຊື້ໃບຢັ້ງຢືນ SSL ທີ່ເຂົ້າລະຫັດແບບພິເສດແລະໃຊ້ເວັບໄຊທ໌ເປັນ WeChatການສົ່ງເສີມບັນຊີສາທາລະນະຂອງສື່ ໃໝ່ປະຊາຊົນ, ຖ້າທ່ານຕ້ອງການຕິດຕັ້ງໃບຢັ້ງຢືນ SSL, ທ່ານກໍ່ສາມາດຕິດຕັ້ງໃບຢັ້ງຢືນ SSL ທີ່ເຂົ້າລະຫັດໄດ້ໂດຍບໍ່ເສຍຄ່າ.SEOມັນເປັນປະໂຫຍດແລະສາມາດປັບປຸງການຈັດອັນດັບຂອງຄໍາສໍາຄັນຂອງເວັບໄຊທ໌ໃນເຄື່ອງຈັກຊອກຫາ.
Let's Encrypt ຕົວຂອງມັນເອງໄດ້ຂຽນຊຸດຂອງຂະບວນການ (https://certbot.eff.org/), ໃຊ້Linuxຫມູ່ເພື່ອນ, ທ່ານສາມາດປະຕິບັດຕາມ tutorial ນີ້ໃນຂະນະທີ່ອ້າງອີງເຖິງຂະບວນການ.
ດາວໂຫລດເຄື່ອງມື certbot-auto ທໍາອິດ, ຫຼັງຈາກນັ້ນດໍາເນີນການຂຶ້ນກັບການຕິດຕັ້ງຂອງເຄື່ອງມື.
wget https://dl.eff.org/certbot-auto --no-check-certificate chmod +x ./certbot-auto ./certbot-auto -n
ສ້າງໃບຢັ້ງຢືນ SSL
ຕໍ່ໄປ, ກັບChen Weiliangເອົາຊື່ໂດເມນຂອງ blog ເປັນຕົວຢ່າງ, ກະລຸນາແກ້ໄຂມັນຕາມຄວາມຕ້ອງການຂອງທ່ານເອງ SSH ດໍາເນີນການຄໍາສັ່ງຕໍ່ໄປນີ້.
ໃຫ້ແນ່ໃຈວ່າຈະດັດແປງຄໍາສັ່ງ:
- ກ່ອງຈົດ ໝາຍ
- ເສັ້ນທາງເຊີບເວີ
- ຊື່ໂດເມນເວັບໄຊທ໌
ໂດເມນດຽວໄດເລກະທໍລີດຽວ, ສ້າງໃບຢັ້ງຢືນ:
./certbot-auto certonly --email [email protected] --agree-tos --no-eff-email --webroot -w /home/admin/web/chenweiliang.com/public_html -d www.chenweiliang.com
ຫຼາຍໂດເມນໄດເລກະທໍລີດຽວ, ສ້າງໃບຢັ້ງຢືນ: (ເຊັ່ນ, ຊື່ໂດເມນຫຼາຍ, ໄດເລກະທໍລີດຽວ, ໃຊ້ໃບຢັ້ງຢືນດຽວກັນ)
./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
ໃບຮັບຮອງ SSL ທີ່ສ້າງຂຶ້ນຈະຖືກບັນທຶກໄວ້ໃນ:/etc/letsencrypt/live/www.chenweiliang.com/
ພາຍໃຕ້ເນື້ອໃນ.
ຊື່ໂດເມນຫຼາຍແລະຫຼາຍໄດເລກະທໍລີ, ສ້າງໃບຢັ້ງຢືນ: (ນັ້ນແມ່ນ, ຫຼາຍໂດເມນ, ຫຼາຍໄດເລກະທໍລີ, ໃຊ້ໃບຢັ້ງຢືນດຽວກັນ)
./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
ຫຼັງຈາກໃບຢັ້ງຢືນການເຂົ້າລະຫັດ Let's ຖືກຕິດຕັ້ງສົບຜົນສໍາເລັດ, ຂໍ້ຄວາມດັ່ງຕໍ່ໄປນີ້ຈະປາກົດຢູ່ໃນ SSH:
ຫມາຍເຫດ ສຳ ຄັນ:
– ຊົມເຊີຍ! ໃບຢັ້ງຢືນຂອງທ່ານແລະ chain ໄດ້ຖືກບັນທຶກໄວ້ທີ່:
/etc/letsencrypt/live/www.chenweiliang.com/fullchain.pem
ໄຟລ໌ທີ່ສໍາຄັນຂອງທ່ານໄດ້ຖືກບັນທຶກໄວ້ທີ່:
/etc/letsencrypt/live/www.chenweiliang.com/privkey.pem
ໃບຢັ້ງຢືນຂອງທ່ານຈະໝົດອາຍຸໃນວັນທີ 2018-02-26. ເພື່ອຂໍເອົາໃໝ່ ຫຼືປັບປ່ຽນໃໝ່.
ສະບັບຂອງໃບຢັ້ງຢືນນີ້ໃນອະນາຄົດ, ພຽງແຕ່ດໍາເນີນການ certbot-auto
ອີກເທື່ອໜຶ່ງ. ເພື່ອບໍ່ຕໍ່ອາຍຸ *ທັງໝົດ* ຂອງໃບຮັບຮອງຂອງທ່ານ, ໃຫ້ດໍາເນີນການ
"certbot-auto ຕໍ່ອາຍຸ"
- ຖ້າທ່ານມັກ Certbot, ກະລຸນາພິຈາລະນາສະ ໜັບ ສະ ໜູນ ວຽກຂອງພວກເຮົາໂດຍ:
ບໍລິຈາກໃຫ້ ISRG / Let's Encrypt: https://letsencrypt.org/donate
ບໍລິຈາກໃຫ້ EFF: https://eff.org/donate-le
ການຕໍ່ອາຍຸໃບຢັ້ງຢືນ SSL
ການຕໍ່ອາຍຸໃບຢັ້ງຢືນຍັງສະດວກຫຼາຍ, ການນໍາໃຊ້crontabຕໍ່ອາຍຸອັດຕະໂນມັດ.ບາງ Debian ບໍ່ໄດ້ຕິດຕັ້ງ crontab, ທ່ານສາມາດຕິດຕັ້ງມັນດ້ວຍຕົນເອງກ່ອນ.
apt-get install cron
ຄໍາສັ່ງຕໍ່ໄປນີ້ແມ່ນຢູ່ໃນ nginx ແລະ apache ຕາມລໍາດັບ / etc / crontab ຄໍາສັ່ງທີ່ເຂົ້າໄປໃນໄຟລ໌ຫມາຍຄວາມວ່າມັນຖືກຕໍ່ອາຍຸທຸກໆ 10 ມື້, ແລະໄລຍະເວລາທີ່ຖືກຕ້ອງ 90 ມື້ແມ່ນພຽງພໍ.
ໄຟລ໌ Nginx crontab, ກະລຸນາເພີ່ມ:
0 3 */10 * * /root/certbot-auto renew --renew-hook "/etc/init.d/nginx reload"
ໄຟລ໌ Apache crontab, ກະລຸນາເພີ່ມ:
0 3 */10 * * /root/certbot-auto renew --renew-hook "service httpd restart"
ການຕັ້ງຄ່າໃບຢັ້ງຢືນ SSL Apache
ໃນປັດຈຸບັນ, ພວກເຮົາຈໍາເປັນຕ້ອງເຮັດການປ່ຽນແປງການຕັ້ງຄ່າ Apache.
ຄຳ ແນະ ນຳ:
- ຖ້າທ່ານໃຊ້ແຜງຄວບຄຸມ CWP, ໃນການກວດສອບ Add domain name ອັດຕະໂນມັດສ້າງໃບຢັ້ງຢືນ SSL, ມັນຈະຕັ້ງຄ່າໃບຢັ້ງຢືນ SSL ສໍາລັບ Apache ໂດຍອັດຕະໂນມັດ.
- ຖ້າທ່ານເຮັດຫຼາຍຂັ້ນຕອນຕໍ່ໄປນີ້, ຄວາມຜິດພາດອາດຈະເກີດຂຶ້ນຫຼັງຈາກ restart Apache.
- ຖ້າມີຂໍ້ຜິດພາດ, ໃຫ້ລຶບການຕັ້ງຄ່າທີ່ທ່ານເພີ່ມດ້ວຍຕົນເອງ.
ແກ້ໄຂໄຟລ໌ httpd.conf ▼
/usr/local/apache/conf/httpd.conf
ຊອກຫາ ▼
Listen 443
- (ລຶບຄຳເຫັນກ່ອນໜ້າ #)
ຫຼືເພີ່ມພອດຟັງ 443 ▼
Listen 443
SSH ກວດເບິ່ງຊ່ອງຟັງ Apache ▼
grep ^Listen /usr/local/apache/conf/httpd.conf
ຊອກຫາ ▼
mod_ssl
- (ລຶບຄຳເຫັນກ່ອນໜ້າ #)
ຫຼືເພີ່ມ ▼
LoadModule ssl_module modules/mod_ssl.so
ຊອກຫາ ▼
httpd-ssl
- (ລຶບຄຳເຫັນກ່ອນໜ້າ #)
ຫຼັງຈາກນັ້ນ, SSH ປະຕິບັດຄໍາສັ່ງຕໍ່ໄປນີ້ (ຫມາຍເຫດທີ່ຈະປ່ຽນເສັ້ນທາງໄປສູ່ຕົວທ່ານເອງ):
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
ຕໍ່ໄປ, ໃນຕອນທ້າຍຂອງການຕັ້ງຄ່າ Apache ສໍາລັບເວັບໄຊທ໌ທີ່ທ່ານສ້າງພາຍໃຕ້.
ເພີ່ມໄຟລ໌ການຕັ້ງຄ່າຂອງພາກ SSL (ຫມາຍເຫດເພື່ອເອົາຄໍາຄິດຄໍາເຫັນອອກ, ແລະປ່ຽນເສັ້ນທາງໄປສູ່ຂອງທ່ານເອງ):
<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>
ສຸດທ້າຍ restart Apache ໃນມັນ:
service httpd restart
Apache ບັງຄັບ HTTP ປ່ຽນເສັ້ນທາງໄປຫາ HTTPS
- ການຮ້ອງຂໍເວັບໄຊຕ໌ຈໍານວນຫຼາຍສາມາດດໍາເນີນການກັບ SSL ເທົ່ານັ້ນ.
- ພວກເຮົາຕ້ອງການໃຫ້ແນ່ໃຈວ່າທຸກໆຄັ້ງທີ່ພວກເຮົາໃຊ້ SSL, ເວັບໄຊທ໌ຕ້ອງຖືກເຂົ້າເຖິງຜ່ານ SSL.
- ຖ້າຜູ້ໃຊ້ໃດໆພະຍາຍາມເຂົ້າຫາເວັບໄຊທ໌ດ້ວຍ URL ທີ່ບໍ່ແມ່ນ SSL, ລາວຕ້ອງຖືກໂອນໄປຫາເວັບໄຊທ໌ SSL.
- ປ່ຽນເສັ້ນທາງໄປຫາ SSL URL ໂດຍໃຊ້ໂມດູນ Apache mod_rewrite.
- ເຊັ່ນ: ການໃຊ້ແພັກເກັດການຕິດຕັ້ງ LAMP ຄລິກດຽວ, ການຕິດຕັ້ງໃນການຕິດຕັ້ງໃບຢັ້ງຢືນ SSL ອັດຕະໂນມັດແລະການບັງຄັບໃຫ້ປ່ຽນເສັ້ນທາງໄປຫາ HTTPS, ການປ່ຽນເສັ້ນທາງໄປຫາ HTTPSມີຜົນບັງຄັບໃຊ້, ທ່ານບໍ່ຈໍາເປັນຕ້ອງເພີ່ມ HTTPS redirect.
ເພີ່ມກົດລະບຽບການປ່ຽນເສັ້ນທາງ
- ໃນໄຟລ໌ການຕັ້ງຄ່າຂອງ Apache, ແກ້ໄຂ host virtual ຂອງເວັບໄຊທ໌ແລະເພີ່ມການຕັ້ງຄ່າຕໍ່ໄປນີ້.
- ນອກນັ້ນທ່ານຍັງສາມາດເພີ່ມການຕັ້ງຄ່າດຽວກັນກັບຮາກເອກະສານຢູ່ໃນເວັບໄຊທ໌ຂອງທ່ານໃນໄຟລ໌ .htaccess ຂອງທ່ານ.
RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
ຖ້າທ່ານຕ້ອງການລະບຸ URL ທີ່ແນ່ນອນເພື່ອປ່ຽນເສັ້ນທາງໄປຫາ HTTPS:
RewriteEngine On RewriteRule ^message$ https://www.etufo.org/message [R=301,L]
- ຖ້າມີຄົນພະຍາຍາມເຂົ້າເຖິງ ຂໍ້ຄວາມ , ຫນ້າຈະໂດດໄປຫາ https, ແລະຜູ້ໃຊ້ສາມາດເຂົ້າເຖິງ URL ທີ່ມີ SSL ເທົ່ານັ້ນ.
ຣີສະຕາດ Apache ເພື່ອໃຫ້ໄຟລ໌ .htaccess ມີຜົນ:
service httpd restart
ຂໍ້ຄວນລະວັງ
- ກະລຸນາປ່ຽນທີ່ຢູ່ອີເມວຂ້າງເທິງເປັນທີ່ຢູ່ອີເມວຂອງທ່ານ.
- ກະລຸນາຈື່ຈໍາທີ່ຈະປ່ຽນຊື່ໂດເມນເວັບໄຊທ໌ຂ້າງເທິງໄປຫາຊື່ໂດເມນເວັບໄຊທ໌ຂອງທ່ານ.
ປ່ຽນເສັ້ນທາງບັນຫາສະຖານທີ່ກົດລະບຽບ
ພາຍໃຕ້ກົດລະບຽບ pseudo-static, ເມື່ອວາງກົດລະບຽບການໂດດປ່ຽນເສັ້ນທາງ, ປົກກະຕິແລ້ວທ່ານຈະພົບກັບ http ບໍ່ສາມາດປ່ຽນເສັ້ນທາງໄປຫາ https ປັນຫາ.
ໃນເບື້ອງຕົ້ນພວກເຮົາໄດ້ຄັດລອກລະຫັດການປ່ຽນເສັ້ນທາງເຂົ້າໄປໃນ .htaccess ແລະມັນຈະປາກົດຢູ່ໃນກໍລະນີຕໍ່ໄປນີ້ ▼
- [L] ຊີ້ໃຫ້ເຫັນວ່າກົດລະບຽບປະຈຸບັນແມ່ນກົດລະບຽບສຸດທ້າຍ, ຢຸດການວິເຄາະກົດລະບຽບການຂຽນຄືນໃຫມ່ຕໍ່ໄປນີ້.
- ດັ່ງນັ້ນເມື່ອເຂົ້າເຖິງຫນ້າບົດຄວາມທີ່ປ່ຽນເສັ້ນທາງ, [L] ຢຸດເຊົາກົດລະບຽບຕໍ່ໄປນີ້, ດັ່ງນັ້ນກົດລະບຽບການປ່ຽນເສັ້ນທາງບໍ່ໄດ້ເຮັດວຽກ.
ເມື່ອໄປຢ້ຽມຢາມຫນ້າທໍາອິດຂອງ http, ພວກເຮົາຕ້ອງການກະຕຸ້ນການປ່ຽນເສັ້ນທາງ URL, ຂ້າມກົດລະບຽບ pseudo-static ເພື່ອປະຕິບັດກົດລະບຽບການໂດດປ່ຽນເສັ້ນທາງ, ດັ່ງນັ້ນມັນສາມາດບັນລຸໄດ້.ເວັບໄຊທ໌ທົ່ວ http ປ່ຽນເສັ້ນທາງໄປຫາ https .
ຢ່າໃສ່ກົດລະບຽບການປ່ຽນເສັ້ນທາງ https [L] ພາຍໃຕ້ກົດລະບຽບ, ໃສ່ [L] ເໜືອກົດລະບຽບ ▼
ອ່ານເພີ່ມເຕີມ:
- ຄວາມແຕກຕ່າງລະຫວ່າງ http vs https ແມ່ນຫຍັງ? ຄໍາອະທິບາຍລາຍລະອຽດຂອງຂະບວນການເຂົ້າລະຫັດ SSL
- ຂ້ອຍຄວນເຮັດແນວໃດຖ້າຂ້ອຍໄດ້ຮັບຂໍ້ຜິດພາດ 500 ຫຼັງຈາກການຕິດຕັ້ງໃບຢັ້ງຢືນ Let's Encrypt SSL ໃນແຜງຄວບຄຸມ CWP?
- ໂດດໄປຫາຊື່ໂດເມນລະດັບທີສອງໂດຍອັດຕະໂນມັດໂດຍບໍ່ມີ www ຊື່ໂດເມນລະດັບສູງສຸດ: ຊື່ໂດເມນຮາກ 301 redirects www
ຫວັງ Chen Weiliang Blog ( https://www.chenweiliang.com/ ) shared "ວິທີການສະໝັກ Let's Encrypt? Let's Encrypt SSL Free Certificate Principle & Installation Tutorial", ເຊິ່ງເປັນປະໂຫຍດແກ່ທ່ານ.
ຍິນດີຕ້ອນຮັບແບ່ງປັນການເຊື່ອມຕໍ່ຂອງບົດຄວາມນີ້:https://www.chenweiliang.com/cwl-512.html
ຍິນດີຕ້ອນຮັບສູ່ຊ່ອງ Telegram ຂອງບລັອກຂອງ Chen Weiliang ເພື່ອຮັບອັບເດດຫຼ້າສຸດ!
📚ຄູ່ມືນີ້ມີຄຸນຄ່າອັນມະຫາສານ, 🌟ນີ້ເປັນໂອກາດທີ່ຫາຍາກ, ຢ່າພາດມັນ! ⏰⌛💨
Share and like ຖ້າມັກ!
ການແບ່ງປັນແລະການຖືກໃຈຂອງທ່ານແມ່ນການຊຸກຍູ້ຢ່າງຕໍ່ເນື່ອງຂອງພວກເຮົາ!