Hosting & Security
The CampusPress Technical Guide
Hosting & InfrastructureCampusPress has carefully selected Amazon Web Services (aws.amazon.com) for hosting data centers to physically house the servers that we use. CampusPress staff remotely manage and maintain the servers and applications in these datacenters. CampusPress, and our customers, are able to leverage certifications and security assurances by these partners as it relates to physical security. More on compliance and certifications can be found at aws.amazon.com/compliance. All data centers include the highest levels of 24/7/365 on-site security, regulated climate control, redundant power, automated off-site backups, and industry-leading network infrastructure. Certifications include ISO27001:2005, SSAE16 SOC 1, SOC 2, SOC 3, and PCI-DSS ROC.
Datacenters & Hosting RegionsIn order to comply with local legal and privacy requirements, each customer can choose to be fully hosted in any of Amazon’s AWS locations, including: Asia Pacific (Sydney) Asia Pacific (Tokyo) *Coming soon Canada (Central) EU (Frankfurt) EU/UK (London) South America (São Paulo) *Coming soon US East (Ohio and N. Virginia) US West (Oregon)
Infrastructure and ArchitectureOur fully managed networks include multiple web, database, mail, and load balancing servers. We’re generally able to add, replace, and do maintenance on hardware without impacting performance or needing scheduled downtime. We only host WordPress Multisite, and fine-tuned to support it, including Apache web servers with PHP, NGINX for load balancing, and MYSQL databases.
Customer SegregationWe use Docker containers with Ansible to isolate each WordPress install from each other, while still allowing each site to benefit from the scalability that comes with our infrastructure. Customers that have the need can include fully dedicated private cloud cluster for additional costs. Customer code base is separated in unique Bitbucket repositories.
File StorageAll images, documents, and other user files are uploaded securely to Amazon S3 so that they are able to be served at much faster speeds using Amazon’s vast cloud network.
Cache and Traffic SpikesAll text content on the public side is cached automatically so that no matter how many visitors your site gets, speeds stay fast. We handle billions of page views each year, and are confident we can handle the largest of any sudden traffic spikes.
SSL & HTTPSWe encourage enabling https/SSL protection for all logged in user activity. Customers can provide SSL certs or we can obtain certs via Let’s Encrypt.
Backups & Disaster RecoveryNetworks are hosted on a cluster of multiple web and database servers for built-in replication, load balancing and redundancy. Nightly database backups are encrypted and then stored with Amazon S3. Backups are kept for at least 7 days and no more than 30 days. Backups are verified and full restores are tested on a bi-weekly basis. Restore times depend on the size of the WordPress network and the cause of the disaster, but full backup recovery should take no more than 24 hours.
Performance MonitoringWe use a variety of tools to automatically monitor performance and reliability of the service, including Munin, Nagios, StatsD/Graphite, Pingdom, and New Relic. All services are set to send automated alerts to our support and systems teams, which are monitored and handled 24/7. These tools also provide us with a wealth of information and data so that our team can constantly work to improve performance and efficiency in our service.
General Security InformationThe security and reliability of our service is our number one priority. In addition to the general WordPress security features, we have staff who perform daily checks of industry security blogs, websites and newsletters to keep on top of any potential vulnerabilities that pertain to the systems we use or employ. We use ClamAV for all servers and TrendMicro and Norton for our desktops with regular updates as needed. We use WPScan for WordPress code and database monitoring. Any WordPress core, plugin, or theme security patches will be applied within 24 hours of release. See wordpress.org/about/security for details on the security of the WordPress core.
Employee PoliciesEvery CampusPress employee goes through background checks and an onboarding process that includes a trial period where access to customer servers and data is provided only when working directly under the supervision of another staff member. CampusPress staff only have access to systems that are directly required to complete the functions of their job. We use dual factor authentication for all critical systems and communications services, and automatically log all staff activity using an internal logging tool and Amazon Cloud Trail. All CampusPress staff (including contractors) undergo initial training to ensure proper understanding of all security related processes. Staff regularly attend industry conferences and otherwise stay informed of best practices and relevant trends. Staff agree, in writing, to all policies and procedures annually.
Security Breaches and Notifications PolicyShould any security related event occur, our policy is to alert our customers via email no later than 24 hours of our team becoming aware of the event. We will work closely with any customers affected to determine next steps such as end-user notifications, needed patches, and how to avoid any similar event in the future.
Privacy & DataPersonally Identifiable Information (PII) We only require a username and email address to log in and use the WordPress network. Customers may choose to also provide names. We do not collect, store, require, or transmit PII data related to health, financial institutions, mailing addresses, government ID numbers, etc. Only CampusPress staff have access to customer data. Our hosting partner (AWS) does not have logical access to WordPress networks, the database, or user data that we host. Should a customer request, we will completely destroy and delete all data and content from a given user.
Exports & Database DumpsShould a customer leave us, or should a local archive of user data be required, we can provide a complete export and database dump of a network. We will completely purge all customer data within three months of canceling service.
Change ManagementIn order to ensure the reliability of our service, we’ve implemented a change management policy that we follow for all updates, upgrades, and code changes. We perform all WordPress core, plugin and theme updates, general improvements, and server maintenance during a regularly scheduled weekly window. All changes are thoroughly tested by our developers and quality assurance team as follows:
- Tested fully in
localtesting environment by technicalteam.
- Automated and unit testing in multiple development environments.
- Manual testing by QA team in multiple development environments using all major browsers and operating systems, including mobile devices.
- Full deployment to
smallsubset of live networks and all development/test networks that willingly participate in betatesting program.
- Final manual code and performance review by technical team leadership.
- Full deployment to all customers during next regular ‘Primary Updates’ window (Tuesdays) and an update published to our change log alerting customers.
- Continuous monitoring by technical and support teams.
- For any significant changes that end users may notice, we’ll provide documentation and warning to Super Administrators well in advance.
Code Audits and GuidelinesWe have automatic and manual code reviews in place for all plugins and themes that are added to any site we host. All plugins and themes must adhere to the WordPress Coding Standards as well as a list of guidelines that we provide in our documentation section.
Bitbucket and Version ControlWe use Bitbucket for version control. Customers that have custom themes should initiate a pull request to alert our team of developers to initiate a code review. Depending on the queue and complexity of the theme (or edit), a review can take up to 24 hours (or more for complex themes).
Development EnvironmentsWe can set you up with a testing environment in which to upload themes or major changes to before moving to production. For individual sites, we have a clone tool, which can be used for testing out a new theme or adding new content, and then writing over the existing site with just a few clicks.
Service Level Agreements
Reliability and UptimeWe guarantee a 99.9% availability of service. For any month where greater than or equal to 99.9% availability is not obtained, a 5% credit of the total annual contract price will be applied to the account. This credit will be applied for the following contract renewal. Credit will not be applied if the reason for less than 99.9% availability is:
- a result of scheduled outages notified to the Client at a time agreed upon and completed outside of Client’s normal business hours.
- due to Client authored code, user-generated content, or changes to the Service by parties other than the Host.
- data center interruptions related to acts of God, natural disasters, or outside the control of the Host or the host’s hosting partner(s).
- outages or errors created by 3rd party service providers contracted by the Client (not contracted by the Host), such as Single Sign On providers and similar.