{"id":17108,"date":"2026-10-28T23:38:18","date_gmt":"2026-10-28T23:38:18","guid":{"rendered":"https:\/\/www.trustedhosting.in\/blog\/reseller-hosting-security-checklist\/"},"modified":"2026-10-28T23:51:43","modified_gmt":"2026-10-28T23:51:43","slug":"reseller-hosting-security-checklist","status":"publish","type":"post","link":"https:\/\/www.trustedhosting.in\/blog\/reseller-hosting-security-checklist\/","title":{"rendered":"Reseller Hosting Security Checklist: Protect Client Accounts and Shared Resources"},"content":{"rendered":"<p>Reseller hosting lets you create separate hosting accounts for multiple customers, but one reseller account can still contain many websites, mailboxes, databases, and administrative credentials. A security problem in one customer account can create support work, reputation damage, or resource pressure for the wider reseller business.<\/p>\n<p>This reseller hosting security checklist focuses on the controls you can manage at account and customer level. WebyStrata provides the reseller hosting environment and infrastructure support for the direct reseller account. The reseller remains responsible for the websites, credentials, applications, and customers hosted under the reseller account.<\/p>\n<h2>Start with a clear security boundary<\/h2>\n<p>Security has several layers. Your hosting provider manages the server platform and network infrastructure. You manage reseller-level settings, client accounts, package limits, passwords, access policies, and customer communication. Your customers may also manage their own website applications, plugins, themes, and content.<\/p>\n<p>Write down who can make each type of change. This prevents a customer from receiving your master reseller credentials and makes it easier to escalate infrastructure issues without exposing unrelated accounts.<\/p>\n<h2>Use separate customer accounts<\/h2>\n<p>Do not place unrelated customer websites into one shared cPanel account simply because it is convenient. Separate accounts make access control, resource monitoring, backups, migration, suspension, and incident response easier.<\/p>\n<p>For every customer account:<\/p>\n<ul>\n<li>Use a unique cPanel username and strong password.<\/li>\n<li>Assign the account to a deliberate WHM package.<\/li>\n<li>Give access only to the features the customer needs.<\/li>\n<li>Keep the account owner and support email current.<\/li>\n<li>Record the domain, package, DNS, backup, and renewal details.<\/li>\n<\/ul>\n<p>Account separation does not replace secure applications, but it limits the impact of a mistake or compromise.<\/p>\n<h2>Protect WHM and reseller credentials<\/h2>\n<p>Your reseller login can affect every customer account. Treat it as an administrative credential rather than an ordinary website password.<\/p>\n<ul>\n<li>Enable two-factor authentication where available.<\/li>\n<li>Use a password manager and never reuse the password elsewhere.<\/li>\n<li>Do not send credentials through ordinary email or chat.<\/li>\n<li>Remove former staff and contractors promptly.<\/li>\n<li>Review administrator access and API credentials regularly.<\/li>\n<li>Use secure connections when accessing WHM, cPanel, FTP, and billing tools.<\/li>\n<\/ul>\n<p>Customers should receive only their own account access. They should not receive your reseller username, provider credentials, API keys, or another customer\u2019s backup.<\/p>\n<h2>Keep websites and applications updated<\/h2>\n<p>Many reseller incidents begin with an outdated CMS, plugin, theme, script, or vulnerable administrator account. Hosting infrastructure cannot compensate for an application that has not been maintained.<\/p>\n<p>Decide whether updates are the customer\u2019s responsibility or part of a paid maintenance service. If you manage updates, define the testing, backup, rollback, and emergency response process before enabling automatic changes.<\/p>\n<h2>Control PHP, scripts, and file permissions<\/h2>\n<p>Use supported PHP versions and remove versions or extensions that your customers do not need. Review writable directories, upload locations, scheduled tasks, and unused scripts.<\/p>\n<p>Customers should not keep abandoned installers, old backups, temporary archives, or unused plugins inside public web directories. These files increase the attack surface and can consume storage or inode limits.<\/p>\n<h2>Secure DNS, SSL, and email<\/h2>\n<p>DNS and email are part of the security boundary, not just setup tasks. Check that each domain uses the intended nameservers and that DNS records do not point to an old server or forgotten service.<\/p>\n<ul>\n<li>Use HTTPS for websites and control-panel access.<\/li>\n<li>Confirm SSL certificates renew before expiration.<\/li>\n<li>Publish SPF, DKIM, and DMARC records for domains sending email.<\/li>\n<li>Limit mailbox access and remove former users.<\/li>\n<li>Monitor unusual mail volume and investigate spam complaints quickly.<\/li>\n<\/ul>\n<p>Do not change customer mail records without confirming whether their mail is hosted with you or with an external provider.<\/p>\n<h2>Plan backups and restores<\/h2>\n<p>A backup plan should answer four questions: what is copied, how often it is copied, how long it is retained, and how quickly it can be restored. A server-level backup may not be a complete business continuity plan for every website.<\/p>\n<p>Test a restore before promising one. Check that files, databases, configuration files, email, and permissions return in a usable state. Keep a record of restore requests and make the customer responsible for confirming the recovered site.<\/p>\n<h2>Monitor resource and security signals<\/h2>\n<p>Resource limits can become security signals. An unexpected CPU spike, process count, disk increase, or outbound email surge may indicate a traffic event, plugin failure, compromised account, or abuse.<\/p>\n<table>\n<thead>\n<tr>\n<th>Signal<\/th>\n<th>Possible cause<\/th>\n<th>First action<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>CPU or process spike<\/td>\n<td>Traffic, cron loop, plugin issue, compromise<\/td>\n<td>Identify the account and recent changes<\/td>\n<\/tr>\n<tr>\n<td>Rapid file growth<\/td>\n<td>Backups, logs, malware, media, archives<\/td>\n<td>Review large and recently modified files<\/td>\n<\/tr>\n<tr>\n<td>Outbound email increase<\/td>\n<td>Compromised form, mailbox, or script<\/td>\n<td>Check mail logs and isolate the affected account<\/td>\n<\/tr>\n<tr>\n<td>Repeated login failures<\/td>\n<td>Brute-force attempts or stolen credentials<\/td>\n<td>Reset credentials and enable stronger access controls<\/td>\n<\/tr>\n<tr>\n<td>Multiple sites affected<\/td>\n<td>Shared resource or infrastructure problem<\/td>\n<td>Escalate to WebyStrata with timestamps and examples<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Prepare an incident response process<\/h2>\n<p>When a customer reports a suspicious change, do not make random edits. Record the domain, time, symptoms, affected users, recent changes, and evidence. Decide whether to restrict access, suspend a script, restore a backup, or escalate the infrastructure issue.<\/p>\n<ol>\n<li>Confirm the affected account and preserve useful evidence.<\/li>\n<li>Reset compromised credentials and remove unauthorized access.<\/li>\n<li>Check recent files, users, plugins, themes, cron jobs, and email activity.<\/li>\n<li>Restore from a known-good backup when appropriate.<\/li>\n<li>Patch the cause before returning the site to normal operation.<\/li>\n<li>Explain the incident and prevention steps to the customer.<\/li>\n<\/ol>\n<p>If the issue affects the hosting platform, server, network, or provider-level controls, escalate it to WebyStrata. Keep your customer updated while the reseller-level investigation continues.<\/p>\n<h2>Monthly reseller security review<\/h2>\n<ul>\n<li>Review WHM and billing administrator access.<\/li>\n<li>Check package limits and unusual resource usage.<\/li>\n<li>Confirm backups completed and test a restore sample.<\/li>\n<li>Review SSL renewals and DNS changes.<\/li>\n<li>Remove old accounts, users, files, and credentials.<\/li>\n<li>Check application update status for managed sites.<\/li>\n<li>Review support tickets for repeated security patterns.<\/li>\n<\/ul>\n<h2>Final takeaway<\/h2>\n<p>Reseller hosting security is a shared responsibility with a clear operating boundary. WebyStrata provides the reseller hosting environment, while the reseller controls customer accounts, access, applications, backups, policies, and first-line response. Separate accounts, strong credentials, tested backups, resource monitoring, and a documented escalation path make the service safer to operate.<\/p>\n<p>Explore <a href=\"https:\/\/www.webystrata.com\/cpanel-hosting.html\">WebyStrata hosting options<\/a> when building a reseller service with clear security responsibilities.<\/p>\n<h2>Frequently asked questions<\/h2>\n<h3>Who is responsible for a customer\u2019s WordPress security?<\/h3>\n<p>The responsibility depends on your service agreement. If you sell managed maintenance, you may manage updates and monitoring. If you sell hosting only, the customer or their developer normally manages the website application.<\/p>\n<h3>Does separate cPanel accounts guarantee security?<\/h3>\n<p>No. Separate accounts improve isolation and access control, but strong credentials, updates, backups, monitoring, and safe application practices are still required.<\/p>\n<h3>When should a reseller contact WebyStrata?<\/h3>\n<p>Contact WebyStrata for reseller-account, server, network, platform, or provider-level issues that cannot be solved with your available WHM and cPanel permissions.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Reseller hosting lets you create separate hosting accounts for multiple customers, but one reseller account can still contain many websites, mailboxes, databases, and administrative credentials. A security problem in one customer account can create support work, reputation damage, or resource pressure for the wider reseller business. This reseller hosting security checklist focuses on the controls [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":17114,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-17108","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-latest-updates"],"_links":{"self":[{"href":"https:\/\/www.trustedhosting.in\/blog\/wp-json\/wp\/v2\/posts\/17108","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.trustedhosting.in\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.trustedhosting.in\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.trustedhosting.in\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.trustedhosting.in\/blog\/wp-json\/wp\/v2\/comments?post=17108"}],"version-history":[{"count":1,"href":"https:\/\/www.trustedhosting.in\/blog\/wp-json\/wp\/v2\/posts\/17108\/revisions"}],"predecessor-version":[{"id":17115,"href":"https:\/\/www.trustedhosting.in\/blog\/wp-json\/wp\/v2\/posts\/17108\/revisions\/17115"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.trustedhosting.in\/blog\/wp-json\/wp\/v2\/media\/17114"}],"wp:attachment":[{"href":"https:\/\/www.trustedhosting.in\/blog\/wp-json\/wp\/v2\/media?parent=17108"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.trustedhosting.in\/blog\/wp-json\/wp\/v2\/categories?post=17108"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.trustedhosting.in\/blog\/wp-json\/wp\/v2\/tags?post=17108"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}