##Server information
- IP address: 52.36.112.42
- SSH port: 2200
- Website URL: http://ec2-52-36-112-42.us-west-2.compute.amazonaws.com/login/
##Added Software
The Python package manager, 'Pip', was installed in order to download all the python modules necessary to run the web app. The modules downloaded include Flask, HTTPLib2, and Requests, which were used to create the server side application; SQLAlchemy, used to access the database form the web app; and Oauth2 and SeaSRF, used to provide user authentication.
In addition to Python packages, several Ubuntu packages where installed. PostgreSQL 9.3 was installed and was used to create the web app's database. Apache 2.4 was installed and is used as the application's webserver. Fail2ban has been installed in order to ban IP addresses of computers that have made multiple attempts to secured shell into the server. Finally, Glance was installed in order to provide real time monitoring of system activity.
##Configuration
Users: A new user, 'grader,' has been added and has been granted super-user permission. Also, the root user's ability to SSH into the VM has been revoked.
**Ports and firewall: ** the SSH port has been changed to 2200. This port, along with ports 80 and 123 are allowed as incoming signals by the firewall. All other ports do not take incoming signals.
PostgreSQL: A new user, 'catalog', has been added to the Virtual Machine; a corresponding PostgreSQL role with the same name has also been added. The 'catalog' role has been granted only the permission to log into the 'ninja' database used by the web app, and has been granted the privileges to create, select, insert, and delete form the 'ninja' database. The 'catalog' role is used by the web app to access the database.
Apache2: The error logs have been simplified to improve readability.
Fail2Ban: The default settings have been altered to allow 9 attempts to SSH within 10 minutes. The time a user will be banned if they exceed the 9 try limit has been extended to 600,000,000 seconds.