# Installing Webmin on Ubuntu 24.04

Webmin is an open-source, web-based control panel for Linux server administration — user accounts, disk quotas, networking, packages, and more, all without touching the command line. This guide installs it on Ubuntu 24.04, secures it with a real TLS certificate, locks down the firewall, and tours the dashboard, following web-based server administration practices documented in [**Vultr Docs**](https://docs.vultr.com/how-to-install-webmin-on-ubuntu-24-04).

> **Prerequisites:** an Ubuntu 24.04 instance, non-root sudo user, a domain A record (e.g. `webmin.example.com`).

* * *

## Install Webmin

Not in the default repos, use the official setup script:

```console
sudo curl -o setup-repos.sh https://raw.githubusercontent.com/webmin/webmin/master/setup-repos.sh
sudo bash setup-repos.sh
sudo apt install --install-recommends webmin -y
sudo systemctl status webmin
```

Webmin listens on port `10000` by default.

* * *

## Secure with Let's Encrypt

Webmin serves plain HTTP on `10000` out of the box — fix that first.

```console
sudo ufw allow 80/tcp
sudo apt install certbot -y
sudo certbot certonly --standalone -d webmin.example.com -m webmin@example.com --agree-tos
```

**Merge cert + key into the format Webmin expects, and install it:**

```console
sudo cat /etc/letsencrypt/live/webmin.example.com/fullchain.pem /etc/letsencrypt/live/webmin.example.com/privkey.pem > webmin.pem
sudo mv webmin.pem /etc/webmin/
sudo nano /etc/webmin/miniserv.conf
```

Find and replace the `keyfile` value:

```ini
keyfile=/etc/webmin/webmin.pem
```

```console
sudo systemctl restart webmin
```

* * *

## Lock Down the Firewall

```console
sudo ufw allow 10000
sudo ufw allow https
sudo ufw deny http
sudo ufw reload
sudo ufw status
```

Denying plain HTTP after the cert is issued closes the unencrypted path — the cert renewal process doesn't need port 80 open long-term the way initial issuance does (Certbot's `--standalone` renewal reopens it briefly, or switch to a DNS challenge if you'd rather keep 80 closed permanently).

* * *

## Access Webmin

1.  Visit `https://webmin.example.com:10000`, log in with your sudo user credentials.
    
2.  Dashboard shows CPU, memory, disk, and running processes at a glance.
    
3.  **System → Software Package Updates** — review and apply pending package updates.
    
4.  **Tools → File Manager** — browse and edit files on the server.
    
5.  **Tools → Terminal** — a full shell session in the browser.
    

All system users with login privileges can log in; only sudo users get administrative actions.

* * *

## Next Steps

Webmin is running behind TLS with the firewall scoped to only the ports it needs. From here:

*   Explore Webmin modules for specific services you run (Apache, BIND, Postfix, etc.)
    
*   Set up additional restricted users for team members who only need specific modules
    
*   Switch Certbot to a DNS-01 challenge if you want port 80 closed permanently between renewals
    

For the full guide, visit the original article on [**Vultr Docs**](https://docs.vultr.com/how-to-install-webmin-on-ubuntu-24-04).
