Virtual Linux Network Infrastructure Assignment: Dublin City College (DCC) Case Study for Proof of Concept (PoC)
University | CCT College Dublin (CCT) |
Subject | Operating Systems |
Module Learning Outcomes Assessed:
- MLO 1 – Identify types of clients and server operating systems and the roles and services they provide (Linked to PLO 1 (Stage 1/2 SLO 1))
- MLO 2 – Utilise client and server OS configuration tools (Linked to PLO 2 (Stage 1/2 SLO 2))
- MLO 3 – Understand and Control access to network resources and services, Troubleshoot basic configuration and resource access problems (Linked to PLO 4 (Stage 1/2 SLO 4))
- MLO 5 – Configure and diagnose basic network connectivity (Linked to PLO 1 (Stage 1/2 SLO 1))
Assignment Introduction
Scenario & Proof of Concept overview:
You have started a new role in an ICT consultancy company named ‘Consult & Connect Ltd’. The company provides networking consultancy services for companies located in Ireland.
Your first proof of concept project is to create a virtualized Linux network infrastructure based on a new third level college’s network – the name of the college is Dublin City College (DCC). DCC have instructed you to create a virtualized environment whereby they can achieve a sense of how their new network & services will behave in a Linux environment.
Assignment overview
This assignment will help assess your understanding of virtualized network services such as SSH and other network services. Remember you are a consultant, so you need to justify your work to DCC (in certain sections). These activities will require some research and troubleshooting so be prepared for this!
Overview of requirements
The proof of concept is divided into a number of parts:
- Use VirtualBox software to build a small client-server network
- One Ubuntu Server 24.04 acting as a web server and one Ubuntu 24.04 Server 24.04 acting as web client
- Install the Apache web server on the Ubuntu Server – modify the Apache page to create a Dublin City College ‘Under Construction’ webpage
- Install a Lynx browser to view the Dublin City College web page
- Use Wireshark to monitor traffic
- Rename the hostname(s) of both VMs as specified below
- Establish permanent IP address configuration using Netplan or similar tool
- Install an SSH client on your host OS to act as an SSH client to login to the Ubuntu Server utilising SSH over the virtual network
- Firewall configuration as specified below
- Further research tasks as described by DCC below
Are You Searching Answer of this Question? Request Ireland Writers to Write a plagiarism Free Copy for You.
Statement Regarding Use of Artificial Intelligence
Use of AI is Prohibited for this assignment
- The use of generative AI tools (such as ChatGPT, DALL-E, etc.) is not permitted in this assignment.
- Any assignment that is found to have used generative AI tools in an unauthorised way will be subject to college disciplinary procedures as outlined in the QA Manual.
- When in doubt about permitted usage, please ask for clarification.
Specific Requirements
Using virtualization software, install the Linux Server Operating System into two virtual machines using the Ubuntu Server 24.04 ISO disk image.
You will need to have two network adapters on each of the Linux computers used for this project so be sure to include them both when installing the OS.
Install both VMs with two NICs, Adapter 1 should be NAT and Adapter 2 should use the Host-Only adapter setting.
Note that adapter 1 is enp0s3, adapter 2 is enp0s8
Note before starting creating your report: You can perform the tasks in this assignment in any order that you want. However, when you create your report each task must be listed in the correct order in your report and each section should be properly labelled. In other words, you should have the Part 1, 2, 3, 4 and Part 5 items all placed in the correct sequence in your report, followed by a list of references.
You are not making a tutorial; you are providing evidence of work you have accomplished.
PART 1: Virtual Linux Network and Web server (Initial setup on this page)
You have been contracted by Dublin City College (DCC) to install a prototype Linux Client-Server Web environment to demonstrate basic connectivity between the Linux Server & Client VMs. Also, you will need to demonstrate remote connectivity using an SSH terminal and configure basic security in the Linux environment.
ubuntuserver (the Web server) will host a simple DCC web page that you will create.
ubuntuclient (the Web client) will test that the Webserver by using a simple text-based web browser or normal browser to view the DCC web page. You will also access this web page using your host OS (either Windows or MacOS or Linux).
Name the first computer ubuntuserver and name the second computer ubuntuclient.
Once the OS are installed you need to configure the network adaptors and change the network settings so that the two machines have network connectivity. Note the adapters refer to VirtualBox network adapters.
The connectivity must include the ability of each computer to PING the other computer and for each computer to have Internet connectivity. For the host-only adapter, initially use temporary network configurations, you can use the ifconfig command. The ifconfig command allows you to configure settings which take effect immediately, however they are not persistent and will be lost after a reboot (later on you will use Netplan to make the Host-Only addresses permanent).
ubuntuserver IP addressing:
[Adapter1 should be on NAT and Adapter2 should be on Host-only]
ubuntuclient IP addressing:
[Adapter1 should be on NAT and adapter2 should be on Host-only]
Below are specific instructions for the tasks that Dublin City College needs you to configure.
Part 1 A: Virtual Linux Network and Web server
You will provide evidence that you have completed the configuration tasks by creating a report that uses screenshots (print-screens). There should be clear labels on each screenshot and clear labels for each report section.
1. Updates
Obtain Linux updates – Update and upgrade the system using the relevant commands.
2. Connectivity
Test and demonstrate network connectivity between both systems by pinging each internal IP address (192.168.56.x). In other words, your two Linux Servers should be able to PING each other. The Host Only network should allow each VM to be able to PING your host computer. Also, your host computer should be able to PING each of the Linux VMs. You should also be able to PING sites such as Google.
3. Web server
Once the two VMs are installed, install the Apache web hosting software on the ubuntuserver computer, then install the Lynx text-based browser onto ubuntuclient.
Your supervisor at DCC needs you to edit the default Apache web page and modify it so that it displays an ‘Dublin City College – Website Under Construction’ page along with your name and student number. The page should no longer display any of the text information referring to Apache. Use a Linux text editor such as nano to edit the /var/www/html/index.html file. This file contains the default Apache web server test page.
4. Web client
Once you have installed Apache on ubuntuserver, test access to the ‘DCC Website Under Construction’ web page by opening the Lynx browser on the ubuntuclient and accessing the web page that is hosted on the Ubuntu server.
5. Web client
Using your Windows or Mac host operating system, test access to ‘DCC Under Construction’ web page by opening a web browser on your host PC and accessing the ‘DCC under construction’ web page which is hosted on ubuntuserver.
6. Network traffic
From your host computer (Windows or Apple) PING the IP address of ubuntuserver. While Wireshark is running on your host operating system, use PING to verify connectivity between the two servers, then identify the ICMP traffic between your browser on your host operating system and the ubuntuserver webserver. For evidence, please just include a screen shot that with Wireshark showing the ICMP traffic between the Linux VM and your host computer (I do not need the saved Wireshark capture file).
7. Network traffic
From your host computer, put the IP address of ubuntuserver into Chrome browser (or whatever browser you use on your host PC) to show the DCC Website. Utilizing Wireshark on your host operating system, ensure to take a print screen of the packet that shows the TCP/IP 3-way handshake that occurs while the HTTP contents (webpage) are transferred from the ubuntuserver server to client (your host operating system).
Part 1B: Uploading files to the Webserver with Secure FTP using FileZilla
1. Web dev
Use your Web Dev skills from your programming classes to create a web page for Dublin City College. It should say the words ‘Dublin City College website Under Construction’ and have at least one image along with your name and student number. Your webpage should look attractive.
2. Secure FTP file transfer
Download and install the FileZilla program onto your host PC. Use FileZilla to upload your Dublin City College website up to your Linux Web server.
Get Solution of this Assessment. Hire Experts to solve this assignment for you Before Deadline.
Part 1C: Hostname Management – Renaming the linux servers:
1. Hostname change
DCC needs you to rename ubuntuserver. Use a text editor such as nano to modify the hostname and the hosts configuration files. Give this server the new name web-server-your last three digits of your student number. For example, if my student number were 2025123 I would rename the hostname of my ubuntuserver to web-server-123
You also need to rename ubuntuclient. Give it a new name such as web-client-123
Note: the 123 is last 3 digits again of your student number.
Edit the necessary configuration file (or files) to make these changes permanent. Use screenshots to show the ubuntu servers configured and re-named.
2. Hostname explanation
Explain the purpose of the hostname file. Discuss why using a text editor such as nano to modify configuration files is such an important part of using Linux.
Research task – Explain what the hosts file is. Discuss where the use of the hosts file came from and why it was important in the early days of the Internet.
PART 2: Using SSH for secure transfer of data between the two servers
1. SSH client
Install Putty on your Windows host computer (Mac computers can use the Mac OSX terminal).
2. SSH Server
Install the OpenSSH Server software on the Web Server to enable inbound SSH connections. Show a print screen of your host operating system (using the SSH terminal through Putty (Windows) or the Mac OSX Terminal) logging into the Web Server using SSH remotely.
3. Network traffic
Utilizing Wireshark on your host operating system, show how the communication is encrypted between your host operating system and the Linux web server that has your website. Ensure to take a print screen of packets that shows the SSH encrypted traffic.
PART 3: Security configuration #1 – UFW Firewall:
The default firewall configuration tool for Ubuntu is Uncomplicated Firewall (ufw) which is a utility that provides a user-friendly way to create an IPv4 host-based firewall. ufw is initially disabled by default. In this part your will configure the uncomplicated firewall to control the network traffic and demonstrate the uncomplicated firewall doing its job.
You will add print-screens with labels as evidence of completing these tasks.
1. HTTP traffic control
Use the UFW to block only the web traffic and provide evidence to demonstrate that HTTP traffic is being blocked by the Uncomplicated Firewall. Then allow the web traffic through the firewall and show that the HTTP traffic is now being permitted between these the two servers. Use the web browser from your host machine and show print screens of HTTP traffic being permitted and blocked.
2. SSH traffic control
Similar to what you have done with HTTP, use Putty from your host machine to view the network traffic and show print screens of the SSH traffic being permitted when the UFW is configured to allow SSH and then when SSH is blocked and the SSH port is configured to deny the SSH traffic.
PART 4: The SAMBA file server
Configure the Samba Server service in Ubuntu Linux. One of the most common ways to allow Ubuntu and Windows computers to interact with each other is to configure Samba as a File Server.
1. Samba setup
Your supervisor at ‘Consult & Connect Ltd’ would like to see a demonstration of this hosted on an Ubuntu Linux VM instance on Virtual Box. Install the SAMBA server on the Ubuntu Linux webserver, give it the name samba-folder, and use a text editor such as nano to create a simple text file named my-samba-file.txt
Take print screens to demonstrate that the Samba server is configured to share files with any client on the network. Set up the Samba share so that the user is prompted for a password and provide evidence of your host machine accessing a file from the server.
Also, demonstrate that you can add a new file to the samba-share folder from your host computer. You should also be able to modify the my-samba-file.txt document that you placed into the shared samba-folder. You will need to modify the permissions of the samba-share folder to allow any files to be added to the share.
In your report fully explain what SAMBA is and provide examples of how it is could be used to facilitate communication between different Operating Systems such as Linux, Windows, and Apple Mac OS. In other words, explain why SAMBA is useful in a network environment that that has multiple Operating Systems.
Stuck in Completing this Assignment and feeling stressed ? Take our Private Writing Services
Network traffic
Have Wireshark running on your host operating system (Windows or Mac) and connect to the Linux Web Server that is running the Samba service. Identify the SMB traffic between your browser on your host operating system as the web client retrieves the text document from the Webserver. For evidence, please just include a screen shot that with Wireshark showing the SMB traffic.
PART 5: Docker Container running on top of Linux
In Part 1-9 above you have created a ‘Dublin City College under construction’ web page on the Apace Web Server. Your supervisor at ICT consultancy company has heard that you are working with containers which are utilizing the Ubuntu Linux OS. She would like to see the DCC under construction’ web page hosted inside a container. Create a container image that has the DCC under construction’ web page and use the web browser in your Windows or Mac host computer to demonstrate that the DCC web page is running on the container. Be sure show all configuration steps that you used to accomplish this task.
PART 6: RESEARCH AND CHALLENGE ACTIVITIES
Below are research and challenge tasks, and it is recommended that you only attempt these when all of the above tasks are complete. This is an opportunity for you to do some research about Linux and learn a few new things. In the real-world using Linux requires the user to constantly look things up!
For Part 6 be sure to document this research and provide references for each of the sources that you used to find this information. You should use the Harvard system of referencing. A guide to Harvard Referencing is posted on Moodle. To obtain full credit for these challenge items, show all configuration steps that you used. If you know how to perform these configurations from your previous experience, state this in your report.
Part 6A: Security configuration #2 – iptables:
In Part 3 above you used the Uncomplicated Firewall (UFW) for securing the HTTP and SSH traffic entering and exiting the server. Before UFW was created Linux administrators used iptables for their firewall configurations. You supervisor at ‘Consult & Connect Ltd’ is ‘old-school’ and would like you do demonstrate the use of iptables for securing the HTTP and SSH traffic entering and exiting the server.
Use iptables firewall rules and demonstrate that you can block the SSH traffic and then allow the SSH traffic to flow on the network. Also, use iptables firewall rules and demonstrate that you can block the HTTP traffic from flowing on the network and then allow the SSH traffic to flow through the firewall.
Part 6B: IP Address Management – use nano to edit the Netplan file.
The IP addresses you configured for the two servers are ephemeral (temporary). Configure ubuntuserver as shown here.
ubuntuserver IP: 192.168.56.100 /24
Edit the necessary Netplan configuration file (or files) to make these changes permanent. Use PING to demonstrate that these are the correct addresses and show that you have connectivity between these two Linux VMs. Use of snapshots is recommended here.
Part 6C: IP Address Management with DHCP
The Linux server will keep the static IP address that you assigned previously but the Linux client needs to receive it’s IP address dynamically from a DHCP server.
You will need to install and configure a DHCP server to allocate the client an address.
- Configure the DHCP server following settings on the Ubuntu Server:
- We will be using the following subnet: 192.168.56.x netmask 255.255.255.0
- The DHCP address range should go from 192.168.56.150 – 192.168.56.200
- Note: If your configuration needs a default gateway address and a DNS address 192.168.56.1 would be the addresses to use for both of them.
- Demonstrate that the Ubuntu Web client will then need to receive the first available address in the DHCP pool: IP = 192.168.56.150 / Subnet Mask = 255.255.255.0
Network traffic
Have Wireshark running on your host operating system (Windows or Mac) and connect to the Linux Web Server. Identify the DHCP traffic between your browser on your host operating system as the web client receives it’s IP address from the Webserver. For evidence, please just include a screen shot that with Wireshark showing the DHCP traffic.
Part 6D: Linux challenge task:
Install the V-Box Guest Additions onto the ubuntuserver VM. When you created the Windows Server VMs you added in the Virtual Box guest additions. Your supervisor at ICT Consultancy Company needs to be able to access the Virtual Box Guest Additions virtual CD drive on the ubuntuserver VM and access the files that are on that Guest Additions virtual disc drive so that you can install these Guest Additions. Provide a screenshot that shows that you can access the files on the Guest Additions virtual CD ROM.
Are You Searching Answer of this Question? Request Ireland Writers to Write a plagiarism Free Copy for You.
Part 6E: Forgotten password:
One of your associates is using Oracle Virtual Box and has forgotten the password to the virtual machines. Opps! Now this is embarrassing! What can be done about this? Find a method for him to enter the Virtual Machine so that they can be used without having to create a new . The method should work for either a Windows or Linux V-Box VM instance and you should demonstrate that it works on both of these operating systems.
- Ensure to place the relevant print screens with the correct question number.
- Marks will be lost if report is not presented in a professional manner.
- One final task: Please take a moment to reflect on what you have learned from carrying out the tasks in this assignment.
You are reminded that College rules on plagiarism will apply to this assignment.
Check your spelling and grammar and ensure that the file reads as a properly constructed document. As noted above, be sure to include references for any research that was required.
Marking Scheme Summary
Task | Marks |
---|---|
Part 1A: Virtual Linux Network and Web server | 0 to 10 |
Part 1B: Uploading files to the Webserver | 0 to 10 |
Part 1C: Hostname Management | 0 to 5 |
Part 2: Using SSH for secure transfer of data | 0 to 5 |
Part 3: Security configuration #1: ufw | 0 to 10 |
Part 4: The SAMBA file server | 0 to 10 |
Part 5: Docker Container running on top of Linux | 0 to 10 |
Part 6: RESEARCH AND CHALLENGE ACTIVITIES | 0 to 40 |
TOTAL | 0 to 100 |