ලිපි නාමාවලිය
Let's Encrypt සඳහා අයදුම් කරන්නේ කෙසේද?
SSL සහතික මූලධර්මය සහ ස්ථාපන නිබන්ධනය සංකේතනය කරමු
SSL යනු කුමක්ද? චෙන් වෙයිලියැං ඔහුගේ පෙර ලිපියෙන් මේ ගැන සාකච්ඡා කළේය , " HTTP සහ HTTPS අතර වෙනස කුමක්ද? SSL සංකේතන ක්රියාවලිය පිළිබඳ සවිස්තරාත්මක පැහැදිලි කිරීමක් ."
උසස් සංකේතනය කළ SSL සහතික මිලදී ගත යුතු ඊ-වාණිජ්ය වෙබ් අඩවි වලට අමතරව , ඔවුන්ගේ WeChat නිල ගිණුම් ප්රවර්ධනය කිරීම සඳහා වෙබ් අඩවි භාවිතා කරන නව මාධ්ය වෘත්තිකයන්ට ඇත්ත වශයෙන්ම නොමිලේ සංකේතනය කළ SSL සහතික ස්ථාපනය කළ හැකිය. මෙය SEO සමඟ උදව් කළ හැකි අතර සෙවුම් යන්ත්රවල වෙබ් අඩවියේ මූල පද ශ්රේණිගත කිරීම වැඩිදියුණු කළ හැකිය.

