Open main menu

CDOT Wiki β

Changes

OPS235 Assignment 2

178 bytes removed, 11:12, 10 April 2022
Introduction and Purpose
= OPS235 Assignment 2 Introduction and Purpose =
'''Weight:''' 515% of the overall grade
'''Due Date:''' Week 12See blackboard
'''Submission:''' You will be submitting your completed work through a series of screenshots on Blackboard. (See below.)
In this assignment, you will demonstrate the skills you have learned to this point by configuring two services: a '''database server''' and a '''web server'''. You will install and use a database-backed web application, '''Wordpress''', to show that these services have been installed properly. You will also configure your '''firewall''' to further enhance the security of your computer system.
{{Admon/important|It is YOUR responsibility to Backup your centos3 VM for this Assignment!|You are required to frequently backup your VM prior to exiting a work session during '''NOTE: Do this assignment. Your instructor will NOT accept inside the fact that your hard disk crashed and lost all of your work. If you properly backed up your VM images and xml configuration files to a USB, then you can purchase a new hard-disk or wipe and recreate your hard disk and restore your VMscentos3 virtual machine.}}<br>'''
== Introduction {{Admon/important|It is YOUR responsibility to backup your centos3 VM for this assignment!|You are required to frequently backup your VM prior to exiting a work session during this assignment. Your instructor will NOT accept the fact that your hard disk crashed and Purpose ==lost all of your work. If you properly backed up your VM images and xml configuration files to a USB, then you can purchase a new hard-disk or wipe and recreate your hard disk and restore your VMs.}}
In this assignment, you will demonstrate the skills you have learned to this point by configuring two services: a '''database server''' and a '''web server'''. You will install and use a database-backed web application, '''Wordpress''', to show that these services have been installed properly. You will also configure the '''SELinux''' security system as well as the '''iptables firewall''' to further enhance the security of your computer system. '''NOTE: Do this assignment inside the centos3 virtual machine. ''' == Installing Packages==
<u>Install these packages using ''yum''</u>
:*Download a "zipped tar-ball" from a website (google-search), decompress, and compile
== Configuring Apache ==
# Start the httpd service using '''systemctl'''.
# If you can't connect to it from outside the machine - perhaps your firewall is blocking access to the web server.
== Configuring MySQL ==
# Start the MySQL service (mysqld or mariadb) using '''systemctl'''.
#* If you do not see any messages, research how you can secure the MySQL installation and set the MySQL-root password.
#* Read those messages carefully, you are setting up a production MySQL server and there shouldn't be any "test" databases or anonymous users or users without a password.
# Set your MySQL root password to your Seneca e-mail username (without the ''@senecacollegemyseneca.ca '' part).
# This following part is challenging so take your time and read the instructions to make sure you do it properly, we have to set up a dedicated user and database for wordpress:
## '''NOTE: If you decide to download the wordpress package during this section, please use the 5.0.x version here (use wget): https://wordpress.org/wordpress-5.0.7.tar.gz'''
## Your hostname is localhost
== Installing and Configuring Wordpress ==
Wordpress (like most web applications) is not available in the Fedora repositories, it must be downloaded and installed manually.
# Check your work so far by pointing your web browser to http://centos3/wordpress/ where you will get an error starting with "There doesn't seem to be a wp-config.php file"
# Copy the wp-config-sample.php file to wp-config.php and edit the new file:
#* Change the DB_NAME, DB_USER, DB_PASSWORD to the appropriate values.'''(Do not use the root account for your database connection! Marks will be deducted.)'''
# Now go back to http://centos3/wordpress/ - you should see a Wordpress Welcome/Setup page.
#* Set the title to Your Name's Blog. For example for me it would be "OPS235 Professor's Blog"
#* Click "Install Wordpress", you should see a "Success!" message.
== Write-up ==
Write a blog post on your new blog explaining:
* What problems (minor and major) you ran into during the installation and how you solved them.
Write a second post on your blog explainingincluding for example:
* Are you ready for the exam or not.
* List the material you are strong on.
''' Make your posts look professional. That means use good english, headings, bullet or numbered lists, etc.
== Configuring iptables ==Now that you've set up your blog, you must secure your firewall. The purpose of this section is to lock down your rules as much as possible.# You must be using iptables (firewalld should be uninstalled).# Your INPUT chain's default policy must be set to DROP.# Create INPUT chain exceptions (rules) to allow connections to your blog.# Other than the specific ports needed to access your blog, the only other allowed exception is for SSH.# Tip: Your OUTPUT chain should allow ''all'' traffic. (You can leave it at it's default) == Submitting Your Assignment ==
'''Due date:''' Check with your professor for the due dates on this assignment and how they choose to mark it. Assignments submitted after the due date will receive a grade of 0, but must still be completed satisfactorily in order to pass the course.
=== Online Submission Requirements ===
All screenshots must be full Open one or more terminals in c7host desktop captures, SSH to centos3 from those terminals, and contain no errorsscreenshot the following:* '''asg2-01-rpms.png''': List of additional RPMs installed for the assignment* '''asg2-02-apache. The fewer total images, png''': Status of the ''httpd'' service* '''asg2-03-mysql1.png''': Status of the better''mysql'' service* '''asg2-04-mysql2. Submit through Blackboardpng''': MySQL output of the chained command: '''<code>show databases; use mysql; select User, unless told otherwise by your professorPassword from user; use myblog; show tables;</code>'''* '''asg2-05-wordpress.png''': Output of command: '''<code>ls -la /var/www/html/wordpress/</code>'''* '''asg2-06-wpconfig.png''': Output of command: '''<code>head -30 /var/www/html/wordpress/wp-config.php</code>'''* '''asg2-07-firefox.png''': Open a Firefox window to: '''http://centos3/wordpress/'''* '''asg2-08-iptables.png''': Output of command: '''<code>iptables -L -vn --line-numbers</code>'''* '''asg2-09-blogpost1.png''': Your first blog post in Firefox* '''asg2-10-blogpost2.png''': Your second blog post in Firefox
Open one or more terminals in c7host, SSH to centos3 from those terminals, and screenshot the following:* List of additional RPMs installed for the assignment* Status of the Create a tarball named ''mysql'asg2.tar.gz' service* Status of the ''httpd'' service* MySQL output of containing all the chained command: '''<code>show databases; use mysql; select User,Password from user; use myblog; show tables;</code>'''* Output of command: '''<code>ls -la /var/www/html/wordpress/</code>'''* Output of command: '''<code>head -30 /var/www/html/wordpress/wp-configimages above and submit it on Blackboard.php</code>'''* Output of command: '''<code>iptables -L -vn --line-numbers</code>'''* Open a Firefox window to: '''http://centos3/wordpress/'''
=== Rubric ===
{| class="wikitable" border="1"
|-
| Wordpress showing in Firefox || 1 ||
|-
| Blog accessed using local hostname resolution || 2 ||
|-
| iptables rules configured correctly || 2 ||
|-
| Blog accessed using local hostname resolution First blog post || 2 1 ||
|-
| First Second blog post || 3 1 ||
|-
| Second blog post Submitted correctly || 3 4 ||
|-
| '''Total''' || '''20 ''' ||
|}
[[Category:OPS235]]
[[Category:Summer 2020]]
[[Category:Digital Classroom]]