Webmin – A Web Based System Administration Tool for Linux

Webmin is an open-source web-based system configuration tool for Linux system administration. With the help of this tool, we can manage internal system configuration such as setting up user accounts, disk quotas, services configuration like Apache, DNS, PHP, MySQL, file sharing, and much more.

Webmin application is based on Perl module and it uses TCP port 10000 with OpenSSL library for communicating via browser.

Some of the things you can do with Webmin are:

  • Create, edit and delete user accounts on your system.
  • Share Files and Directories with other Linux systems via the NFS protocol.
  • Set up Disk Quotas to manage the amount of disk space available to users.
  • Install, view, and delete software packages on the system.
  • Change system’s IP address, DNS settings, and routing configuration.
  • Set up a Linux Firewall to secure your system.
  • Create and configure virtual hosts for the Apache Webserver.
  • Manage databases, tables, and fields in a MySQL or PostgreSQL database server.
  • Share files and directories with Windows systems via the Samba file sharing.

In this article, you will learn how to install the latest version of the Webmin system administration tool in Linux systems.

Installing Webmin Control Panel in Linux

We are using the Webmin repository for installing the latest Webmin tool with their required dependencies and we also receive up-to-date automatic updates of Webmin via repository.

Install Webmin in RHEL Systems

On RHEL-based distributions, such as Fedora, CentOS, Rocky & AlmaLinux, you need to add and enable Webmin repository, do to this create a file called /etc/yum.repos.d/webmin.repo and add the following lines to it as a root user.

# vi /etc/yum.repos.d/webmin.repo
[Webmin]
name=Webmin Distribution Neutral
#baseurl=https://download.webmin.com/download/yum
mirrorlist=https://download.webmin.com/download/yum/mirrorlist
enabled=1
gpgkey=https://download.webmin.com/jcameron-key.asc
gpgcheck=1

You should also download and install the GPG key with which the packages are signed, with the commands:

# wget https://download.webmin.com/jcameron-key.asc
# rpm --import jcameron-key.asc

You will now be able to install Webmin with the commands:

# yum install webmin
Install Webmin in RHEL Systems
Install Webmin in RHEL Systems

Install Webmin in Debian Systems

Similarly, you need to add and enable Webmin APT repository to the /etc/apt/sources.list file on your Debian systems such as Ubuntu and Mint.

$ sudo nano /etc/apt/sources.list

Add the following line at the bottom of the file. Save and close it.

deb https://download.webmin.com/download/repository sarge contrib

Next, import and install GPG Key for installing signed packages for Webmin.

$ wget https://download.webmin.com/jcameron-key.asc
$ sudo apt-key add jcameron-key.asc 

On Debian 11 and Ubuntu 22.04 or higher, the commands are :

$ wget https://download.webmin.com/jcameron-key.asc
$ sudo cat jcameron-key.asc | gpg --dearmor > /etc/apt/trusted.gpg.d/jcameron-key.gpg

You will now be able to install Webmin with the commands:

$ sudo apt-get install apt-transport-https
$ sudo apt-get update
$ sudo apt-get install webmin

Starting Webmin in Linux

Run the following commands to start the service.

------------------- [on RedHat based systems] -------------------
# /etc/init.d/webmin start
# /etc/init.d/webmin status
Start Webmin in CentOS
Start Webmin on RedHat Systems
------------------- [on Debian based systems] ------------------- $ sudo /etc/init.d/webmin start
$ sudo /etc/init.d/webmin status
Start Webmin in Ubuntu
Start Webmin on Debian Systems

Step 3: Accessing Webmin Control Panel

By default Webmin runs on port 10000, so we need to open the Webmin port on our firewall to access it. The easiest way to open the port on the firewall is using the following commands.

------------------- [On FirewallD] ------------------- # firewall-cmd --add-port=10000/tcp
# firewall-cmd --reload
------------------- [On UFW] ------------------- $ sudo ufw allow 10000
------------------- [On IPtables] ------------------- # iptables -A INPUT -p tcp -m tcp --dport 10000 -j ACCEPT
# service iptables save
# /etc/init.d/iptables restart

Now we should be able to access and login to Webmin using URL http://localhost:10000/ and enter the username as root and password (current root password), for remote access just replace localhost with your remote IP address.

http://localhost:10000/
OR
http://IP-address:10000/
Webmin Admin Login
Webmin Admin Login
Webmin Linux System Information
Webmin Linux System Information
Webmin Configuration
Webmin Configuration
Webmin Linux Running Processes
Webmin Linux Running Processes

For more information visit webmin documentation.

Posted by Contributor