HW07: WordPress due Sat 14 Oct 23:59

\begin{purpose}
This assignment provides practice in installing and configuring...
...cise that explores manipulation of DNS entries from the
AWS CLI.
\end{purpose}

Documenting Your Work

Create a text file named wordpress.txt that lists all steps you went through to accomplish this homework assignment. The purpose of the document is to produce a list of steps and specific commands that you or someoneone else can follow in the future to get a WordPress site setup easily.

Install Wordpress

Peform these steps on your server:
  1. For this assignment you will use the virtual server named blog.yourdomain you you set up previously.
  2. Create a MySQL database and user to house your Wordpress blog.
  3. Download and install an instance of WordPress (https://wordpress.org/latest.zip).
  4. Configure Wordpress so that its wp-config.php file is out of the web space.
  5. Enable direct updates.
  6. Establish admin user / password for the site.
  7. Install and activate the custom theme you chose in the prelab assignment.
  8. Set up a blog with a topic of your choosing. Create a single post.
  9. Remove pre-existing blogs/pages.
  10. Visit the admin portion of your new site and follow the login instructions.
  11. Once you have set up an admin account for yourself, go to the Users section of the dashboard and create an account for a new admin user named sergeant with an email address of tsergeant@hsutx.edu.

Learn AWS CLI for Route 53

You can modify DNS entries using the AWS CLI rather than logging in manually. To do so you'll need to use the IAM service to create a user who has permissions to fully work with Route53 services. (NOTE: I had to do some fiddling to get this user set up).

IMPORTANT: Even though you already have DNS entries setup for the blog site, do not skip this exercise because you will need it next week. You can practice using other subdomains.

Once you get a properly functioning IAM role established be sure to document the steps you took.

Some sample CLI commands:

aws route53 list-hosted-zones –profile=xyz
List hosted zones including their ids.
aws route53 list-resource-record-sets –hosted-zone-id=abc –profile=xyz
List record set associated with a given hosted zone.
aws route53 change-resource-record-sets –hosted-zone-id=abc –profile=xyz –change-batch file://dns.json
Executes commands in dns.json. The file may look something like this:
{
  "Changes": [
    {
      "Action": "CREATE",
      "ResourceRecordSet": {
        "Name": "cool.yourdomain",
        "Type": "A",
        "TTL": 3600,
        "ResourceRecords": [
          {
            "Value": "your ip #"
          }
        ]
      }
    }
  ]
}

In your wordpress.txt file list the specific commands needed to change Route53 settings. Be sure to show the .json document you created to create a new DNS record along with the output of listing resource record sets that show the new entry.