In this guide, you will install Webmin on Rocky Linux 8 or AlmaLinux 8/9. This guide also works for other RHEL 8 compatible servers like Oracle Linux and CentOS Stream.
Webmin is a free and open-source web-based system administration tool for Unix-like systems. It provides a browser UI for managing common server tasks.
If you prefer a GUI over the command line, Webmin is a practical alternative for everyday server administration.
The following is a list of functionalities provided by Webmin.
- BIND DNS Server: Create and edit domains, DNS records, BIND options and views
- BSD Firewall: Configure a BSD firewall using IPFW, by creating and editing rules
- DHCP Server: Manage shared networks, subnets, hosts, and groups for ISC DHCPD
- CD Burner: Burn data CDs from ISO images or selected directories
- File Manager: View, edit and change permissions on files and directories on your system with a Windows-like file manager
- Dovecot IMAP/POP3 Server: Configure the Dovecot IMAP and POP3 mail retrieval server
- LDAP Server: Manage the OpenLDAP server and objects in its database for all operating systems
- MySQL Database Server: Setup databases, tables, and permissions in your MySQL database server
- Linux RAID: Create RAID 0, 1, 4, 5, 6, 10 and linear devices on a Linux system
- SSL certificates: Let’s Encrypt SSL certificate requests
- IPsec VPN Configuration: Set up a client or server for an IPsec VPN using FreeSWAN
Related content
1. Update the server
Before proceeding, update your Rocky/Alma packages:
| |
Install a few required tools:
| |
2. Install Webmin
You can install Webmin in two ways:
- Download and install the Webmin RPM directly
- Configure the official Webmin RPM repository (recommended, so upgrades are easy)
2.1 Installing Webmin using an RPM
In this method, we do not need to add any repo. We will download a binary of webmin rpm.
To get the latest Webmin RPM binary, visit the Webmin download page. Copy the RPM Linux link and download it with curl.
| |
Install the downloaded RPM binary using the DNF package manager.
| |
Once the installation is completed, move to the next step to access the web interface.
Installing webmin using the Webmin Repo
Let’s add the yum repository of Webmin on Rocky Linux or Almalinux 8 to fetch the Webmin packages for installation using a single command.
Open the repo file
| |
Add this content to the file:
| |
Now install webmin
| |
All dependencies should be resolved automatically. Once installed, you will get this output:
| |
This shows that the service is running on our server in port 10000.
Confirm installation
| |
3. Start and enable Webmin
Webmin might not start automatically. Start it with:
| |
To confirm it is running, check to ensure port 10000/tcp is opened.
| |
You can restart, reload, and stop Webmin using:
restart
| |
reload
| |
stop
| |
4. Open Webmin port in the firewall
To access Webmin remotely, allow TCP port 10000 in the firewall.
| |
5. Access Webmin in your browser
Navigate to https://your_domain:10000 in your web browser, replacing your_domain with your server domain or IP address.
Note: On first login, you may see an “Invalid SSL” warning because Webmin often starts with a self-signed certificate. For testing, accept the warning; for production, configure a trusted certificate or use a reverse proxy.
You’ll be presented with a login screen. Sign in as the root user with password.
Once you log in, the first screen you will see is the Webmin dashboard.
6. Secure Webmin (recommended)
Webmin is an administration panel, so treat it as sensitive:
- Restrict access by source IP/subnet (for example your VPN or office network). Avoid exposing
10000/tcpto the public internet. - Prefer a reverse proxy with authentication and trusted HTTPS certificates (for example NGINX + Lets Encrypt) instead of relying on Webmin’s self-signed certificate.
- Create a dedicated Webmin admin user and avoid daily access using the
rootaccount when possible. - Use strong passwords and rotate them if Webmin is reachable outside your private network.
Optional: manage Webmin with systemd
If you want consistent service management, create a systemd unit:
| |
Then enable and start it:
| |
7. Upgrade Webmin
If you installed via the Webmin repository:
| |
If you installed via a downloaded RPM, upgrade by installing a newer RPM:
| |
8. Troubleshooting
Port is open, but browser cannot connect
- Confirm it is listening:
sudo ss -tulpn | rg ':10000' - Confirm firewall rules:
sudo firewall-cmd --list-all | rg 10000 - Check DNS/routing and any cloud security group rules.
Invalid SSL warning
This is expected for self-signed certificates. For production, configure a trusted certificate or terminate TLS in a reverse proxy.
Conclusion
You now have Webmin installed and running on Rocky Linux / AlmaLinux 8/9 with remote access over HTTPS.