Linux installers have come a long way. You can install a lot of major distributions easier today than you could have five or 10 years ago. One such installer now used by Canonical’s Ubuntu server and workstation 20.04 called Subiquity, replaces the legacy Debian installer previously used by Ubuntu.
In this article, you’re going to learn, step-by-step how to install Ubuntu Server 20.04!
What You Will Learn
This article is going to walk you through an actual scenario where you will install Ubuntu Server 20.04. You will learn the step-by-step installation process, configure standard settings such as updating the installer, configure an IP address, configure disks, add a root user account and configure a hostname, configure remote access using SSH, and finally, perform post-installation updates.
Prerequisites
To follow along with this guide, you will need to have the following resources:
- Ubuntu Server 20.04 ISO
- A Hypervisor or standalone physical server
- Hyper-V
- VMware ESXi, Player, or Workstation
- KVM / VirtualBox
- A desire to learn
Ready to learn? Great!
Installing Ubuntu Server
Without further ado let’s get started!
- Begin the installation by booting your VM guest using the Ubuntu Server 20.04 ISO. This guide will mention VMware a lot; however, you can use any hypervisor. The examples here are from VMware ESXi 7.0, but you can also use Microsoft Hyper-V, VirtualBox, or VMware Player, to name a few. When you start your VM guest, you should see system boot messages as the VM guest boot. After finishing the boot process, you will see the following welcome screen:
The default language choice is English. If this is the language you wish to use, press Enter.
2. On the next screen, choose whether you wish to update the installer or not. If you are connected to the internet, using the arrow keys to select ‘Update to the new installer’ and press Enter. Otherwise, you can skip this step.
The installer will begin to download, and the update will begin:
3. Once the installer has completed the update, you will now need to choose a keyboard layout. The default is English (US). If you are OK with these defaults, choose Done press Enter:
4. Now it’s time to configure networking. By default, the installer will look for a DHCP address and automatically configure networking. However, you should set the IP address now to a valid configuration for your network. You could write down the address assigned and use it as a static configuration. If you choose that route, be sure to make that address a static reservation in your DHCP server configuration.
5. To configure a static address, select eth0, as shown below, and press Enter. You will then need to select IPv4 or IPv6 and assign the correct subnet, address, gateway, and name server addresses. IPv6 is primarily for internet facing traffic because the world is running out of IPv4 address space. It’s not something you will need to use for local traffic anytime soon.
For most cases, you will choose IPv4 as shown below:
6. When you finish, the settings will apply, and you can continue. Select Done, and press Enter to continue.
7. The next screen will ask you to configure a proxy address. If you use one to access the internet, enter that address here, otherwise leave it blank and select Done, and press Enter:
8. Next, it’s time to choose a disk configuration. For this guide’s purposes, we are going to stick with the defaults as much as possible. Ensure Use an entire disk is selected, and that Set up this disk as an LVM group is selected. With both selected, choose Done and press Enter:
9. Review the storage configuration. Now would be a good time to document the disk configuration too. If you are satisfied with your configuration, choose Done and press Enter:
10. Since formatting and partitioning a disk is considered destructive, you will see a confirmation dialog. Choose Continue and press Enter:
11. The next screen will be the Profile Setup screen. This account will be the root user account for your server. Enter your name, a server name, a username, and a password you wish to use. The username can be your name or a Marvel Comics character. The choice is yours. Whatever the decision may be, be sure to document this information before proceeding!
12. When satisfied with the information, select Done and press Enter:
13. Now you are asked whether or not you want to install OpenSSH Server. If you are only going to use the VM console to access the server, skip installation. You can install OpenSSH later. However, if you plan to utilize SSH connectivity to manage your host, make sure Install OpenSSH Server is selected. It’s easier to do it now than to install and configure later. If you are familiar with SSH keys, you can also import your keys now to enable a passwordless secure login.
14. When you are satisfied with the selections, choose Done and press Enter:
15. You’re now about to finish! Next, is to install some of the most popular snaps that are available for Ubuntu Server.
If you want to, select PowerShell and choose Done, and press Enter. Otherwise, just select Done, and press Enter.
Ubuntu Server will now begin installing. Typically installation will only take a few minutes on a virtual machine.
16. After a few minutes and, you need to Reboot. Press Enter and the server will restart.
Opening up Common Ports
You need to add some underlying security to your installation by installing a firewall. By default, the Un-Complicated Firewall (ufw) in Ubuntu Server 20.04 is not configured and enabled.
The steps in this section are not technically required for a vanilla install. However, if you are going to use this server as a web server or perhaps a database server, read on.
Now connect to your new server using the SSH protocol. For this guide, Windows Terminal and PowerShell 7 using SSH to execute commands.
Enabling the Firewall
- Open your SSH client, and enter the following command using the username and IP address you used during the Ubuntu Server installation:
ssh [Root_UserName]@[IP_Address]
2. Press Enter. Wait for the prompt to accept the encryption key if you have not already connected via SSH before. The process you will see in the following animated gif:
Verify the Uncomplicated Firewall or UFW status by typing the following command in the terminal:
sudo ufw status verbose
The firewall status will be inactive. Enable and start the firewall daemon now by typing the command below and pressing Enter:
sudo ufw enable
You should first set up access for SSH. This is required once the firewall is enabled.
sudo ufw allow ssh
If you’re setting up this Ubuntu server to act as a web server or perhaps a MySQL server, you will see the required ports to open below.
sudo ufw allow http
sudo ufw allow https
sudo ufw allow mysql
Now reload the firewall configuration to apply the changes by entering the following command:
sudo ufw reload
You may want to be more precise with where you allow the traffic to come. This guide uses anywhere because there are other security measures in place that prevent access to machines on the network used. If you would like to do some additional reading about how to configure UFW, read more by starting here.
Updating Ubuntu Server 20.04
For the last task, you will want to perform before moving on is to update the OS and upgrade any packages that may need upgrading. You may want to do this to ensure your newly minted server has all of the latest security and bug fixes available.
To do so, start by using the apt command, as shown below.
The apt package manager will then scan the Ubuntu repositories for updates/upgrades. The -y parameter suppresses confirmation dialogs, and any packages that have updates will display on the screen.
sudo apt update -y
Now run the next command.
Now the apt package manager will begin to apply all upgrades previously found needing updates. The -y
parameter will suppress any confirmation dialogs. This step may take a minute or two, depending on your internet connection and system performance.
sudo apt upgrade -y
Congratulations! You’ve just installed, configured, and updated Ubuntu Server 20.04 LTS successfully.