ISPConfig is a mature, open-source multi-server web hosting control panel written in PHP. Supporting Nginx and Apache, Postfix and Dovecot for mail, BIND for DNS, and FTP/SFTP via a central management server, it's the panel of choice for web hosting companies and Linux administrators who need to manage dozens of servers from one interface. The centralized architecture is powerful — but it also means that a single point of failure in the ISPConfig interface or its API can affect every server in the cluster. Vigilmon monitors the ISPConfig web UI, the JSON-RPC API, the Postfix mail stack, SSL certificates, and scheduled task execution, so you catch failures before they cascade.
What You'll Set Up
- HTTP monitor for the ISPConfig web UI (port 8080 HTTP or 8443 HTTPS)
- JSON-RPC API availability check (
/remote/json.php) - TCP port monitor for Postfix SMTP (port 25)
- SSL certificate expiry alerts for the ISPConfig admin UI and hosted sites
- Cron heartbeat monitoring for ISPConfig scheduled tasks (email queue processing, backup jobs, SSL renewal)
Prerequisites
- ISPConfig 3.x installed on one or more servers
- Admin credentials and API access enabled in ISPConfig
- A free Vigilmon account
Step 1: Monitor the ISPConfig Web UI
ISPConfig's admin interface runs on port 8080 (HTTP) by default, or port 8443 (HTTPS) when SSL is enabled. Losing access to this interface means you can't manage any server in your cluster.
HTTPS installation (recommended)
- Log in to vigilmon.online and click Add Monitor.
- Set Type to
HTTP / HTTPS. - Enter your ISPConfig URL:
https://your-server-ip:8443orhttps://ispconfig.yourdomain.com:8443. - Set Check interval to
1 minute. - Set Expected HTTP status to
200. - Click Save.
HTTP installation
For HTTP-only installations on port 8080:
- Follow the same steps above, using
http://your-server-ip:8080as the URL. - Note that HTTP monitors cannot include SSL certificate checks — use the HTTPS setup for SSL monitoring.
Step 2: Monitor the ISPConfig JSON-RPC API
ISPConfig exposes a JSON-RPC API at /remote/json.php that drives programmatic management of clients, domains, databases, and email accounts. This is distinct from the web UI — API failures affect billing integrations, WHMCS modules, and automation scripts even when the login page appears functional.
- In Vigilmon, click Add Monitor → HTTP / HTTPS.
- Set the URL to
https://your-server-ip:8443/remote/json.php. - Set Expected HTTP status to
200. - Under Response body, enable Contains keyword and enter
"code"to verify the JSON-RPC response envelope is present. - Set Check interval to
2 minutes. - Click Save.
The ISPConfig JSON-RPC API returns a JSON object with a code field on every valid request (including unauthenticated calls that return an error response). A keyword check on "code" confirms the PHP application layer is healthy without requiring a valid session token in the monitor.
Step 3: Monitor Postfix SMTP (TCP Port 25)
ISPConfig manages Postfix for outbound and inbound mail routing across all servers in the cluster. A downed Postfix service means mail delivery stops for every domain hosted on that server.
- In Vigilmon, click Add Monitor → TCP Port.
- Enter the mail server hostname or IP.
- Set Port to
25. - Set Check interval to
2 minutes. - Click Save.
Repeat this for each mail server in your ISPConfig cluster. For IMAP/POP3 access via Dovecot, add additional TCP monitors on ports 143 (IMAP), 993 (IMAPS), and 995 (POP3S) as needed.
Step 4: SSL Certificate Alerts for ISPConfig and Hosted Sites
ISPConfig handles SSL certificates for the admin interface and for customer websites. With ISPConfig's cron-based SSL renewal, certificates can expire silently if the Certbot or ACME process fails.
Admin interface certificate (port 8443)
- Open the HTTPS monitor you created in Step 1.
- Enable Monitor SSL certificate under the SSL section.
- Set Alert when certificate expires in less than
21 days. - Click Save.
Hosted site certificates
For each customer site managed by ISPConfig, add an SSL monitor:
- Click Add Monitor → HTTP / HTTPS.
- Enter the site URL:
https://customersite.com. - Enable Monitor SSL certificate with a
21 daysthreshold. - Click Save.
When a certificate is close to expiry, you can trigger manual renewal via ISPConfig's Sites → SSL interface, or from the command line using Certbot directly on the hosting server:
certbot renew --cert-name customersite.com
Step 5: Heartbeat Monitoring for ISPConfig Scheduled Tasks
ISPConfig relies on a cron-based task runner for email queue processing (Postfix), scheduled backups, and SSL certificate renewal. These background processes have no HTTP interface — use Vigilmon's heartbeat monitor to confirm they complete on schedule.
Create a heartbeat monitor
- In Vigilmon, click Add Monitor → Cron Heartbeat.
- Set the Expected ping interval to match the job (e.g.,
60minutes for an hourly mail queue flush,1440minutes for daily backups). - Copy the heartbeat URL:
https://vigilmon.online/heartbeat/your-token. - Click Save.
Wire the heartbeat to ISPConfig's cron jobs
ISPConfig's internal task scheduler runs via /usr/local/ispconfig/server/server.php. Add a Vigilmon ping to the relevant cron entries:
# Edit root crontab
crontab -e
For the ISPConfig server task processor (runs every 5 minutes by default in ISPConfig):
*/5 * * * * /usr/bin/php -q /usr/local/ispconfig/server/server.php && curl -s https://vigilmon.online/heartbeat/your-task-token
For the daily backup job (adjust path to your backup script):
0 2 * * * /usr/local/ispconfig/server/scripts/run_backup.sh && curl -s https://vigilmon.online/heartbeat/your-backup-token
The && chaining means the ping is only sent when the script exits with status 0 — a failing task suppresses the ping and Vigilmon raises the alert after the expected interval.
Step 6: Configure Alert Channels
- Go to Alert Channels in Vigilmon and add Slack, email, or a webhook.
- For the ISPConfig UI and API monitors, set Consecutive failures before alert to
2— brief PHP restarts during ISPConfig updates may cause a single missed probe. - For the Postfix TCP port monitor, set to
1failure — a stopped mail server is an immediate incident for all hosted customers. - Use Maintenance windows in Vigilmon when you apply ISPConfig updates that restart services, to avoid false-positive alerts during the maintenance window.
Summary
| Monitor | Target | What It Catches |
|---|---|---|
| HTTP (ISPConfig UI) | https://server:8443 | Panel crash, PHP failure |
| HTTP (JSON-RPC API) | https://server:8443/remote/json.php | API layer failure |
| TCP port | :25 (Postfix SMTP) | Mail server down, firewall block |
| SSL certificate | Admin UI + each hosted site | Certbot/ACME renewal failure |
| Cron heartbeat | Task processor, backups, SSL renewal | Scheduled job failure or missed run |
ISPConfig's multi-server architecture makes it a powerful platform for hosting companies — and that same architecture makes observability critical. With Vigilmon monitoring the admin UI, JSON-RPC API, Postfix mail stack, certificate expiry, and scheduled task execution, you have full visibility across your ISPConfig cluster before failures escalate to customer-facing outages.