I’m sure most of our readers love thinkering through their virtual or dedicated machines while setting up their top-notch projects. Still, when it comes to managing lots of small websites or websites for your clients that are not that tech-savvy, using some kind of virtual GUI, a.k.a. a control panel for this is the best option.
There are many web hosting control panels, and they each provide all features required for managing your websites with ease. The most popular control panels in our industry, or as we like to call it the industry standard, are cPanel and Plesk. Great tools but at a price. With recent price changes in cPanel, you might think twice before choosing it for managing your small websites.
In this article, we will cover Virtualmin GPL, a free and open-sourced web hosting control panel.
Developed and mainly maintained by Virtualmin Inc. the initial release of the control panel was back in 2003, seven years after its fierce competitor cPanel. At that time, cPanel already had the majority of the market share, and its software was much more mature. The unnecessary complexity in the early days of Virtualmin, combined with cPanel’s affordability, resulted in this control panel’s slow adoption rate among the webmasters. Today it has over 100 000 active installations.
But thanks to its GPL license and its open modular structure which allows various plugin development Virtualmin has grown during the years just enough to be a completely viable replacement of cPanel. The endless contributions from developers worldwide put this control panel on the webmaster’s radar. Today is even leading in the adoption of new web hosting back-end technologies, something that we will cover in the text below.
So, Why Should You Look for a cPanel Alternative?
The reasons for this may vary. But the main motive for this is that for most projects, cPanel may no longer be an affordable option if you don’t have over 30 websites on your node. Basically, this made cPanel affordable just for bigger web hosting companies like us. In fact, if you’re in a big need to have cPanel, the most affordable option would be to get some shared web hosting. It comes with cPanel but also has various limitations depending on the web hosting plans. For example, you can check our unmetered shared hosting plans. However, if you want to run your own node on VPS or some dedicated server with less than five websites, then this is where things get costly by adding +$22/month just for licensing.
We truly understand this reason for the cPanel decision, and it mainly revolves around the support volume. It is natural for bigger hosting companies who have dedicated teams of system administrators to resolve all panel issues on their own, while smaller website owners with less than 5 websites used to cPanel to be more demanding on their support channels, and it takes a lot of people and resources to offer reliable support.
So this is where Virtualmin and its open-source ideology comes along. Open-sourced projects tend to create big communities. And people involved in them are more willing to share their experience and knowledge with the rest of the community. If you can’t find your solution in its documentation, the Virtualmin Community forum is the place where all users and developers are sharing solutions to various problems they’ve encountered.
But the free control panel and support is not the reason that encouraged us to write this post. Here are some of the other benefits of using Virtualmin.
Virtualmin is built on top of Webmin, a web-based system administration tool for Linux & Unix servers. With this said Virtualmin could run virtually on any UNIX-based operating system. To get a better understanding of the whole Virtualmin/Webmin combination, I think it’s safe to make the following analogy and see Webmin as the WHM part intended for system administrators and Virtualmin as cPanel itself dedicated to the end-users, the website owners.
To make the installation process, Virtualmin offers a simple installation script that can be run in a simple one-liner:
curl -o virtualmin -L http://software.virtualmin.com/gpl/scripts/install.sh && sh virtualmin
Once the installation is done, you can log in to your Virtualmin administration where you’re greeted by a setup wizard. Then in a couple of steps, you will configure your installation.
It is needless to say that Virtualmin offers almost everything that cPanel has to offer:
- Web Server manager based on LAMP or LEMP (Linux, Nginx MySQL/MariaDB, PHP). Similarly to cPanel, offers support for multiple PHP versions.
- Multi-domain / domain alias support
- DNS and IP management
- File managers
- Full control over SSL with auto SSL capability from several providers
- Redirection manager
- FTP & SSH support
- Database management, with the option to choose between MySQL/MariaDB and PostgreSQL
- Email server with all extended functionality as forwarders, autoresponders, alias, spam, and antivirus scanning, all merged with the ability to have web-based email clients such as Roundcube or Horde
- User management, giving you the ability to control various access levels
- Alerts, Graphs, and Log management
- Various backup options including cloud integration
- Script installation
- CLI & remote API’s
Overall it has all features to fulfill all needs of modern-day web hosting owners and system administrators. By itself, Virtualmin comes very well balanced. And once you get used to its UI it is relatively easy to manage your website.
But the pros in the Virtualmin are in its modular design, meaning you can change particular components of the whole stack with minimal effort. For example, Virtualmin comes with a LAMP stack, but as we’re all crazy about web performance, we tend to use Nginx as our web server of choice. All you need to do is to install Nginx and Webmin-Virtualmin-Nginx plugin. And that’s it! Virtualmin is so versatile that you can have one hosting plan running on Apache and others on Nginx, on the same node, assuming both web servers don’t overlap in their port usage. The same goes for PHP versions. And it can handle multiple versions of PHP in FCGId or PHP-FPM mode, depending on your preference. Since it relies solely on the OS packages, as soon PHP releases new versions, you can install your latest version right away.
In combination with Webmin, it gives the website owners and administrators greater control over all segments of the web hosting stack. But for this part, you will need to know what you are doing. Or at least know how to configure Virtualmin system backups! 🙂 This will give you the ability to recover if you end up messing up your configuration very quickly.
It’s not a secret we’ve been fans of Virtualmin since our early days. And it has been our preferred control panel when it comes to recommending “not so expensive” but powerful web hosting solutions. Thanks to its low resource consumption through the years, we’ve managed high traffic websites on our cheaper unmetered hosting VPS plans. Of course, this was achieved in combination with Nginx and PHP-FPM. We’ve even had it in combination with HHVM in the early days of PHP-FPM.
I must warn you that Virtualmin is not build to be stylish and have easy to spot icons or buttons that you can jump to immediately and do the changes or settings. Altho the latest upgrade in its UI changed this, there is still a lot of room for improvement. If you haven’t used the panel before, be ready to sweat a bit at the beginning. It will take you some time to get used to the organization and order of things. Finding what is needed might take longer than executing it.
Don’t get us wrong, and we don’t want to scare you off, don’t worry too much if you struggle a bit initially. You will adapt to it quickly. And if there is anything you can’t accomplish, our support team and the Virtualmin community is here to help.
When you get used to it, you will be able to see and feel the difference in performance and cost. Then you will know the difference between Virtualmin and cPanel. And you will understand why we recommend it as the Ultimate cPanel Alternative.