My Webserver Project

by: burt rosenberg
at: february 2021

Overview

The goals of this project is to exercise the student's skills in cloud computing, and to give an sense of the breath of skills the student will have by the conclusion of this course.

The activities,

  1. Launch an Ubuntu EC2 Instance.
  2. Edit the security group to all add http and https access in inbound rules.
  3. ssh into the instance.
  4. Update the packages index: "sudo apt-get update"
  5. Install build-essential, subversion and apache2.
  6. Locate your public IP and http://_that_address_ in a web browser. You should see the "It works!" page as shown in the image to the right. If not, find and fix the problem.
  7. Copy class/proj1 to your _username_/proj1, svn add and commit with message "initial commit"
  8. Replace /var/www/html/index.html with the provided index.html in the proj1 folder. You will need to sudo to make the copy, as the directory is not writeable by user ubuntu.
  9. Reload the browser and see the new index.html.
  10. Modify the web page to put your name and the date. (And any other modifications you like.)
  11. Find the macro IPADDR in the Makefile, and replace what follows the equal sign with the public IP address that you used in the browser.
  12. Run make to create the evidence.out file. Add and commit it.
  13. Copy the index.html file from /var/www/html/ back to your proj1.
  14. Run make to create the evidence.out file. Add and commit it and any other changes in proj1.
  15. Stop or terminate the EC2 instance.

But websites have names?

The IP address is what networking cares about, but most websites also have names. There is a Internet wide system called DNS (Domain Name Service) and answers queries for the IP address, given a name. It is a form of a database. For your website to have a name, you need to insert an entry into this database.

This is done in several steps. First you must own the name. That is done working trough a Registrar to put the database entry into a Registry. The organization ICANN (Internet Corporation for Assigned Names and Numbers) set things up this way to encourage market competition.

Once you own the name, you must find a server for the domain of you name, and have your name and IP address entered into their database. Now that server will respond to queries about the name, and return as the answer to the query the IP address.

According to class interest, we can walk through this process. But we will study DNS as a technology.

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.

author: burton rosenberg
created: 2 feb 2021
update: 2 feb 2021