"

7 Create a Linux Server

Jacob Christensen and Mathew J. Heath Van Horn, PhD

The Linux operating system has been increasing in popularity for many reasons. Most Linux platforms are free and open-source with very active development communities. Linux is also very reliable in that it often does not require reboots when something goes wrong. Furthermore, Linux is very customizable so only the features that are required are installed. A bare-bones Linux distribution can run on as little as 58MB of RAM! Finally, most applications on Linux are free and open-source.

Used with permission by the artist – Romana A. Heath Van Horn

Many people are reluctant to use Linux because it generally uses a command line interface (CLI) instead of a graphical user interface (GUI) like Windows or Apple. However, all those easy-to-use images require a lot of RAM and CPU power, so using CLI allows the operating system to focus on the essentials. We use Linux in the GNS3 environment because it requires very little in the way of hardware resources. This allows us to build complex enterprise networks without overloading our hosting machine. This lab will help you download, install, and configure a Ubuntu Linux Server for use in a GNS3 environment.

Learning Objectives

  • Successfully download, install, and run Ubuntu Server in a GNS3 environment
  • Optional installs for later labs
      • Phase II – DHCP Server – KIA
      • Phase III – DNS Server – BIND9
      • Phase IV – Text-Based Web Browser – w3m
      • Phase V – GUI – LXDE Desktop
      • Phase VI – Web Hosting Service – Apache2

Prerequisites

Deliverables

  • None – this is a preparatory lab that supports other labs in this book

Resources

Contributors and Testers

  • TBD

Phase I – Download and Installation

Installing a Linux Server is pretty straightforward. We will use the Ubuntu distribution of Linux due to its extensive documentation and support structure. However, learners will find that other Linux distributions follow similar processes prescribed here.

Furthermore, various tools on the Ubuntu server will be used in part 2 of this book. It is highly recommended that you install all optional tools, as you may need them later.

If you have limited PC resources, we recommend skipping Phase V (installing LXDE Desktop) and make use of the CLI interface instead.

  1. Download Ubuntu Server from https://ubuntu.com/download/server
  2. Start Oracle Virtual Box Manager
  3. Click on New

    Picture of commands
    Figure 1 – Create a new VM
    1. Pick a name, for this example, we use something clever like “Ubuntu Server”
    2. Use the dropdown menu to select the Ubuntu Server ISO that you downloaded
    3. Click Skip Unattended Installation IMPORTANT!
    4. Click Next
    5. You can leave the hardware on its defaults –> click next
      Picture of commands
      Figure 2 – VM resource settings

      NOTE: If you plan to install the GUI interface, you will need at least 50 GB of hard disk storage in the next step.

    6. Leave the default Virtual Hard Disk settings –> click next
      Picture of commands
      Figure 3 – Hard disk settings
    7. Review the summary and click on Finish
  4. Start the Ubuntu Server VM
  5. Use the arrow keys to Install Ubuntu Server
    Picture of commands
    Figure 4 – Install Ubuntu Server
  6. Use the arrow keys to select your language and your keyboard
    Picture of commands
    Figure 5 – Select your language
  7. Use the arrow keys to select Ubuntu Server and press done
    Picture of commands
    Figure 6 – Ubuntu Server
  8. Accept the default network connections and select Done
    Picture of commands
    Figure 7 – Accept default network connections
  9. Enter a proxy address, if you need one (if you don’t know, then you don’t need one), then select Done
    Picture of commands
    Figure 8 – Proxy address if needed
  10. Enter an alternative Mirror if you know you need one; otherwise, just select Done
    Picture of commands
    Figure 9 – Alternative mirror if needed
  11. Use the default storage configurations and select Done for both screens
    Picture of commands
    Figure 10 – Use the default storage configurations
  12. Confirm the action and select Continue
    Picture of commands
    Figure 11 – Confirm and continue
    1. For the profile information, the following is recommended
      Picture of commands
      Figure 12 – Enter profile information

      Your Name: student
      Your Servers Name: ubuntu_server
      Pick a username: student
      Chose a password: Security1

  13. There is no need to update to Ubuntu Pro, so skip it for now and continue
    Picture of commands
    Figure 13 – Skip updating to pro
  14. Select Install OpenSSH Server and continue
    Picture of commands
    Figure 14 – Install OpenSSH server
  15. No snaps are needed – select done

    Picture of commands
    Figure 15 – No snaps needed
  16. Allow the installation and update to complete, then select Reboot Now

    Picture of commands
    Figure 16 – Reboot now
  17. You might have to hit <enter> a couple of times, depending on the way your VirtualBox is configured
  18. Log in using the credentials you created earlier

    NOTE: If you are new to Linux, please note that the password cursor does not move. This is a security feature that masks the number of characters in the password. Anyone who shoulder surfs can accelerate their password brute force efforts by knowing the length of the password.

Phase II – Install DHCP Server – Kea (Optional)

