A failed direct connection to WHM port 2087 does not always mean that cPanel is down. whm.example.com can use a service subdomain over port 443, while example.com:2087 connects directly to the cpsrvd socket. DNS, TCP reachability, TLS, cpsrvd, CSF and cPHulk must therefore be tested independently.
The same error screen can originate from different services. Separate network reachability, service state, firewall policy and authentication before changing anything.
The service subdomain over 443 can work while direct 2087 traffic is blocked.
TCP traffic may be filtered or the hostname may resolve to the wrong address.
The host is reachable but cpsrvd is not listening on 2087, or an active reject rule is applied.
The port is reachable; investigate the hostname certificate, SNI or service SSL layer.
Instead of disabling the entire protection stack, prove which rule blocks access and change only the required scope.
TCP_IN can drop direct WHM traffic while the 443 proxy path remains available.
Both ss and the local curl test fail when the cPanel web daemon is unavailable.
A working /whm alias on another domain can hide an incorrect A or AAAA record.
The source may be denied specifically for WHM or SSH services.
Back up the current configuration, validate syntax and keep a second administration session open before every service or firewall change.
Compare A and AAAA records with the main server address and do not overlook stale IPv6.
Confirm that the cpsrvd/cpanel process owns port 2087 on the expected interface.
A response from 127.0.0.1:2087 proves the daemon works and shifts focus to firewall or routing.
Use the supported restartsrv_cpsrvd script and inspect the cPanel error log.
Search CSF, cPHulk and Host Access Control for the administrator address and port 2087.
Test https://IP:2087, https://hostname:2087 and https://whm.example.com separately.
Replace example IP addresses, ports and paths with your own values. Review command output before moving to the next step.
getent ahosts server.example.com dig +short A server.example.com dig +short AAAA server.example.com curl -vkI --connect-timeout 10 https://server.example.com:2087/
ss -lntp | grep ':2087[[:space:]]' curl -kI --connect-timeout 10 https://127.0.0.1:2087/ ps aux | grep '[c]psrvd'
/usr/local/cpanel/scripts/restartsrv_cpsrvd --restart systemctl status cpanel --no-pager -l tail -n 100 /usr/local/cpanel/logs/error_log
csf -g 2087 csf -g 203.0.113.10 whmapi1 --output=jsonpretty cphulk_status
A wrong firewall, SSH or login-protection rule can make the server unreachable. Do not close management ports without KVM, VNC or provider console access.
The /whm alias or WHM service subdomain can use the port 443 proxy path. Direct 2087 traffic follows a separate firewall rule.
No. cpsrvd serves cPanel, WHM, Webmail and additional cPanel service interfaces.
Review A and AAAA records, SNI, the hostname certificate and local DNS cache. The TCP service itself is reachable.
Restricting administration to trusted source addresses is safer, but keep an emergency console path for dynamic-IP changes and lockouts.
Official use of a hostname or IP address with secure WHM port 2087.
Network requirements for port 2087 and other cPanel services.
Difference between whm.example.com over 443 and direct port 2087 access.
Responsibilities of cpsrvd and other core cPanel services.
Supported restart procedure for the cpsrvd/cpanel daemon.
The correct security method is not to disable protection, but to measure the network, service and rule path and apply the narrowest safe change.