Let's Encrypt එකට තමන්ගේම වැඩ ප්රවාහයක් ඇත ( 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 සහතිකය ජනනය කරන්න
ඊළඟට, චෙන් වෙයිලියැංගේ බ්ලොග් ඩොමේන් නාමය උදාහරණයක් ලෙස ගෙන , කරුණාකර එය ඔබගේ අවශ්යතා අනුව වෙනස් කර 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 හි දිස්වනු ඇත:
වැදගත් සටහන්:
- සුභ පැතුම්! ඔබේ සහතිකය සහ chain සුරැකී ඇත්තේ:
/etc/letsencrypt/live/www.chenweiliang.com/fullchain.pem
ඔබගේ යතුරු ගොනුව මෙහි සුරකින ලදී:
/etc/letsencrypt/live/www.chenweiliang.com/privkey.pem
ඔබේ සහතිකය 2018-02-26 දින කල් ඉකුත් වේ. නව හෝ වෙනස් කළ එකක් ලබා ගැනීමට
අනාගතයේදී මෙම සහතිකයේ අනුවාදය, certbot-auto ධාවනය කරන්න
නැවතත්, ඔබගේ සහතික *සියලුම* අන්තර්ක්රියාකාරී නොවන ලෙස අලුත් කිරීමට, ධාවනය කරන්න
"certbot-auto අලුත් කිරීම"
- ඔබ සර්ට්බොට්ට කැමති නම්, කරුණාකර පහත දැක්වෙන පරිදි අපගේ කාර්යයට සහාය වීම සලකා බලන්න:
ISRG / Let's Encrypt වෙත පරිත්යාග කිරීම: https://letsencrypt.org/donate
EFF වෙත පරිත්යාග කිරීම: https://eff.org/donate-le
SSL සහතිකය අලුත් කිරීම
සහතික අලුත් කිරීම ද ඉතා පහසු වේ, ස්වයංක්රීය අලුත් කිරීම සඳහා crontab භාවිතා කරයි . crontab ස්ථාපනය කර නොමැති සමහර Debian අනුවාද සඳහා, ඔබට එය පළමුව අතින් ස්ථාපනය කළ හැකිය.
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 සහතිකයක් ජනනය කරන්න, එය ස්වයංක්රීයව Apache සඳහා SSL සහතිකය වින්යාස කරයි.
- ඔබ පහත පියවර වලින් වැඩි ගණනක් කරන්නේ නම්, 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 වින්යාසය අවසානයේ, </VirtualHost> යටතේ.
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 හරහා වෙබ් අඩවියට ප්රවේශ විය යුතු බවට සහතික විය යුතුය.
- කිසියම් පරිශීලකයෙකු SSL නොවන URL එකකින් වෙබ් අඩවියට පිවිසීමට උත්සාහ කරන්නේ නම්, ඔහු SSL වෙබ් අඩවිය වෙත හරවා යැවිය යුතුය.
- Apache mod_rewrite මොඩියුලය භාවිතයෙන් SSL URL වෙත හරවා යවන්න.
- LAMP එක-ක්ලික් ස්ථාපන පැකේජය භාවිතා කිරීම, SSL සහතිකයේ ස්වයංක්රීයව ස්ථාපනය කිරීම සහ HTTPS වෙත බලහත්කාරයෙන් හරවා යැවීම, HTTPS වෙත හරවා යැවීම වැනිවැරෙන්, ඔබට HTTPS යළි-යොමුවීමක් එක් කිරීමට අවශ්ය නැත.
යළි-යොමු කිරීමේ රීතිය එක් කරන්න
- Apache හි වින්යාස ගොනුව තුළ, වෙබ් අඩවියේ අතථ්ය ධාරකය සංස්කරණය කර පහත සැකසුම් එක් කරන්න.
- ඔබට ඔබේ .htaccess ගොනුව තුළ ඔබේ වෙබ් අඩවියේ ඇති ලේඛන මූලයට එම සැකසුම් එක් කළ හැක.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]ඔබට HTTPS වෙත හරවා යැවීමට යම් URL එකක් සඳහන් කිරීමට අවශ්ය නම්:
RewriteEngine On RewriteRule ^message$ https://www.etufo.org/message [R=301,L]
- කවුරුහරි ප්රවේශ වීමට උත්සාහ කරන්නේ නම් පණිවුඩය , පිටුව https වෙත පනින අතර, පරිශීලකයාට URL වෙත ප්රවේශ විය හැක්කේ SSL සමඟ පමණි.
බලාත්මක වීමට .htaccess ගොනුව සඳහා Apache නැවත ආරම්භ කරන්න:
service httpd restart
පූර්වාරක්ෂාව
- කරුණාකර ඉහත ඊමේල් ලිපිනය ඔබගේ ඊමේල් ලිපිනයට වෙනස් කරන්න.
- කරුණාකර ඉහත වෙබ් අඩවි ඩොමේන් නාමය ඔබේ වෙබ් අඩවි ඩොමේන් නාමයට වෙනස් කිරීමට මතක තබා ගන්න.
යළි-යොමු කිරීමේ රීතිය ස්ථාන ගැටලුව
යළි-යොමුවීම් නීති ව්යාජ-ස්ථිතික නීති යටතේ තැබීමේදී, HTTP මඟින් මුළු අඩවියම HTTPS වෙත හරවා යැවිය නොහැකි ගැටලුවට ඔබ බොහෝ විට මුහුණ දෙනු ඇත.
මුලදී අපි යළි-යොමු කිරීමේ කේතය .htaccess වෙත පිටපත් කළ අතර එය පහත අවස්ථා වලදී දිස්වනු ඇත ▼
![[L] හරවා යැවීමේ රීතිය ඉහත දැක්වේ. [L] හරවා යැවීමේ රීතිය ඉහත දැක්වේ.](https://img.chenweiliang.com/2018/03/https-rule-1.png)
- [L] වත්මන් රීතිය අවසාන රීතිය බව පෙන්නුම් කරයි, පහත නැවත ලිවීමේ නීති විශ්ලේෂණය කිරීම නවත්වන්න.
- එබැවින් යළි-යොමු කරන ලද ලිපි පිටුවට ප්රවේශ වීමේදී, [L] පහත සඳහන් නීති නතර කරයි, එබැවින් යළි-යොමුවීම් රීති ක්රියා නොකරයි.
HTTP මුල් පිටුවකට ප්රවේශ වන විට, අපට URL යළි-යොමුවීමක් ක්රියාත්මක කිරීමට අවශ්ය වන අතර, යළි-යොමුවීම් නීති ක්රියාත්මක කිරීම සඳහා URL නැවත ලිවීමේ නීති මඟ හරිමින්, මුළු අඩවියම HTTP සිට HTTPS වෙත හරවා යැවිය හැක.
HTTPS යළි-යොමුවීම් රීති [L] රීතිවලට පහළින් තබන්න එපා ; ඒවා [L] රීතිවලට ඉහළින් තබන්න. ▼
![ව්යාජ-ස්ථිතික SSL යළි-යොමුවීම් නීති [L] පහත දැක්වේ. ව්යාජ-ස්ථිතික SSL යළි-යොමුවීම් නීති [L] පහත දැක්වේ.](https://img.chenweiliang.com/2018/03/pseudo-static-ssl-jump.png)
දිගු කියවීම:
- Http vs https අතර වෙනස කුමක්ද? SSL සංකේතාංකන ක්රියාවලියේ සවිස්තරාත්මක පැහැදිලි කිරීම
- CWP පාලක පැනලයේ Let's Encrypt SSL සහතිකය ස්ථාපනය කිරීමෙන් පසු 500 දෝෂයක් ඇති වුවහොත් මා කළ යුත්තේ කුමක්ද?
- www ඉහළ මට්ටමේ වසම් නාමය නොමැතිව ස්වයංක්රීයව දෙවන මට්ටමේ වසම් නාමය වෙත පනින්න: මූල ඩොමේන් නාමය 301 www යළි-යොමු කරයි
චෙන් වෙයිලියැන්ග්ගේ බ්ලොග් අඩවියේ ( https://www.chenweiliang.com/ ) බෙදාගත් "Let's Encrypt සඳහා අයදුම් කරන්නේ කෙසේද? Let's Encrypt Free SSL සහතිකවල මූලධර්ම සහ ස්ථාපන නිබන්ධනය" යන ලිපිය ඔබට ප්රයෝජනවත් වනු ඇතැයි අපි බලාපොරොත්තු වෙමු.
මෙම ලිපියේ සබැඳිය බෙදා ගැනීමට නිදහස් වන්න: https://www.chenweiliang.com/cwl-512.html
