Certificat SSL pe LiteSpeed și OpenLiteSpeed cu acme.sh (ACME)
TipărirePe un VPS sau server dedicat cu OpenLiteSpeed ori cu LiteSpeed Enterprise instalat de sine stătător, obțineți un certificat Sectigo din abonamentul ACME cu ajutorul acme.sh, indicați o singură dată fișierele în LiteSpeed, iar acme.sh reînnoiește apoi certificatul și repornește singur serverul web. Mai jos găsiți fiecare pas, de la instalarea acme.sh până la listener-ul HTTPS din WebAdmin.
Ghidul nu se aplică pachetelor WordPress Hosting și Business Hosting de la TopHost: acolo LiteSpeed este administrat de cPanel, certificatul gratuit vine din AutoSSL, iar un certificat ACME se instalează ca în articolul acme.sh pe găzduirea cPanel. La fel și pentru LiteSpeed Enterprise care rulează sub orice panou de control: folosiți instrumentele SSL ale panoului.
Cerințe
- Acces root sau sudo prin SSH (vedeți conectarea prin SSH).
- Înregistrarea A a domeniului și, dacă o folosiți, AAAA indică spre server.
- O gazdă virtuală (virtual host) pentru site, care răspunde deja pe portul 80.
- Porturile 80 și 443 deschise în firewall. Portul 7080 al WebAdmin lăsați-l accesibil doar de la adresa dvs. IP.
- Server URL, EAB MAC ID și EAB MAC Key din Sectigo ACME Certificate-as-a-Service.
Pasul 1. Instalați acme.sh
curl https://get.acme.sh | sh -s email=admin@example.com
source ~/.bashrc
acme.sh --version
Dacă descărcarea eșuează, instalați curl (și socat sau cron, dacă instalatorul le cere) cu managerul de pachete al sistemului și rulați comanda din nou.
Pasul 2. Înregistrați-vă la serverul ACME Sectigo
acme.sh --register-account \
--server https://acme.sectigo.com/v2/DV \
--eab-kid YOUR_EAB_MAC_ID \
--eab-hmac-key YOUR_EAB_MAC_KEY \
--accountemail admin@example.com
Se face o singură dată pe server. Pe adresa din --accountemail primiți notificările despre cont.
Pasul 3. Aflați directorul rădăcină și emiteți certificatul
În WebAdmin deschideți Virtual Hosts, selectați site-ul și uitați-vă la Document Root pe fila General. Pe un OpenLiteSpeed curat este /usr/local/lsws/Example/html, iar sub CyberPanel de regulă /home/example.com/public_html. Apoi:
acme.sh --issue --server https://acme.sectigo.com/v2/DV \
-d example.com -d www.example.com \
-w /home/example.com/public_html
Folosiți modul webroot de mai sus, nu modul standalone: acesta încearcă să pornească propriul server web pe portul 80, pe care LiteSpeed îl ocupă deja.
Pasul 4. Copiați certificatul într-un loc fix
mkdir -p /usr/local/lsws/conf/cert/example.com
acme.sh --install-cert -d example.com \
--key-file /usr/local/lsws/conf/cert/example.com/privkey.pem \
--fullchain-file /usr/local/lsws/conf/cert/example.com/fullchain.pem \
--reloadcmd "/usr/local/lsws/bin/lswsctrl restart"
acme.sh copiază cheia și lanțul complet în acel dosar acum și după fiecare reînnoire, apoi rulează comanda de reîncărcare. lswsctrl restart face o repornire lină, fără a întrerupe conexiunile deschise. Nu indicați în LiteSpeed direct fișierele din ~/.acme.sh/; structura lor se poate schimba de la o versiune la alta.
Pasul 5. Activați HTTPS în WebAdmin
Deschideți WebAdmin la https://SERVER_IP:7080 și autentificați-vă.
- Intrați în Listeners și adăugați un listener nou: un nume, de exemplu
HTTPS, IP Address ANY, Port 443, Secure Yes. Salvați. - Deschideți listener-ul creat și fila SSL. La SSL Private Key and Certificate setați Private Key File la
/usr/local/lsws/conf/cert/example.com/privkey.pem, Certificate File la/usr/local/lsws/conf/cert/example.com/fullchain.pemși Chained Certificate la Yes. Salvați. - Pe fila Virtual Host Mappings adăugați gazda virtuală și domeniile
example.com, www.example.com. - Apăsați Graceful Restart.
Găzduiți pe același server mai multe site-uri, fiecare cu certificatul lui? Păstrați un singur listener HTTPS și setați cheia și certificatul în fila SSL a fiecărei gazde virtuale; LiteSpeed alege certificatul potrivit după numele cerut.
CyberPanel scrie propria configurație pentru site-urile pe care le administrează și poate înlocui modificările manuale din WebAdmin. Pe CyberPanel verificați, după o actualizare a panoului sau o modificare a site-ului, că în setări au rămas căile dvs. către certificat.
Pasul 6. Verificați HTTPS și reînnoirea
- Deschideți
https://example.comși verificați certificatul de sub lacăt: emitentul, numele acoperite și data expirării. - Rulați
crontab -l: trebuie să existe o linie cuacme.sh --cron, care verifică zilnic certificatele. - Rulați
acme.sh --listca să vedeți certificatele și data următoarei reînnoiri. - Pentru a testa o dată tot lanțul (reînnoire, copiere, repornire), rulați
acme.sh --renew -d example.com --force.
Depanare
- Timeout la validare. Portul 80 este blocat de firewall sau înregistrarea DNS indică încă în altă parte. Pe server,
ss -tlnp | grep ':80 'arată dacă LiteSpeed ascultă pe port. - 404 pentru fișierul de verificare. Calea din
-wnu este directorul rădăcină al acelei gazde virtuale sau o regulă de rescriere redirecționează/.well-known/acme-challenge/. - unauthorized la înregistrare. Verificați EAB MAC ID, EAB MAC Key și adresa serverului, copiate fără spații.
- Site-ul arată încă certificatul vechi sau unul implicit. Listener-ul sau gazda virtuală indică alte fișiere, domeniul lipsește din Virtual Host Mappings sau LiteSpeed nu a fost repornit.
- Domain not found la rularea
--renewsau--install-cert. Adăugați--ecc: versiunile actuale de acme.sh emit implicit certificate ECC.
Pe un VPS administrat de TopHost ne puteți cere să facem noi această configurare. Altfel, dacă vă blocați, deschideți un tichet cu comanda și rezultatul complet, fără EAB MAC Key.