How to Install and Use Webmin on Ubuntu Linux

Install Use Webmin Linux 00 Featured Image

Webmin is a powerful web front-end interface for Linux servers. It allows you to easily configure any system setting in your machine through a web browser. This makes Webmin a highly attractive utility for system administrators who want an accessible way to check on their remote machines. Here we show how to install and use Webmin on Ubuntu.

What Makes Webmin Different?

One of the biggest advantages of Webmin is that it allows you to directly configure third-party services in your server. You will not need to memorize each configuration file for each service that you use in your machine.

Install Use Webmin Linux Program Website

Webmin also allows you to configure deep system files in your machine. For example, it is possible to configure your GRUB Bootloader directly from Webmin’s interface.

Installing Webmin in Linux

Before you can install Webmin, you need to make sure that you have the following resources available and ready:

  • Machine that you can access over the network, such as a local machine in your home or a VPS that you rent online.
  • Compatible Linux distribution in your machine that supports a wide range of Linux distributions. We are using Ubuntu.
  • Root access in your machine, to be used for configuring system files during the installation process.

Obtaining Webmin’s Dependencies

The first step in installing Webmin is to import its repository archive, as Webmin is not included by default in Ubuntu 22.04.

To import the Webmin repository, copy the developer’s signing key:

wget -qO - http://www.webmin.com/jcameron-key.asc | sudo apt-key add -
Install Use Webmin Linux 03 Import Signing Key

Copy the repository information for Webmin to your /etc/apt/sources.list.d file:

sudo sh -c 'echo "deb http://download.webmin.com/download/repository sarge contrib" > /etc/apt/sources.list.d/webmin.list'

Lastly, update apt to refresh your system’s repository listings:

sudo apt update && sudo apt upgrade
Install Use Webmin Linux 04 Install Repository

Configuring Your Firewall and Installing the Program

Make sure that Webmin is accessible from outside the server by using the iptables utility to enable port 10000 for incoming connections:

sudo iptables -A INPUT -p tcp -m state --state NEW --dport 10000 -j ACCEPT
Install Use Webmin Linux 05 Open Firewall

Lastly, install the Webmin utility with the following command:

sudo apt install webmin
Install Use Webmin Linux 06 Apt Install Program

Managing Your System With Webmin

Once you have properly installed Webmin in your server, you can start configuring your system through it. However, you need to first find the IP address of your server.

Do that by running the following command:

ip addr
Install Use Webmin Linux 07 Ip Addr

After that, you can now open Webmin by going through your web browser and typing the machine’s IP address followed by the program’s port. In my case, I will type 192.168.68.165:10000.

Install Use Webmin Linux 08 Ip Address With Port

A small login page for Webmin will open. To access the system, provide your current Ubuntu credentials. For example, I am typing user “ramces” followed by my password to access the Webmin interface.

Install Use Webmin Linux 09 Program Login Page

Installing a Service Using Webmin

Once inside, Webmin will display a visual dashboard of your system with a brief summary of your machine and how it utilizes its resources.

Install Use Webmin Linux 10 Program Dashboard

The visual dashboard also allows you to easily install and remove third-party services from your server by clicking the “Un-used Modules” category in the Dashboard’s left sidebar.

Install Use Webmin Linux 11 Un Unsed Modules

Webmin will list all of the available services that you can install. For example, I can click the “Apache Webserver” item to set up a web server in my machine.

Install Use Webmin Linux 12 Apache Webserver

Doing that will display a new page where Webmin will ask if you want to install a new service in your server. To begin the installation, click the “Install Now” button.

Install Use Webmin Linux 13 Install Apache Webserver

Webmin will list all the dependencies it needs to properly build the service that you want to install. To continue, click the “Install Now” button again.

Install Use Webmin Linux 14 Dependency Install Apache

The program will create a new terminal instance and run all of the commands that it needs to install your service. Click the “Return” button at the bottom of the current page to load your new service.

Install Use Webmin Linux 15 Finalize Apache Webserver Install

Tip: you can also learn how to configure Apache and PHP for a high traffic site.

Configuring a System Setting Using Webmin

Another brilliant use of Webmin is configuring system files and services through its interface. This approach removes the need to constantly access the system through SSH for relatively minor tweaks and configurations.

Click the “System” category in the Dashboard’s left sidebar.

Install Use Webmin Linux 17 System Category

Webmin will display all the available system settings that you can tweak through its interface. For example, I can select the “Users and Groups” item to either modify a user or add a group in the server.

Install Use Webmin Linux 18 User Groups Settings

Doing that will load a new page where it lists all of the active user accounts and groups in the system. To add a new user, click the “Create a New User” button.

Install Use Webmin Linux 19 Create New User Button

Note: it is considered best practice to avoid using the root user for daily tasks. Instead, create a new user with sudo privileges and use that account for your daily tasks.

For the most part, the user creation process in Webmin is similar to the useradd utility. However, one key difference between the two is that the Webmin’s approach allows you to associate an SSH key to a new user, allowing you to create secure accounts that do not rely on traditional password authentication.

Install Use Webmin Linux 20 Filled User Page

Save your new user by clicking the “Create” button.

Install Use Webmin Linux 21 Finalize New User

Lastly, restart your machine to fully apply your new configuration. Select the “Bootup and Shutdown” item in the left sidebar.

Install Use Webmin Linux 22 Bootup Shutdown Category

Scroll down to the bottom of the page and select “Reboot System.”

Install Use Webmin Linux 23 Reboot System

Frequently Asked Questions

I am using an Nginx for my webserver. Can I use Webmin to manage it remotely?

Webmin only supports Apache 2, so you can’t use it to manage Nginx.

I am getting an SSL error whenever I access the web interface. Is my installation broken?

This issue is mostly due to your browser not being able to recognize Webmin’s SSL certificate. A basic installation normally uses a self-signed certificate for its SSL. This allows it to establish a secure connection even in local networks.

For the most part, you can ignore this warning if you are only hosting Webmin in a closed local network. However, you need to create a proper SSL certificate if you intend on running it over the Internet. Generate a Let’s Encrypt certificate by going to “Webmin -> Webmin Configuration -> SSL Encryption.”

Is it possible to access the system shell through Webmin?

To access the system shell, go to the “Tools” category. Click “Command Shell” or “SSH Login.” The former allows you to run single commands, while the latter gives you a full remote shell.

How can I uninstall Webmin from my server?

Run the/etc/webmin/uninstall.shcommand to remove all traces of Webmin from your server.

Image credit: Unsplash. All alterations and screenshots by Ramces Red.

Subscribe to our newsletter!

Our latest tutorials delivered straight to your inbox

Ramces Red
Ramces Red - Staff Writer

Ramces is a technology writer that lived with computers all his life. A prolific reader and a student of Anthropology, he is an eccentric character that writes articles about Linux and anything *nix.