We earn commissions from brands listed on this site, which influences how listings are presented.

Back To List
The Complete Guide to Web Hosting Security

The Complete Guide to Web Hosting Security

B
Bestchoosing Editorial Team

Security is patches, SSH, least privilege, and a WAF—not a badge. Let’s Encrypt is table stakes; FTP belongs in a museum.

Our editorial team checks official merchant information, policies, and category-specific trade-offs. We do not claim hands-on testing unless a guide explicitly says what was tested. Read our editorial policy

The Complete Guide to Web Hosting Security

Most “hacked WordPress” stories are outdated plugins, reused passwords, and FTP left open. Hosts can patch the hypervisor, offer a WAF, and isolate accounts. They cannot make you stop installing nulled themes. SiteGround, WP Engine, and Kinsta sell a harder default. Shared cPanel can be fine if you behave. This is the behavior.
The Complete Guide to Web Hosting Security overview

Patch the software you did not write

PHP, WordPress core, plugins, and themes are a supply chain you adopted. Hosts that lag PHP versions (old shared leftovers) force you to run software that no longer gets security fixes. Managed WordPress at WP Engine or Kinsta will constrain plugins and push PHP; that is a security feature disguised as a support policy. On A2, DreamHost, Cloudways, or any VPS, you still click updates—or automate them on staging first. Nulled plugins are not a discount; they are a backdoor with a readme. Delete unused themes. Remove the default admin user name if you can. Patching is boring and beats every scanner upsell that promises to watch you stay unpatched.
Patch the software you did not write

Kill FTP; use SFTP or SSH keys

FTP sends credentials in ways the internet outgrew. Disable it in cPanel if the host still enables it by default (many Bluehost and HostGator-style accounts still might). Use SFTP or SSH keys on A2, Cloudways, InMotion VPS, or DreamHost. Protect wp-admin with two-factor authentication and a unique password in a manager. Limit XML-RPC if you do not need it. Do not share the host panel login in Slack. Rotate keys when a contractor leaves. The control panel is a privileged endpoint; treat it like a bank. If you must give an agency access, use a role that is not the owner, and calendar a revocation. Stolen SFTP keys are how “we have a WAF” still becomes a defacement.

WAF, malware scanners, and what hosts actually include

A web application firewall (host-provided or Cloudflare) filters obvious exploit traffic before PHP runs. SiteGround, WP Engine, and Kinsta include stronger defaults than bargain shared. Malware scanners catch aftermath; they are not a patch strategy. If the host sells a scanner as a monthly add-on, price it—or use Cloudflare plus disciplined updates. Isolation matters: a compromised neighbor on ancient shared should not be able to read your files. Cloudways containers and Kinsta’s isolation exist for that reason. Do not confuse a padlock (TLS) with a secure application. TLS stops coffee-shop snooping. It does not stop a vulnerable contact-form plugin. Layer: patched apps, least privilege, WAF, backups you can restore after a bad day.
WAF, malware scanners, and what hosts actually include

WordPress roles, 2FA, and unused administrators

Every leftover Administrator is a door. Authors do not need install_plugins. Shop managers do not need theme edit. Turn on 2FA for anyone who can change plugins. Hide or protect phpMyAdmin; do not bookmark it on a shared laptop. On sites with WooCommerce, customers should never share an admin path mentally with you—use a custom login path only as extra friction, not as the only control. Review users quarterly. Agencies forget to leave. Interns forget to leave. If you use WP Engine or Kinsta SSO-style workflows, still audit WordPress users. Hosting security is half account hygiene. The other half is not installing the plugin a banner said was required for “performance and security.”

The first hour if the site is already owned

Take it offline if it is serving malware to visitors. Rotate every password: WordPress, cPanel, registrar, Cloudflare, database, SSH keys, associated mail. Restore from a backup from before the incident if you have one that is clean—this is why off-site copies matter. Scan, but do not trust a single plugin to have found every web shell. Reinstall core from wordpress.org. Diff wp-content. Ask SiteGround, WP Engine, or your host’s incident people if you pay for that; they have seen this. Change DNS only if the registrar was the compromise. Document what you did. Then patch the hole that let them in, or you are scheduling the sequel. A scanner subscription after a restore is not a postmortem.
The first hour if the site is already owned

The takeaway

Patch, kill FTP, lock admin, keep a WAF, and hold backups you have restored once on purpose. Let’s Encrypt is not a security program. WP Engine, Kinsta, and SiteGround make the defaults harder; they cannot out-secure a nulled theme. Hygiene beats badges.
B

By Bestchoosing Editorial Team

This guide was researched and reviewed by the Bestchoosing Editorial Team. We compare official product information, policies, total cost, and practical trade-offs; we do not invent individual credentials or imply hands-on testing that did not occur.

How we research and review

*The information on this site is based on research, but should not be treated as professional advice. Results may vary based on individual circumstances.