How To

Install Webmin on Ubuntu 20.04: Complete Setup and Login Guide

Webmin is an open-source web-based control panel for Linux servers. It gives you a browser interface to handle server admin tasks without needing the command line for everything.

With Webmin, you can manage:

  • System users, groups, and file permissions
  • Web, SSH, FTP, email, and database servers
  • Firewall rules, disk quotas, and software packages
  • Almost any aspect of your Linux system

If you manage a server but do not want to memorize commands for every task, Webmin is a practical tool to have. This guide shows you how to install Webmin on Ubuntu 20.04 and how to access it from your browser.

<strong>Prerequisite:</strong>&nbsp;You need root or sudo access to the Ubuntu server.

Install Webmin on Ubuntu

Webmin is not in the standard Ubuntu repositories. You need to add the official Webmin repository first before you can install it.

Start by installing the required dependencies:

bashsudo apt updatesudo apt install software-properties-common apt-transport-https wget

Import the Webmin GPG key and add the repository to your system:

bashwget -q https://www.webmin.com/jcameron-key.asc -O- | sudo apt-key add -sudo add-apt-repository "deb [arch=amd64] https://download.webmin.com/download/repository sarge contrib"

Adding the repository also refreshes the package index. Now install Webmin:

bashsudo apt install webmin

The install resolves all dependencies automatically. Once done, you will see a confirmation message with the login URL.

The Webmin service starts on its own after install. You do not need to start it manually.

To upgrade Webmin when a new release comes out, use the standard update command:

bashsudo apt update &amp;&amp; sudo apt upgrade

The new version will be pulled from the repository you added.

Open Port 10000 in the Firewall

Webmin listens on port 10000 by default. If your server has a firewall running, open this port so you can reach Webmin from your browser:

bashsudo ufw allow 10000/tcp

For better security, restrict access to a specific IP address only:

bashsudo ufw allow from your_ip_address to any port 10000

This is a good practice for production servers. Leaving port 10000 open to everyone exposes your control panel to the public internet.

Access the Webmin Web Interface

Open your browser and go to:

https://your_server_ip_or_hostname:10000/

Your browser will show a security warning about an invalid SSL certificate. This is expected. Webmin uses a self-signed certificate by default, which browsers do not trust automatically. Click through the warning to continue.

On the login screen, enter your root credentials or the username and password of any sudo user on the server.

After logging in, you will see the Webmin dashboard. It shows basic system info like CPU load, memory usage, disk space, and active services. From there, you can start managing your server through the browser without needing the command line for most tasks.

<strong>Tip:</strong>&nbsp;For added security, consider setting up a valid SSL certificate through Let's Encrypt. Webmin has a built-in module that handles this for you.

Webmin is now installed and accessible on your Ubuntu server. It is a great option if you prefer a graphical interface over the terminal, or if you need to give team members access to manage specific parts of the server. For more details, check the official Webmin documentation. Questions? Leave a comment below.

Cyber Defence

Recent Posts

groupdel Command in Linux: Remove a Group and Audit Files

The groupdel command in Linux removes a group from the system. It deletes the group's entry from /etc/group and /etc/gshadow,…

13 hours ago

wc Command in Linux: Count Lines, Words, Characters, and Bytes

The wc command in Linux counts lines, words, characters, and bytes in files or standard input. It…

13 hours ago

top Command in Linux: Monitor Processes and Resource Usage

The top command in Linux provides a real-time view of running processes and system resource usage. From…

13 hours ago

usermod Command in Linux: Modify User Accounts and Groups

The usermod command in Linux modifies existing user account attributes. You can use it to manage group…

13 hours ago

sort Command in Linux: Sort Text, Numbers, Columns, and More

The sort command in Linux reads lines from files or standard input and writes them to standard…

2 days ago

wall Command in Linux: Broadcast Messages to Logged-In Users

The wall command in Linux sends a message to the terminals of all currently logged-in users. The…

2 days ago