Plesk Setup
For servers managed with Plesk.
Use the built-in SSL/TLS tool if it supports custom ACME. Otherwise use SSH + acme.sh, then import the certificate into Plesk.
Option A: Plesk Supports Custom ACME
Enter:
- Server URL
- EAB MAC ID
- EAB MAC key
Issue the certificate and enable HTTPS.
Open:
text
https://example.comOption B: SSH + acme.sh
1. Set Variables
bash
export DOMAIN="example.com"
export EMAIL="[email protected]"
export WEBROOT="/var/www/vhosts/example.com/httpdocs"
export ACME_SERVER="your Server URL"
export EAB_KID="your EAB MAC ID"
export EAB_HMAC_KEY="your EAB MAC key"
export CERT_DIR="/var/www/vhosts/system/$DOMAIN/conf/12ssl"Single-domain certificates should include example.com and www.example.com.
2. Install and Register
bash
curl https://get.acme.sh | sh
source ~/.bashrc 2>/dev/null || source ~/.zshrc 2>/dev/null || true
~/.acme.sh/acme.sh --register-account \
--server "$ACME_SERVER" \
--eab-kid "$EAB_KID" \
--eab-hmac-key "$EAB_HMAC_KEY" \
--accountemail "$EMAIL"3. Issue the Certificate
Single domain, including the root domain and www:
bash
~/.acme.sh/acme.sh --issue \
--server "$ACME_SERVER" \
-d "$DOMAIN" \
-d "www.$DOMAIN" \
-w "$WEBROOT"Multi-domain:
bash
~/.acme.sh/acme.sh --issue \
--server "$ACME_SERVER" \
-d example.com \
-d www.example.com \
-d example.net \
-d shop.example.org \
-w "$WEBROOT"Wildcard, including the root domain and *.:
bash
export CF_Token="Cloudflare API Token"
export CF_Account_ID="Cloudflare Account ID"
~/.acme.sh/acme.sh --issue \
--server "$ACME_SERVER" \
--dns dns_cf \
-d "$DOMAIN" \
-d "*.$DOMAIN"WARNING
Wildcard certificates require DNS validation and cannot use -w "$WEBROOT".
4. Install Certificate Files
bash
sudo mkdir -p "$CERT_DIR"
sudo ~/.acme.sh/acme.sh --install-cert -d "$DOMAIN" \
--key-file "$CERT_DIR/privkey.pem" \
--fullchain-file "$CERT_DIR/fullchain.pem" \
--reloadcmd "plesk sbin nginxmng -r || systemctl reload nginx"5. Import in Plesk
Open:
text
Websites & Domains -> example.com -> SSL/TLS CertificatesUpload:
- Private key:
privkey.pem - Certificate:
fullchain.pem
Enable HTTPS for the domain.
6. Check
bash
curl -I "https://$DOMAIN"
~/.acme.sh/acme.sh --cron --home ~/.acme.sh