Iuj komunaj gastigaj pakaĵoj kun cPanel ne ofertas AutoSSL aŭ nur ofertas ilin je pli altaj tarifoj. La rezulto: Vi ne povas elsendi senpagan Let's Encrypt atestilon per la cPanel-interfaco, kaj ĉiuj domajnoj estas blokitaj sur memsubskribita atestilo. La retumilo montras la paĝon kiel "ne sekura". Eliro: akiru mem la atestilon per acme.sh kaj instalu ĝin per la cPanel UAPI - aŭtomate renoviganta, sen AutoSSL.
HTTPS jam delonge estas deviga. Des pli frustrante estas do, kiam via propra gastiga pakaĵo ne ofertas oportunan manieron akiri senpagan atestilon. Tio okazas pli ofte ol vi eble pensas, ekzemple kun malmultekostaj baznivelaj pakaĵoj aŭ post ŝanĝo de plano, kie atestilo subite ne plu estas inkludita. Tamen, ĉi tiu breĉo povas esti elegante kaj permanente fermita per nur kelkaj linioj da kodo en la ŝelo - la kompleta procezo estas priskribita sube.
1. Ensalutu per SSH
ssh -p <port> <user>@example.com
2. Instalu acme.sh
curl https://get.acme.sh | sh -s email=me@example.com
source ~/.bashrc
3. Agordu Ni Ĉifru kiel la CA
acme.sh --set-default-ca --server letsencrypt
4. Eldoni atestilon
acme.sh --issue -d example.com -d www.example.com -w ~/public_html
5. Instalu en cPanel
acme.sh --deploy -d example.com --deploy-hook cpanel_uapi
6. Kontrolu
uapi SSL installed_hosts
echo | openssl s_client -servername example.com -connect example.com:443 2>/dev/null \
| openssl x509 -noout -issuer -dates
La hoko skribas la atestilon al la taŭga vHost per UAPI. La deploja agordo estas konservita - ekde nun la cron renovigas kaj instalas ĉion sendepende antaŭ ol ĝi eksvalidiĝas. La emisianto estas "Ni Ĉifri" kaj la limdato estas ĉirkaŭ 90 tagoj en la estonteco. Se la malnova memsubskribita atestilo aperas anstataŭe, malmola reŝargi en la retumilo kutime helpas - la antaŭa atestilo povas esti provizore konservita.
Kelkaj retgastigantoj uzas sian propran cPanel-hokon. install_ssl kaj respondas per io simila al adminbin Cpanel/hooks2/...: exit 255. acme.sh ankoraŭ raportas "sukcese deplojita" - kaj tio estas ĝusta. En ĉi tiu kazo, la hoko malsukcesas pro posta paŝo (ekz. interna sciigo aŭ sinkroniga laboro de la gastiganto), ne pro la fakta instalado.
Por domajnoj kun umlaŭtoj, acme.sh konservas la atestilon interne en la Punycode-formo (xn--…), dum la aŭtomata kongruo de la hoko komparas la Unikodan formon. Rezulto: "deplojita al 0 el 0 retejoj" - nenio estas instalita. La malfacila afero estas, ke acme.sh ankaŭ raportas "Sukceson" ĉi tie, do la eraro estas facile preteratentita. Solvo: Laboru rekte kun la Punycode-domajno kaj malŝaltu aŭtomatan reĝimon:
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
Kun SSH-aliro, vi ne bezonas AutoSSL: acme.sh eldonas la atestilon, kiu cpanel_uapiLa -Hook instalas ĝin, kaj la inkluzivita cron-tasko tenas ĝin aŭtomate ĝisdatigita. Post agordo, la senpaga HTTPS-servo funkcias kontinue memstare. Tiuj, kiuj investas la komencan penon, ŝparas al si ĉiun manan renovigon en la estonteco - kaj povas etendi la saman solvon al iu ajn plia domajno en la sama konto per ununura komando.