These are the instructions for installing Kea as the DHCP server, as it replaces isc-dhcp, which is no longer supported.

  1. At the terminal prompt, type

    sudo apt install kea

  2. On the Kea password screen, select ‘configured_password’
    Select KEA password option
    Phase II – Figure 1 – Select the kea password
  3. For the password, use one of your own or use the book’s default Security1
  4. Kea can be configured by typing

    sudo vi /etc/kea/kea-dhcp4.conf

  5. The instructions to configure Kea are included in the file
  6. You can also use this guide to configure Kea (https://www.techtutorials.tv/sections/linux/how-to-install-and-configure-kea-dhcp-server/)
  7. Use Chapter 6 to add the Ubuntu Server to the GNS3 Working Environment

Phase III – Install DNS Server – BIND9

Berkley Internet Name Domain (BIND) is the most popular software suite for DNS implementation on Linux systems.
  1. Install software and additional utilities

    sudo apt install -y bind9 dnsutils bind9-utils

  2. The following commands will be used in later chapters:
    1. Modify the configuration file

      sudo nano /etc/bind/named.conf.options

    2. Configure master zone declarations

      sudo nano /etc/bind/named.conf.local

    3. Start DNS daemon

      sudo systemctl start named

    4. To restart

      sudo systemctl restart named

    5. To check status
      sudo systemctl status named

 

Phase IV – Install a Text-Based Web Browser (Optional)

Occasionally, you may want to visit the web from an Ubuntu Server that does not have a graphical user interface (GUI). This is how you install w3m.

  1.  Install by typing

    sudo apt install w3m

  2. Run by typing

    w3m -v http://www.google.com

  3. Exit the browser by pressing Ctrl-z

 

Phase V – Install a GUI (Optional)

There could be times when you want a graphical user interface (GUI). Ensure your Linux VM has at least 50 GB of available space on the hard drive. Use the default settings whenever prompted.

  • DO NOT install a GUI if you need a lightweight Linux server.
  • Installing this GUI will enable your Ubuntu server to have a Web Browser, which is not needed for server applications. However, you may occasionally choose to use your server for dual purposes.
  1. Update and upgrade the Linux server
    1. Update the Ubuntu Server

      sudo apt update

    2. Upgrade the Ubuntu Server

      sudo apt upgrade

  2. Install the GUI

    sudo apt -y install lubuntu-desktop task-lxde-desktop task-lxqt-desktop

  3. Select ‘lightdm’ as the default display manager
    display of instructions
    Phase V – Figure 1 – select lightdm as the default display manager
  4. This can take a while
    Sleeping 0
    Figure Zzzzzz
  5. Reboot the server

    sudo reboot

  6. Upon restart, select the lightweight GUI, Lubuntu
    1. Click on the little ball on the sign-in screen
      same as instructions
      Phase V – Figure 2 – click on display options
    2. Select ‘Lubuntu’
      same as directions
      Phase V – Figure 3 – Select Lubuntu
    3. Press the back arrow to return to the login and enter the password you created
    4. The Lubuntu GUI is now working
      same as instructoions
      Phase V – Figure 4 – Lubuntu GUI is now available

Phase VI – Install a web hosting service

Creating a web hosting service isn’t complicated, but it involves several steps. A web server requires a platform, a database, and an interface. Follow these steps to create a local web hosting service and create a test website that can be accessed.

  1. Install a GUI on the Ubuntu Server by following the steps in Phase 6
  2. Install Apache HTTP Server
    1. Install Apache by typing

      sudo apt install apache2

    2. Restart the Apache Server by typing

      sudo service apache2 restart

    3. Test that it is running by opening Firefox and typing 127.0.0.1 in the address bar
    4. Check that it says it works
      shows directions
      Figure 18 – Apache2 default page
  3. Install MySQL database management system
    1. From a terminal, install MySQL by typing

      sudo apt install mysql-server

    2. Verify it was installed by viewing the version number by typing

      sudo mysql -v

    3. Quit the MySQL interface prompt by typing

      \q

    4. Set the password validation by typing

      sudo mysql_secure_installation

      1. Press y and set the password strength according to your needs
      2. Press y to remove anonymous users
      3. Press y to disallow remote root login
      4. Keep the test database by pressing n
      5. Reload the privilege tables by pressing y
    5. Test the operability of mysql
      1. Start mysql by typing

        sudo mysql -u root

      2. Create a database by typing

        create database <name>;

      3. List all the databases by typing

        show databases;

    6. You should have a screen that looks like
      Picture of commands
      Figure 19 – mySQL is installed
    7. To leave mysql and return back to the Ubuntu Server console, type

      exit

  4. Install PHP web-server scripting language module
    1. From the terminal, install PHP by typing

      sudo apt install php

    2. View the version by typing

      php -v

    3. Make a check file by typing

      sudo vi /var/www/html/info.php

      1. Type i and add the following information

        <?php
        phpinfo();
        ?>

      2. Save the file by pressing the escape key followed by

        :wq

    4. Restart the Apache service by typing

      sudo service apache2 restart

    5. Test PHP by opening Firefox and typing the following into the web browser address bar 127.0.0.1/info.php
    6. You should get the following screen
      Picture of commands
      Figure 20 – PHP Test Successful

NOTE: if a service fails to start and you do not know why, try the following commands:

systemctl status <service>

Record the service’s process ID (PID) number.

journalctl _PID=<pid_number>

Look at the error logs closely, they often help locate the root of most issues!

 

End of Lab
Feedback email
Figure 00 – Contact us via prmaster@erau.edu

 

License

Icon for the Creative Commons Attribution-NonCommercial 4.0 International License

Mastering Enterprise Networks 2e Copyright © 2024 by Mathew J. Heath Van Horn is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License, except where otherwise noted.