Webmin is a web-based interface for system administration on Unix-like systems. It allows you to manage users, disk quotas, services, configuration files, and more through a simple browser interface. This tutorial will guide you through the process of installing Webmin on Debian 12.

Webmin is a web-based interface that simplifies the administration of Unix-like systems, including Linux. It’s a powerful tool that allows system administrators to manage system tasks, such as setting up user accounts, configuring Apache servers, managing DNS, file sharing, and databases, all through an intuitive web interface.

With Webmin, you can:

  • Monitor system performance
  • Manage packages and services
  • Perform backups
  • Automate tasks with cron jobs
  • Manage virtual hosting

It offers flexibility, making system management accessible for users who prefer not to work solely with command-line tools.


Step 1: Create an Instance on Cloud.shape.host

Step 1.1: Navigate to the ShapeHost Dashboard

Log in to your ShapeHost account and go to the Dashboard. Click the blue Create button at the top-right corner, then select Instances from the dropdown. This will open the instance creation page.

Navigate to Dashboard
Shape.host Resources dashboard with Create > Instance highlighted.

Step 1.2: Choose a Location

On the Create New Instance page, select the region for your server from the list of available locations like New York, Amsterdam, or Tokyo. Choose the best-suited location based on your needs.

Choose a Location
Shape.host instance form with the data center location selector highlighted.

Step 1.3: Select an Operating System Image

Select the operating system (OS) for your instance. Options include Debian, Ubuntu, Fedora, and others. Click on your preferred OS to proceed.

Select an OS
Shape.host instance form with the operating system image selector highlighted.

Step 1.4: Configure Instance and Finalize

Scroll down and choose the plan for your instance based on your requirements, like CPU, RAM, and storage. Configure SSH key or password access for authentication. Once ready, click Create Instance to finalize.

Finalize Configuration
Shape.host instance form with the Create Instance button highlighted.

Step 1.5: Access the Instance

Once your instance is created, you will see it listed under Resources. Take note of the Public IP Address, which will be used to access and manage your instance.

Shape.host Resources dashboard with the server IP address highlighted.

To access your newly created instance, follow these steps:

  1. Find your Instance’s Public IP: After creating your instance, note the public IP address associated with it, which is visible in the instance list.
  2. Open SSH terminal: Use an SSH client like Terminal (for Linux/macOS) or PuTTY (for Windows).
  3. Connect via SSH: Run the following command in your terminal:
   ssh root@<your-instance-ip>

Replace <your-instance-ip> with your instance’s actual public IP.

  1. Enter your password: If prompted, input your instance’s root password. You should now be connected to your instance.

Step 2: Update System and Install Dependencies

First, update your system packages:

apt update -y
Terminal showing APT package management commands and output.

Install gnupg2 and curl:

apt install gnupg2 curl -y
Terminal showing APT package management commands and output.

Step 3: Add Webmin Repository and Install Webmin

Navigate to the temporary directory:

cd /tmp
Terminal showing file and directory setup commands.

Download the Webmin repository setup script:

curl -o setup-repos.sh https://raw.githubusercontent.com/webmin/webmin/master/setup-repos.sh

Run the script:

sh setup-repos.sh
Terminal showing APT package management commands and output.

Update your system again:

apt update -y
Terminal showing APT package management commands and output.

Install Webmin:

apt install webmin --install-recommends -y
Terminal showing APT package management commands and output.

Step 4: Start and Check Webmin

Start Webmin:

service webmin start
Terminal showing service commands or output during Start and Check Webmin.

Check the status of Webmin to ensure it’s running:

service webmin status
Terminal showing a systemd service unit configuration.

Verify that Webmin is listening on port 10000:

ss -antpl | grep 10000
Terminal showing grep commands or output during Start and Check Webmin.

Step 5: Configure Firewall

Install UFW and allow necessary ports:

apt install ufw -y
ufw allow 22
ufw allow 10000
ufw allow ssh
ufw enable
ufw status
Terminal showing APT package management commands and output.
Terminal showing firewall configuration commands and rules.

Step 6: Access Webmin

Now that Webmin is installed, you can access it via your web browser. Use the following URL:

https://your-server-ip:10000

This will redirect you to the Webmin login page, where you can log in and start managing your Debian server through the Webmin interface.

Webmin sign-in form.

Provide your root username, password and click on the Sign in button. You should see the Webmin dashboard on the following page:

Webmin dashboard.

You’ve successfully installed Webmin on Debian 12. Webmin simplifies system administration tasks by providing a web interface that allows you to manage almost all aspects of your server. For optimal performance and security, consider using Cloud VPS for your hosting needs, ensuring speed and reliability for your Webmin setup.