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.

If you read this far, tweet to the author to show them you care. Tweet a thanks
Ravi Saive
I am an experienced GNU/Linux expert and a full-stack software developer with over a decade in the field of Linux and Open Source technologies

Each tutorial at TecMint is created by a team of experienced Linux system administrators so that it meets our high-quality standards.

Join the TecMint Weekly Newsletter (More Than 156,129 Linux Enthusiasts Have Subscribed)
Was this article helpful? Please add a comment or buy me a coffee to show your appreciation.

30 thoughts on “Webmin – A Web Based System Administration Tool for Linux”

  1. Hi Ravi,

    Same here, followed instructions to a tee and not working. Using Centos 8.

    http://:10000/
    

    not connecting. Yes, I did:

    # firewall-cmd --add-port=10000/tcp
    # firewall-cmd --reload
    

    When I look at my firewall settings, I see ‘Cockpit with port 9090’, which is the default Centos Server Web portal monitoring tool.

    Thank you,

    YVan

    Reply
      • Hi Ravi,

        I did the following and all is good now:

        # firewalld-cmd - -add-port=10000/tcp - -permanent
        # firewalld-cmd - -reload
        

        Thank you for this guide, very well done and appreciated.

        Keep on the good works!:-)

        Yvan

        Reply
  2. Instructions followed exactly the instructions, Webmin is running, firewall is off. Unfortunately it’s not working on Linux Mint 19

    Reply
  3. Super easy to install in FreeBSD or FreeNAS in a jail.

    http://doxfer.webmin.com/Webmin/Installation

    (Inside of a jail set password with “passwd”)

    pkg update
    pkg install webmin
    /usr/local/lib/webmin/setup.sh
    echo “webmin_enable=”YES”” >> /etc/rc.conf
    /usr/local/etc/rc.d/webmin start

    Once installed navigate to the IP address (hint try ifconfig to find it) and port. Login and start using it.

    Reply
  4. i have installed correctly but the username and pass is not working
    i try to figure that but i cant figure /usr/libexec/webmin/ folder
    there is not libexec folder

    Reply

Got something to say? Join the discussion.

Thank you for taking the time to share your thoughts with us. We appreciate your decision to leave a comment and value your contribution to the discussion. It's important to note that we moderate all comments in accordance with our comment policy to ensure a respectful and constructive conversation.

Rest assured that your email address will remain private and will not be published or shared with anyone. We prioritize the privacy and security of our users.