Security
SSH keys, firewalls, permissions, malware, and headers.
Password hygiene and 2FAUse a password manager so every login gets a unique secret. Add TOTP on cPanel, WordPress, your registrar, and mail so one leaked password cannot empty the shop.Updated Aug 29, 2026
SSH keys instead of passwordsSSH keys replace password logins: generate ed25519 locally, install the public key, prove a second session, then disable password SSH on your VPS or use cPanel keys on…Updated Aug 29, 2026
Firewalls: CSF, firewalld, nftablesA host firewall should allow only the ports you mean to expose. Use one tool—CSF, firewalld, or nftables—check listeners with ss, and enable rules before you install apps.Updated Aug 29, 2026
Fail2ban and Imunify360Imunify360 is the WAF and malware scanner on shared and cPanel plans. Fail2ban bans noisy IPs from VPS logs. Use one clear layer, keep plugins updated, and know…Updated Aug 29, 2026
File permissions: 644 and 755On shared hosting, use directories at 755 and files at 644. Keep wp-config at 640 or 644, avoid 777, and fix ownership before you chmod after a restore.Updated Aug 29, 2026
Malware in PHP appsPHP malware is usually a webshell, prepend, extra admin, or cron. Imunify catches signatures, not stolen passwords. Restore from a known-good backup rather than deleting one file.Updated Aug 29, 2026
Disable unused servicesUnused services leave extra ports open on your VPS. List listeners with ss, then use systemctl disable --now so they stay off after a reboot.Updated Aug 29, 2026
Security headers that do workSecurity headers tell the browser how to treat your site. Enable the useful ones once, avoid duplicates, and confirm with curl after you purge the cache.Updated Aug 29, 2026
Least privilege, said plainlyLeast privilege means each login does only its job: separate SSH keys, a limited database user, and 2FA on the panel. Shared secrets and excess plugins often cause…Updated Aug 29, 2026
What to do after a compromiseAfter a site compromise, take a JetBackup copy first, rotate every secret, restore a known-good date, and patch the hole. Do not reinstall WordPress over damaged files.Updated Aug 29, 2026
XML-RPC brute force looks like trafficXML-RPC brute force is bulk POSTs to xmlrpc.php that pin CPU and trip LVE, so it looks like traffic. Disable the endpoint if you do not need it…Updated Aug 29, 2026
Disable directory listingDirectory listing turns folders like /uploads/ into a public file menu. Disable it with Options -Indexes in .htaccess, confirm with curl, and move dumps out of the web…Updated Aug 29, 2026
wp-config.php outside the document rootWordPress walks up parent folders to find wp-config.php, so you can keep the wp-config location above public_html. That stops a mis-set document root from serving the file as…Updated Aug 29, 2026
Changing the SSH port is not a planChanging the SSH port reduces scanner noise but does not replace keys, locked-down root, or a working console. Use it only after those controls already work on your…Updated Aug 29, 2026
PHP disable_functions, without breaking WordPressdisable_functions blocks risky PHP calls. Shared hosting already covers the dangerous ones; on a VPS, test WordPress plugins before you tighten the list.Updated Aug 29, 2026
Rate-limit wp-login without locking yourself out in a hotelSet a wp-login rate limit that allows a few failures, then delays access. That slows guessing without locking you out on hotel Wi-Fi, especially with 2FA and XML-RPC…Updated Aug 29, 2026
Hide the PHP version headerHide the PHP version header by setting expose_php to Off in MultiPHP INI Editor or php.ini, then confirm X-Powered-By is gone with a simple curl check.Updated Aug 29, 2026
What CageFS actually isolatesCageFS is CloudLinux’s per-account filesystem jail on shared hosting. It blocks neighbor files and system-wide installs while leaving your home, PHP, mail, and MySQL sockets usable.Updated Aug 29, 2026
Backup before you “clean” anythingTake a backup before cleanup with JetBackup or a VPS snapshot, then remove only what you can name. Cleanup without a restorable copy can leave a blank site…Updated Aug 29, 2026
Hotlink protection without breaking yourselfHotlink protection checks the Referer header so other sites cannot embed your files. Allow your HTTPS hostnames, CDN names, and usually blank referrers so you do not 403…Updated Aug 29, 2026