Certificat SSL ACME pe Windows Server IIS cu win-acme
TipărirePe un VPS sau server Windows cu IIS, clientul gratuit win-acme obține cu o singură comandă un certificat Sectigo din abonamentul dvs. ACME, adaugă legătura HTTPS (binding) la site și creează o sarcină programată care reînnoiește certificatul. Mai jos aflați ce pregătiți în IIS, care este comanda cu parametrii corecți și cum verificați reînnoirile.
De ce aveți nevoie
- Acces de administrator la server prin Remote Desktop.
- IIS cu site-ul funcțional deja prin HTTP.
- Un binding HTTP pe portul 80 cu host name completat pentru fiecare nume dorit în certificat (de exemplu
example.comșiwww.example.com). win-acme ia numele din aceste legături; un binding cu host name gol nu este suficient. - Înregistrările DNS ale domeniului indică spre server, iar porturile 80 și 443 sunt permise în Windows Defender Firewall.
- Server URL, EAB MAC ID și EAB MAC Key din Sectigo ACME Certificate-as-a-Service.
Pasul 1. Verificați legăturile în IIS
- Deschideți Internet Information Services (IIS) Manager: din Server Manager, meniul Tools, sau rulând
inetmgr. - În panoul Connections extindeți serverul, apoi Sites, și selectați site-ul.
- Apăsați Bindings în panoul Actions.
- Verificați că există câte un binding
httppe portul 80 pentru fiecare nume. Dacă lipsește unul, apăsați Add, alegeți Type http, Port 80, scrieți numele în Host name și confirmați.
Pasul 2. Descărcați win-acme
- Descărcați ultima versiune pentru sistemul dvs. (de obicei x64) de pe site-ul oficial, www.win-acme.com.
- Înainte de dezarhivare, faceți clic dreapta pe fișierul ZIP, deschideți Properties și bifați Unblock, dacă Windows afișează această opțiune; altfel Windows poate opri rularea programului.
- Dezarhivați într-un dosar permanent, de exemplu
C:\Program Files\win-acme. Nu îl lăsați în Downloads: sarcina de reînnoire rulează programul din acest dosar.
Pasul 3. Emiteți și instalați certificatul
Deschideți Windows PowerShell ca administrator și rulați comanda de mai jos cu valorile dvs. În PowerShell un rând continuă pe următorul când se termină cu un apostrof invers (`); puteți scrie și totul pe un singur rând.
& "C:\Program Files\win-acme\wacs.exe" `
--source iis --host example.com,www.example.com `
--baseuri https://acme.sectigo.com/v2/DV `
--eab-key-identifier YOUR_EAB_MAC_ID --eab-key YOUR_EAB_MAC_KEY `
--emailaddress admin@example.com --accepttos `
--store certificatestore --installation iis
| Parametru | Ce face |
|---|---|
--source iis | Ia numele din legăturile IIS (în versiunile mai vechi de 2.2 parametrul se numește --target) |
--host | Numele incluse, separate prin virgulă, fără spații |
--baseuri | Serverul ACME Sectigo (Server URL din contul de client) |
--eab-key-identifier, --eab-key | EAB MAC ID și EAB MAC Key |
--emailaddress, --accepttos | Adresa de contact a contului ACME și acceptarea termenilor |
--store certificatestore | Salvează certificatul în depozitul de certificate Windows |
--installation iis | Creează sau actualizează legătura HTTPS pe portul 443 |
win-acme validează domeniul prin HTTP, instalează certificatul și, la prima rulare, creează în Task Scheduler o sarcină pentru reînnoiri. Dacă ceva nu reușește, rulați aceeași comandă cu --verbose adăugat, ca să vedeți fiecare pas în detaliu.
Pasul 4. Confirmați rezultatul
- Deschideți
https://example.comîn browser și verificați certificatul de sub lacăt: emitentul, numele și data expirării. - În IIS Manager deschideți din nou Bindings pentru site: acum trebuie să existe un binding
httpspe portul 443, cu certificatul nou selectat. - În Task Scheduler găsiți sarcina al cărei nume începe cu
win-acme renew. Ea rulează zilnic și reînnoiește certificatul la momentul potrivit.
Pasul 5. Verificați și testați reînnoirile
win-acme păstrează reînnoirile separat pentru fiecare server ACME, așa că dați întotdeauna același --baseuri folosit la emitere:
& "C:\Program Files\win-acme\wacs.exe" --list --baseuri https://acme.sectigo.com/v2/DV
& "C:\Program Files\win-acme\wacs.exe" --renew --force --baseuri https://acme.sectigo.com/v2/DV
Prima comandă arată reînnoirile înregistrate și data următoare. A doua forțează o reînnoire imediată; folosiți-o o dată, pentru test, nu în mod regulat. Fără --baseuri, win-acme se uită la serverul său implicit și afișează o listă goală, ceea ce pare adesea că reînnoirea s-a pierdut.
Probleme frecvente
- Nu se găsesc legături sau numele (host) nu este găsit. Site-ul nu are un binding HTTP cu acel host name. Adăugați-l ca la pasul 1.
- Validarea expiră (timeout). Portul 80 este blocat în Windows Defender Firewall sau în alt firewall ori DNS-ul indică încă spre alt server.
- Erori unauthorized sau de cont. EAB MAC ID sau EAB MAC Key au fost copiate incomplet ori numele cerut lipsește din lista de domenii a abonamentului.
- Pe un server cu mai multe site-uri browserul arată alt certificat. Verificați ca fiecare binding HTTPS să aibă host name completat și bifa Require Server Name Indication.
- Reînnoirea nu are loc. Sarcina a fost ștearsă sau dezactivată ori dosarul win-acme a fost mutat după instalare. Rulați din nou comanda de la pasul 3 din dosarul permanent.
win-acme scrie jurnale detaliate în C:\ProgramData\win-acme. Dacă aveți nevoie de ajutor, deschideți un tichet și atașați partea relevantă din jurnal, fără EAB MAC Key.