Knowing how to manage a server is an invaluable skill. Learning about your server inside out will assist you in diagnosing and fixing problems that usually come with hosting a website. But how could a beginner accomplish this? Running a Web Server can be quite daunting and tedious.
A software called Virtualmin greatly helps in making this process as painless as possible. It is a free GPL software although a paid version is also available. Vitualmin only support Unix-based systems like Linux which is what most servers use anyway.
What people commonly refer to as Virtualmin is technically a combo of Virtualmin/Webmin. Virtualmin is the part that helps manage your individual websites while Webmin is the part that manages your server and the software that runs on it.
In my case, I’m installing Virtualmin on my VPS (Virtual Private Server) which is not an entire physical computer but is instead a small portion of one that is then allocated to me. So one physical server is divided and sold to multiple people. The good thing about this is it’s cheaper than shared-hosting, especially if you’re running multiple websites, but the downside is you’re on your own on how to create your web server from scratch and on how to manage it.
Steps in Installing Virtualmin
Make sure you’re server is running a fresh install of any of Virtualmin’s Grade A supported Operating Systems like Debian, Ubuntu, CentOS, or Alma & Rocky Linux. I’m personally running Debian 11 since it’s very stable. Before proceeding, you will need to know your server’s hostname (ex. ns1.domain.com, server.domain.com, vps.domain.com, etc.) and root password. Go to your server/vps provider to get or initially set these.
- Open an SSH client like PuTTY then login to your server as a root user.
- Download Virtualmin’s install script to your server with either of the code below:
- Then run that script with this code:
NOTE: If this doesn’t work or wget is not installed on your system, try this one instead:
curl https://software.virtualmin.com/gpl/scripts/install.sh -o install.sh
NOTE: If your server has small RAM like 512MB or 1GB then run the script with the minimal flag instead, like this:
sh ./install.sh --minimal
This prevents other memory-hungry software from being installed. A RAM of 256MB is not recommended for running Virtualmin. I used to run Virtualmin/Webmin on 512MB but that was on an old 32-bit CentOS 6 which uses a lot less RAM than a modern 64-bit Linux OS.
This is the first part of the install and should take about a couple of minutes depending on how fast your system is. Click on the images below to see this in action.
After this is finished the next step is to open your browser and enter your hostname in the address bar (ex.
https://vps.domain.com:10000 ) to continue with the configurations.
Don’t forget the
https part. A warning will appear since you don’t have a valid ssl certificate yet. This is normal. On Firefox, click “Advanced” -> “Accept the Risk and Continue”. If that option doesn’t appear, try visiting your hostname in Private/Incognito mode on your browser.
Now you can create a Virtual Server for each of your domain/website.