កញ្ចប់បង្ហោះចែករំលែកមួយចំនួនជាមួយ cPanel មិនផ្តល់ជូន AutoSSL ឬផ្តល់ជូនពួកគេក្នុងអត្រាខ្ពស់ជាងនេះ។ លទ្ធផល៖ អ្នកមិនអាចចេញវិញ្ញាបនបត្រ Let's Encrypt ដោយឥតគិតថ្លៃតាមរយៈចំណុចប្រទាក់ cPanel ហើយដែនទាំងអស់ត្រូវបានជាប់គាំងនៅលើវិញ្ញាបនបត្រដែលចុះហត្ថលេខាដោយខ្លួនឯង។ កម្មវិធីរុករកបង្ហាញទំព័រថា "មិនមានសុវត្ថិភាព" ។ ផ្លូវចេញ៖ ទទួលបានវិញ្ញាបនបត្រដោយខ្លួនឯងជាមួយ acme.sh ហើយដំឡើងវាតាមរយៈ cPanel UAPI - បន្តដោយស្វ័យប្រវត្តិដោយគ្មាន AutoSSL ។
HTTPS ជាយូរមកហើយ គឺជាកាតព្វកិច្ច។ ដូច្នេះ វាកាន់តែធ្វើឲ្យខកចិត្ត នៅពេលដែលកញ្ចប់បង្ហោះផ្ទាល់ខ្លួនរបស់អ្នកមិនផ្តល់នូវវិធីងាយស្រួលក្នុងការទទួលបានវិញ្ញាបនបត្រឥតគិតថ្លៃ។ រឿងនេះកើតឡើងញឹកញាប់ជាងអ្វីដែលអ្នកគិត ឧទាហរណ៍ជាមួយនឹងកញ្ចប់កម្រិតចូលដែលមានតម្លៃថោក ឬបន្ទាប់ពីការផ្លាស់ប្តូរផែនការ ដែលវិញ្ញាបនបត្រត្រូវបានបញ្ឈប់ភ្លាមៗ។ ទោះជាយ៉ាងណាក៏ដោយ គម្លាតនេះអាចត្រូវបានបិទយ៉ាងស្រស់ស្អាត និងជាអចិន្ត្រៃយ៍ជាមួយនឹងកូដតែប៉ុន្មានបន្ទាត់នៅក្នុងសែល - ដំណើរការពេញលេញត្រូវបានពិពណ៌នាខាងក្រោម។
១. ចូលតាមរយៈ SSH
ssh -p <port> <user>@example.com
២. ដំឡើង acme.sh
curl https://get.acme.sh | sh -s email=me@example.com
source ~/.bashrc
៣. កំណត់ Let's Encrypt ជា CA
acme.sh --set-default-ca --server letsencrypt
៤. ចេញវិញ្ញាបនបត្រ
acme.sh --issue -d example.com -d www.example.com -w ~/public_html
៥. ដំឡើងទៅក្នុង cPanel
acme.sh --deploy -d example.com --deploy-hook cpanel_uapi
៦. ពិនិត្យ
uapi SSL installed_hosts
echo | openssl s_client -servername example.com -connect example.com:443 2>/dev/null \
| openssl x509 -noout -issuer -dates
ទំពក់សរសេរវិញ្ញាបនបត្រទៅ vHost ដែលសមស្របតាមរយៈ UAPI ។ ការកំណត់ដាក់ពង្រាយត្រូវបានរក្សាទុក - ចាប់ពីពេលនេះតទៅ cron បន្ត និងដំឡើងអ្វីៗគ្រប់យ៉ាងដោយឯករាជ្យ មុនពេលវាផុតកំណត់។ អ្នកចេញគឺ "Let's Encrypt" ហើយកាលបរិច្ឆេទផុតកំណត់គឺប្រហែល 90 ថ្ងៃនាពេលអនាគត។ ប្រសិនបើវិញ្ញាបនបត្រដែលចុះហត្ថលេខាដោយខ្លួនឯងចាស់លេចឡើងជំនួសវិញ ការផ្ទុកឡើងវិញរឹងនៅក្នុងកម្មវិធីរុករកជាធម្មតាអាចជួយបាន - វិញ្ញាបនបត្រពីមុនអាចត្រូវបានរក្សាទុកជាបណ្តោះអាសន្ន។
ម៉ាស៊ីនមេខ្លះដំណើរការទំពក់ cPanel ផ្ទាល់ខ្លួនរបស់ពួកគេ។ install_ssl ហើយឆ្លើយតបជាមួយអ្វីមួយដូចជា adminbin Cpanel/hooks2/...: exit 255. acme.sh នៅតែរាយការណ៍ថា "បានដាក់ឱ្យប្រើប្រាស់ដោយជោគជ័យ" ហើយនោះជាការត្រឹមត្រូវ។ ក្នុងករណីនេះ ទំពក់បរាជ័យដោយសារតែជំហានបន្តបន្ទាប់ (ឧ. ការជូនដំណឹងផ្ទៃក្នុង ឬការងារធ្វើសមកាលកម្មពីម៉ាស៊ីន) មិនមែនដោយសារតែការដំឡើងពិតប្រាកដនោះទេ។
សម្រាប់ដែនដែលមាន umlauts acme.sh រក្សាទុកវិញ្ញាបនបត្រជាលក្ខណៈផ្ទៃក្នុងក្នុងទម្រង់ Punycode (xn--…) ខណៈពេលដែលឧបករណ៍ផ្គូផ្គងស្វ័យប្រវត្តិរបស់ទំពក់ប្រៀបធៀបទម្រង់យូនីកូដ។ លទ្ធផល៖ "ដាក់ពង្រាយទៅ 0 នៃ 0 គេហទំព័រ" - គ្មានអ្វីត្រូវបានដំឡើងទេ។ រឿងដែលពិបាកនោះគឺថា acme.sh ក៏រាយការណ៍ "ជោគជ័យ" នៅទីនេះផងដែរ ដូច្នេះកំហុសត្រូវបានមើលរំលងយ៉ាងងាយស្រួល។ ដំណោះស្រាយ៖ ធ្វើការដោយផ្ទាល់ជាមួយដែន Punycode ហើយបិទមុខងារស្វ័យប្រវត្តិ:
python3 -c "import sys;print(sys.argv[1].encode('idna').decode())" hallöle.de
acme.sh --issue -d xn--hallle-zxa.de -d www.xn--hallle-zxa.de -w ~/public_html
export DEPLOY_CPANEL_AUTO_ENABLED='false'
acme.sh --deploy -d xn--hallle-zxa.de --deploy-hook cpanel_uapi
ជាមួយនឹងការចូលប្រើ SSH អ្នកមិនត្រូវការ AutoSSL ទេ៖ acme.sh ចេញវិញ្ញាបនបត្រ ដែល cpanel_uapi-Hook ដំឡើងវា ហើយការងារ cron ដែលរួមបញ្ចូលរក្សាវាឱ្យធ្វើបច្ចុប្បន្នភាពដោយស្វ័យប្រវត្តិ។ នៅពេលដែលដំឡើងរួច សេវាកម្ម HTTPS ឥតគិតថ្លៃនឹងដំណើរការជាបន្តបន្ទាប់ដោយខ្លួនឯង។ អ្នកដែលវិនិយោគកិច្ចខិតខំប្រឹងប្រែងដំបូងនឹងជួយសង្គ្រោះខ្លួនឯងពីការបន្តឡើងវិញដោយដៃនៅពេលអនាគត - ហើយអាចពង្រីកដំណោះស្រាយដូចគ្នាទៅកាន់ដែនបន្ថែមណាមួយនៅក្នុងគណនីដូចគ្នាជាមួយនឹងពាក្យបញ្ជាតែមួយ។