WordPress Security Basics

wordpress_logo

WordPress is one of the most widely used blogging platforms in the world; thus, it is also a a popular target for hackers! While keeping your installation up to date can help prevent a lot of headaches, there are also some other minor tweaks that I feel can help keep your blog safe.  The following are not the only tweaks, nor are they the best.  It’s a good starting place to help secure your WordPress installation.  Feel free to leave your suggestions as comments to this post.

1.  Use strong passwords.  This goes without saying.  Do not use any type of dictionary password.  Try and make your passwords as long as possible and include both upper and lowercase characters. Try to include special characters to make your password even harder to guess.

Install WordPress on an AWS Instance

wordpress_logo

Congrats on setting up your instance and connecting to it via SSH. Next, we are going to install WordPress on our Ubuntu Instance via the command line. Be sure to enter the commands exactly as shown! Even if you’ve never used a Linux box before, this guide should get you up and running in no time.

Connect to your instance via PuTTY.

The Essentials
Determine what you want to install on your instance.  At this point, I will be installing Apache2, mySQL/PHP, along with Rails, Django, and Python. For WordPress, you really only need Apache2, and mySQL/PHP.

Required: sudo apt-get update
Required: sudo apt-get install apache2 mysql-server libapache2-mod-auth-mysql

Connect to Your AWS EC2 Instance with Putty

amazon-logo

If you’ve been following the RazibRahman.com blog, you now know how to Launch an Instance on Amazon Web Services EC2.  Now it’s time to connect to your Instance to really get cooking.

There are ton’s of SSH clients available and you should experiment with all the programs out there to see what you like.  Personally, I am a fan of PuTTY which you can download here.  Note: Be sure to download PuTTYgen.

To begin with, we are going to need to generate our RSA Private Key.  Open up PuTTY Key Generator or PuTTYgen.exe.  Now click on “Conversions” and then click on “Import Key.”  Browse to, and select the *.pem key file that you downloaded from AWS earlier.  Finally, click on “Save private key.”  You will get a warning box that asks, “are you sure you want to save this key without a passphrase to protect it?”

Launch an Instance on Amazon Web Services EC2

amazon-logo

In my next few blog posts, I’m going to show you how to use Amazon Web Services to get your WordPress blog up and running securely.

For the past few years, I used MediaTemple as my hosting provider and while they were great in the beginning (~2008), things quickly changed for the worse.   In my experience, their grid service was down at least a few hours every month, and their mySQL Container was extremely slow and inefficient.  At $20/month for the grid service, along with an extra $20/month for the mySQL Container, it just wasn’t worth the money.  Yes, you can get a dedicated virtual server at $50/month, but with Amazon announcing their free usage tier for a year, it was a deal that I could not pass up.

Here is what AWS offers with their Free Usage Tier:

Powered by WordPress | Designed by: SharePoint | Thanks to Virtual Server, Business Email Hosting and Project Server