បញ្ជីអត្ថបទ
របៀបដាក់ពាក្យសុំ Let's Encrypt?
តោះ អ៊ិនគ្រីប គោលការណ៍ វិញ្ញាបនបត្រ SSL & ការណែនាំអំពីការដំឡើង
តើ SSL ជាអ្វី?Chen Weiliangនៅក្នុងអត្ថបទមុន "តើអ្វីជាភាពខុសគ្នារវាង http និង https? ការពន្យល់លម្អិតនៃដំណើរការអ៊ិនគ្រីប SSL"វាត្រូវបានលើកឡើងនៅក្នុង។
ក្រៅពីពាណិជ្ជកម្មតាមប្រព័ន្ធអេឡិចត្រូនិកគេហទំព័រត្រូវតែទិញវិញ្ញាបនបត្រ SSL ដែលបានអ៊ិនគ្រីបកម្រិតខ្ពស់ ហើយប្រើគេហទំព័រជា WeChatការផ្សព្វផ្សាយគណនីសាធារណៈនៃប្រព័ន្ធផ្សព្វផ្សាយថ្មីមនុស្សប្រសិនបើអ្នកចង់ដំឡើងវិញ្ញាបនបត្រ SSL អ្នកពិតជាអាចដំឡើងវិញ្ញាបនបត្រ SSL ដែលបានអ៊ិនគ្រីបដោយឥតគិតថ្លៃ។SEO វាមានប្រយោជន៍ និងអាចធ្វើឱ្យប្រសើរឡើងនូវចំណាត់ថ្នាក់នៃពាក្យគន្លឹះគេហទំព័រនៅក្នុងម៉ាស៊ីនស្វែងរក។
ចូរយើងអ៊ិនគ្រីបខ្លួនវាបានសរសេរសំណុំនៃដំណើរការ (https://certbot.eff.org/), ប្រើLinuxមិត្តភ័ក្តិ អ្នកអាចធ្វើតាមការបង្រៀននេះ ខណៈពេលដែលសំដៅលើដំណើរការនេះ។
ទាញយកឧបករណ៍ certbot-auto ជាដំបូង បន្ទាប់មកដំណើរការភាពអាស្រ័យនៃការដំឡើងឧបករណ៍។
wget https://dl.eff.org/certbot-auto --no-check-certificate chmod +x ./certbot-auto ./certbot-auto -n
បង្កើតវិញ្ញាបនបត្រ SSL
បន្ទាប់ជាមួយChen Weiliangយកឈ្មោះដែនប្លក់ជាឧទាហរណ៍ សូមកែប្រែវាតាមតម្រូវការផ្ទាល់ខ្លួនរបស់អ្នក។ 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 Encrypt ត្រូវបានដំឡើងដោយជោគជ័យ សារប្រអប់បញ្ចូលខាងក្រោមនឹងបង្ហាញក្នុង SSH៖
កំណត់សម្គាល់សំខាន់:
- សូមអបអរសាទរ! វិញ្ញាបនបត្រ និងឆain ត្រូវបានរក្សាទុកនៅ៖
/etc/letsencrypt/live/www.chenweiliang.com/fullchain.pem
ឯកសារសំខាន់របស់អ្នកត្រូវបានរក្សាទុកនៅ៖
/etc/letsencrypt/live/www.chenweiliang.com/privkey.pem
វិញ្ញាបនបត្ររបស់អ្នកនឹងផុតកំណត់នៅថ្ងៃទី 2018-02-26។ ដើម្បីទទួលបានថ្មី ឬកែប្រែ
កំណែនៃវិញ្ញាបនបត្រនេះនាពេលអនាគត គ្រាន់តែដំណើរការ 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នៅក្នុងការបន្ថែមឈ្មោះដែនពិនិត្យ បង្កើតវិញ្ញាបនបត្រ SSL ដោយស្វ័យប្រវត្តិ វានឹងកំណត់រចនាសម្ព័ន្ធវិញ្ញាបនបត្រ SSL សម្រាប់ Apache ដោយស្វ័យប្រវត្តិ។
- ប្រសិនបើអ្នកធ្វើជំហានខាងក្រោមបន្ថែមទៀត កំហុសអាចកើតឡើងបន្ទាប់ពីចាប់ផ្តើមកម្មវិធី 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>
ទីបំផុតចាប់ផ្តើមកម្មវិធី Apache ឡើងវិញនៅលើវា៖
service httpd restart
Apache បង្ខំ HTTP ប្តូរទិសទៅ HTTPS
- សំណើគេហទំព័រជាច្រើនតែងតែអាចដំណើរការបានតែជាមួយ SSL ប៉ុណ្ណោះ។
- យើងត្រូវប្រាកដថារាល់ពេលដែលយើងប្រើ SSL គេហទំព័រត្រូវតែចូលប្រើតាមរយៈ SSL ។
- ប្រសិនបើអ្នកប្រើណាមួយព្យាយាមចូលទៅកាន់គេហទំព័រដោយប្រើ URL ដែលមិនមែនជា SSL គាត់ត្រូវតែត្រូវបានបញ្ជូនបន្តទៅកាន់គេហទំព័រ SSL ។
- ប្តូរទិសទៅ SSL URL ដោយប្រើម៉ូឌុល Apache mod_rewrite ។
- ដូចជាការប្រើប្រាស់កញ្ចប់ដំឡើង LAMP ដោយចុចតែម្តង ការដំឡើងវិញ្ញាបនបត្រ SSL ដោយស្វ័យប្រវត្តិ និងការបញ្ជូនបន្តដោយបង្ខំទៅ HTTPS ការប្តូរទិសទៅ HTTPSជាធរមានអ្នកមិនចាំបាច់បន្ថែមការបញ្ជូនបន្ត HTTPS ទេ។
បន្ថែមក្បួនបញ្ជូនបន្ត
- នៅក្នុងឯកសារកំណត់រចនាសម្ព័ន្ធរបស់ Apache កែសម្រួលម៉ាស៊ីននិម្មិតរបស់គេហទំព័រ ហើយបន្ថែមការកំណត់ខាងក្រោម។
- អ្នកក៏អាចបន្ថែមការកំណត់ដូចគ្នាទៅនឹងឫសឯកសារនៅលើគេហទំព័ររបស់អ្នកនៅក្នុងឯកសារ .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 ចូល [អិល] នៅក្រោមច្បាប់ដាក់ [អិល] លើសពីច្បាប់ ▼
ការអានបន្ថែម៖
- តើអ្វីជាភាពខុសគ្នារវាង http និង https? ការពន្យល់លម្អិតនៃដំណើរការអ៊ិនគ្រីប SSL
- តើខ្ញុំគួរធ្វើដូចម្តេចប្រសិនបើខ្ញុំទទួលបានកំហុស 500 បន្ទាប់ពីដំឡើងវិញ្ញាបនបត្រ Let's Encrypt SSL នៅក្នុងផ្ទាំងបញ្ជា CWP?
- លោតដោយស្វ័យប្រវត្តិទៅឈ្មោះដែនកម្រិតទីពីរដោយគ្មានឈ្មោះ www កម្រិតកំពូល៖ ឈ្មោះដែន root 301 ប្តូរទិស www
Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) បានចែករំលែក ការប្រកាស របស់ "How to apply for Let's Encrypt? Let's Encrypt SSL Free Certificate Principle & Installation Tutorial" ដែលមានប្រយោជន៍សម្រាប់អ្នក។
សូមស្វាគមន៍ចំពោះការចែករំលែកតំណភ្ជាប់នៃអត្ថបទនេះ៖https://www.chenweiliang.com/cwl-512.html
សូមស្វាគមន៍មកកាន់ឆានែល Telegram នៃប្លុករបស់ Chen Weiliang ដើម្បីទទួលបានព័ត៌មានថ្មីៗចុងក្រោយបង្អស់!
📚 មគ្គុទ្ទេសក៍នេះមានតម្លៃមហាសាល 🌟នេះជាឱកាសដ៏កម្រ សូមកុំអូសរំលង! ⏰⌛💨
Share និង Like ប្រសិនបើអ្នកចូលចិត្ត!
ការចែករំលែក និងការចូលចិត្តរបស់អ្នកគឺជាការលើកទឹកចិត្តបន្តរបស់យើង!