Келгиле, DomainFactoryди шифрлейли

CPanel менен биргелешип иштеген кээ бир жалпы хостинг пакеттери AutoSSL сунуштабайт же кымбатыраак пландарда гана сунушталат. Натыйжада, сиз cPanel интерфейси аркылуу акысыз Let's Encrypt сертификатын бере албайсыз жана бардык домендерде өз алдынча кол коюлган сертификат калат. Браузер баракчаны "коопсуз эмес" деп көрсөтөт. Чечим: сертификатты acme.sh аркылуу өзүңүз алып, аны cPanel UAPI аркылуу орнотуңуз – автоматтык түрдө жаңыртылып, толугу менен AutoSSLсиз.


HTTPS көптөн бери милдеттүү болуп келген. Андыктан, өзүңүздүн хостинг пакетиңиз акысыз сертификат алуунун ыңгайлуу жолун сунуштабаганда, бул ого бетер кыжырды келтирет. Бул сиз ойлогондон да көп болот, мисалы, арзан баштапкы деңгээлдеги пакеттерде же план өзгөргөндөн кийин, сертификат күтүүсүздөн кошулбай калат. Бирок, бул боштукту кабыктагы бир нече сап код менен кооз жана биротоло жабууга болот – толук процесс төмөндө сүрөттөлгөн.

1. SSH аркылуу кириңиз

ssh -p <port> <user>@example.com

2. acme.sh орнотуңуз

curl https://get.acme.sh | sh -s email=me@example.com
source ~/.bashrc

3. "Келгиле, шифрлөөнү" CA катары коюңуз

acme.sh --set-default-ca --server letsencrypt

4. Сертификат берүү

acme.sh --issue -d example.com -d www.example.com -w ~/public_html

5. cPanel'ге орнотуңуз

acme.sh --deploy -d example.com --deploy-hook cpanel_uapi

6. Текшерүү

uapi SSL installed_hosts
echo | openssl s_client -servername example.com -connect example.com:443 2>/dev/null \
     | openssl x509 -noout -issuer -dates

Илмек сертификатты UAPI аркылуу тиешелүү виртуалдык хостко жазат. Жайгаштыруу жөндөөлөрү сакталат – мындан ары cron мөөнөтү бүтө электе баарын автоматтык түрдө жаңыртып жана орнотот. Эмитент "Келгиле, шифрлейли", жана жарактуулук мөөнөтү келечекте болжол менен 90 күн. Эгерде эски, өзүнөн-өзү кол коюлган сертификат дагы эле пайда болсо, браузерде катуу кайра жүктөө көбүнчө жардам берет – мурунку сертификат убактылуу кэштелиши мүмкүн.

Айрым хосттор өздөрүнүн cPanel хоокту иштетишет. install_ssl жана ушул сыяктуу нерсе менен жооп берет adminbin Cpanel/hooks2/...: exit 255. acme.sh дагы эле "ийгиликтүү жайгаштырылды" деп билдирет – жана бул туура. Бул учурда, хук орнотуунун чыныгы себебинен эмес, кийинки кадамдан (мисалы, хостинг провайдеринин ички билдирүү же синхрондоштуруу тапшырмасынан) улам иштебей калат.

Умлауттары бар домендер үчүн acme.sh сертификатты ички түрдө Punycode формасында сактайт (xn--…), ал эми илмектин автоматтык дал келтиргичи Unicode формасын салыштырат. Жыйынтык: "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 кызматы өз алдынча үзгүлтүксүз иштейт. Баштапкы күч-аракетин жумшагандар келечекте ар бир кол менен жаңыртууну үнөмдөп, ошол эле чечимди ошол эле аккаунттагы каалаган кошумча доменге бир буйрук менен кеңейте алышат.

Артка