Every time you create a server, whether in the cloud or in your data center, configure it to disable abuse and enable your legitimate work. You might need to do some research to identify the specific steps required to secure your configuration, but the steps should be similar to those shown in Basic Cloud Server Security, which demonstrates the process of securing a cloud server running the Ubuntu operating system. For that server, the steps are as follows:
Edit the SSH known_hosts file and remove entries that point to your server’s IP address.
Change your root password.
Add an admin user.
Give the admin user sudo privileges.
Establish a public/private key.
Set permissions for the key.
Disable unused ports.
Establish a firewall.
Set rules for the firewall.
Create a script to activate the firewall after every restart.
Limiting network access to your configuration, so that only legitimate traffic can use pre-defined ports, is a very effective way of improving overall security. A firewall is the key tool for this purpose. Methods not based on firewalls can require you to disable or reassign connections that are required for normal operation. Before pursuing any of those methods, consider their implications as described at:
Because security configuration can be time-consuming, it’s a good idea to save a copy of a clean, securely-configured cloud server that works well for your purpose. You can use Cloud Images to maintain a consistent starting point for future servers that you create.
Security-related offerings from Rackspace partners are listed in the Rackspace Marketplace. You might find one or more of these that directly addresses your specific security needs.