Linux

How to install Webmin on Ubuntu 18.04

The objective is to install Webmin on Ubuntu 18.04 Bionic Beaver Linux along with required Linux, Apache, MySQL, PHP (LAMP) stack.

Operating System and Software Versions
  • Operating System: – Ubuntu 18.04 Bionic Beaver Linux
  • Software: – Webmin 1.870 and higher

This guide assumes the following scenario:

  • open firewall port 10000 or disabled firewall. See appendix below on how to open port 10000 on your UFW firewall
  • webmin server can be resolved via hostname webmin.linuxconfig.org. Confirm your DNS settings before continuing.

Install Prerequisites

The only main prerequisite for running a Webmin on your server is installed and running LAMP stack. Fortunately, installation of LAMP on Ubuntu is a trivial task:

sudo apt install wget

You will be prompted for a MySQL administration password. Simply enter it and take a note of it. You will need this password later within Webmin to access your databases.

Install Webmin

To install webmin on Ubuntu 18.04 we first need to add Webmin’s external repository and verification key signature:

wget -qO- http://www.webmin.com/jcameron-key.asc | sudo apt-key add
sudo add-apt-repository "deb http://download.webmin.com/download/repository sarge contrib"
sudo apt update
sudo apt -y install webmin

The last lines of the Webmin installation output will reveal instructions on how to access Webmins interface. Example:

Webmin install complete. You can now login to https://webmin.linuxconfig.org:10000/
as root with your root password, or as any user who can use sudo
to run commands as root.
Access Webmin web Interface

To access Webmin’s web interface start up your web browser and open the URL as shown during the Webmin installation process. Your browser will most likely complain about invalid HTTPS certificate.

This can be ignored or alternatively you can create Let’s Crypt certificate using webmin Webmin -> Webmin Configuration -> SSL Encryption -> Let's Encrypt once you login.

Login to Webmin using your root or sudo user credentials:

Open port 10000 with UFW

Given that your UFW is already enabled you can allow incoming traffic from any source to TCP port 10000 using the following.

sudo ufw allow from any to any port 10000 proto tcp