Virtualmin GPL is already an extremely powerful and flexible virtual hosting control panel, so we’re frequently asked about the differences between Virtualmin GPL and Virtualmin Professional. So, if you were wondering whether you should upgrade, you’ve come to the right place.
Key attributes of professional features
Before going into specifics, we wanted to explain our philosophy on determining which features are included in both GPL and Professional, and which features are reserved for our paying customers. A feature is “professional”, if any of the following are true:
- It is really only useful in a commercial environment. We figure if you’re using Virtualmin to make money, we’d like to make a little bit, too, so we can keep working on it, making it better, and releasing new versions. So, if it’s obviously about making money, it’s a candidate for only being in Virtualmin Professional. This doesn’t mean all fiscally motivated features are excluded from GPL, but it is a starting point. Reseller Accounts are an example of this type of feature.
- It costs us a lot of time and effort to keep it working. Install Scripts are the best example of this characteristic. Because there are so many, and because there are new versions that have to be deployed and tested every few days, we simply have to have revenue to support it.
- It was an extremely large, and extremely expensive, feature to develop in the first place. This is a special case, and features that fit this description might end up in GPL eventually. A large number of the features you find in GPL today came about through this process. Mail processing is one example, as is PHP with suexec and mod_fcgid management.
Reseller accounts
One big difference in Virtualmin Professional is the addition of a reseller account type.
This allows you to create users that can create users. These users can then be managed by the master administrator (root, and equivalents), or the reseller that created the account. These created users can also be re-assigned to other reseller accounts, or removed from control of the reseller, at any time by the master administrator.
It’s worth pointing out that some users think they need this feature to allow users to create their own additional websites, but that’s not the case. Both versions of Virtualmin allow users to create and manage their own websites (whether they are full featured sub-servers that have different content or aliases that point to an existing website). So, if you just need to allow unprivileged users to create new domain-based websites (and mail accounts, and everything that goes along with a website), reseller accounts are not necessary. Regular Virtualmin accounts, available in both GPL and Professional will work fine.
If you are a hosting provider, and you want to allow web developers to resell your services, you’ll need Virtualmin Professional. Some large enterprise environments might find the reseller features useful for delegating web hosting management to local administrators or supervisors. We’ve also seen a few universities, colleges, and K12 schools use it for similar delegation. So, it’s not just for reselling, but if you aren’t a hosting provider, this feature probably won’t be necessary.
New reseller email
This feature is used to edit the template for the email message that can be sent to a new reseller account after it is created.
Enhanced user management
Easily manage SSH public keys directly from the user interface and set up database and webserver users independently, without the need for Unix account setup.
Manage SSH public keys
This feature allows you to manage SSH public keys for users, which can be used for passwordless login to the server over SSH.
Manage extra database users
This feature allows you to create and manage additional database users for a virtual server, which can be used to access databases without the need for creating a separate Unix user.
Manage extra webserver users
This feature allows you to create and manage additional webserver users for a virtual server, which can be used to access website directories securely without the need for creating a separate Unix user.
Manage web apps
Virtualmin Professional provides automated installation of dozens of installable web applications, including blogs, wikis, content management systems, ad servers, ecommerce systems, and more.
List of installable web apps
Web app | Description | Categories | Incompatibilities |
---|---|---|---|
b2evolution | A multilingual multiuser multi-blog engine | Blog | |
Booked | A web-based resource scheduling system that allows administered management of reservations on any number of resources, such as conference rooms | Calendar | |
Bugzilla | Bugzilla is server software designed to help you manage software development | Tracker | |
CMS Made Simple | CMS Made Simple makes it easy to set up a site and then hand it over to non-techies to maintain | CMS | |
Coppermine | Coppermine is a multi-purpose fully-featured and integrated web picture gallery script written in PHP | Photos | |
Django | Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design | Development | |
DokuWiki | DokuWiki is a standards compliant, simple to use Wiki, mainly aimed at creating documentation of any kind | Wiki | |
Dolibarr | Dolibarr ERP/CRM is a powerful Open Source software to manage a professional or foundation activity (small and medium enterprises, freelancers) | Commerce | |
dotProject | An open source project management tool | Projects | |
Drupal | A full-featured content management/discussion engine suitable to setup a news-driven community or portal site | CMS, Community, Commerce | |
eGroupWare | EGroupware is an enterprise ready groupware software for your network | Calendar | |
eXtplorer | eXtplorer is a web-based File Manager | ||
Feng Office | A full-featured content management/discussion engine suitable to setup a news-driven community or portal site | ||
Flyspray | Flyspray is an uncomplicated, web-based bug and task tracking system | Tracker | |
Foswiki | Foswiki is the free and open source enterprise collaboration platform, a fork of TWiki | Wiki | |
Friendica | Friendica a decentralized social network communications platform | Community | |
Gallery | Gallery is a web based software product that lets you manage your photos | Photos | |
Ghost | Ghost is a powerful open source app for new-media creators to publish, share, and grow a business around their content | Blog | |
Grav | Grav is a free software, self-hosted content management system | CMS | |
Heimdall | Heimdall Application Dashboard is a dashboard for all your web applications. | ||
ionCube | IonCube is a PHP module extension that loads encrypted PHP files and speeds up webpages that are being displayed | ||
Joomla | Joomla is an open source content management system | CMS | |
LimeSurvey | LimeSurvey is a set of PHP scripts that interact with MySQL to develop surveys, publish surveys and collect responses to surveys | Survey | |
Magento | Magento is a new professional open-source eCommerce solution offering unprecedented flexibility and control | Commerce | Nginx |
Mantis | Mantis is a free popular web-based bugtracking system | Tracker | |
Matomo | Matomo is an open source web analytics software. It gives interesting reports on your website visitors, your popular pages and more | ||
Mautic | Marketing Automation Software | ||
MediaWiki | MediaWiki is a free Wiki software package, used to run WikiPedia | Wiki | |
MoinMoin | Advanced, easy to use and extensible WikiEngine with a large community of users | Wiki | |
Moodle | Moodle is a course management system (CMS) to help educators create effective online learning communities | CMS | |
Movable Type | The Movable Type platform makes it easy for you to both author content and interact with your community of readers | Blog | |
MyBB | MyBB is a free and open source, community-based forum software project managed, developed, and supported by volunteers | Community | |
Nextcloud | Nextcloud gives you universal access to your files through a web interface or WebDAV | ||
Node.js | Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications | Development | |
OpenCart | A powerful open-source shopping cart system that is designed to be feature rich and user friendly | Commerce | |
osTicket | osTicket is a widely-used open source support ticket system | ||
ownCloud | ownCloud gives you universal access to your files through a web interface or WebDAV | ||
PHP-Calendar | A web-based calendar and event scheduled written in PHP | Calendar | |
phpBB | A high powered, fully scalable, and highly customizable Open Source bulletin board package | Community | |
PHPList | PHPlist is a web application that implements a personalised mailing list manager or customer relationship management (CRM) system | ||
phpMyAdmin | A browser-based MySQL database management interface | Database | |
phpMyFAQ | phpMyFAQ is an open source FAQ system using PHP | Helpdesk | |
phpPgAdmin | A browser-based PostgreSQL database management interface | Database | |
Piwigo | Piwigo is a photo gallery software for the web. It comes with powerful features for publishing your photos and smart browsing capabilities | Photos | |
Pydio | Pydio turns your web server into a powerful file management system | ||
RainLoop | RainLoop is a simple, modern and fast web-based email client | ||
Revive Adserver | Revive Adserver is an open-source ad server, with an integrated banner management interface and tracking system for gathering statistics | Commerce | |
RoundCube | RoundCube Webmail is a browser-based multilingual IMAP client with an application-like user interface | ||
Simple Machines Forum | Simple Machines Forum (SMF) is a free, professional grade software package that allows you to set up your own online community within minutes | Community | |
SquirrelMail | SquirrelMail is a standards-based webmail package written in PHP | ||
SuiteCRM | A powerful open-source package for managing customer relationships | Commerce | |
Textpattern | A free, flexible, elegant, easy-to-use content management system for all kinds of websites, even weblogs | Blog | |
TikiWiki | A full featured free software Wiki/CMS/Groupware written in PHP | Wiki | |
Trac | Enhanced wiki and issue tracking system for software development projects | Tracker | |
TWiki | TWiki is a flexible, powerful, and easy to use enterprise collaboration platform | Wiki | |
TYPO3 CMS | TYPO3 CMS is a free and open-source web content management system | CMS | |
Vtiger CRM | Vtiger CRM is an open-source web-based customer relationship management application | Commerce | |
WebCalendar | A PHP application used to maintain a calendar for one or more persons and for a variety of purposes | Calendar | |
webtrees | A web application that allows you to publish your genealogy online, collaborate with family members and take control of your data. | Community | |
WHMCS | WHMCS is an all-in-one client management, billing & support solution for online businesses | Commerce | |
WordPress | A semantic personal publishing platform with a focus on aesthetics, web standards, and usability | Blog, CMS | |
X2CRM | X2CRM is a fast and compact marketing automation, sales force and customer service application powered by an easy to use website-optimized visual workflow engine | Commerce | |
Xoops | XOOPS is a free open-source content management systems | CMS | |
YOURLS | YOURLS allows you to run your own URL shortening service | ||
Z-Push | Z-Push is an open-source application to synchronize ActiveSync compatible devices | ||
Zen Cart | Zen Cart is a full-function e-commerce application for your website | Commerce | |
Zenphoto | Zenphoto is a standalone CMS for multimedia focused websites | Photos, CMS | |
Zikula | Zikula allows you to build simple one-page websites to individual web applications utilizing different types of extensions for making your project to something special | CMS |
This feature is popular with pretty much everyone, because it’s just so convenient. Even we use this feature heavily, because even though we aren’t intimidated by most install procedures for applications, we also like to save time and hassle.
If you plan to run more than one or two web applications, this feature will come in very handy. It not only makes installation a snap, it also makes it easier to upgrade in most cases. For applications with an automate-able upgrade process, you can upgrade to the latest version with the click of a button. You can also have Virtualmin notify you when new versions become available, and mass-upgrade all installations of an application on your system.
Resource usage graphs
Another popular feature is the resource usage graphs. This makes it easy to see how well your server is performing, how much memory is in use, CPU load, email and spam delivery rates, and many more variables, over time. In a commercial environment, it is extremely important to know about performance problems before they begin to affect your users. Likewise, when problems occur, it is important to be able to isolate the source of the trouble quickly. Comprehensive resource usage graphs can make those tasks much easier.
Environment limitations
In addition to the basic Jailkit functionalities in the GPL version, Virtualmin Professional offers enhanced features for more control and flexibility. These include the ability to reset the jail environment to its minimal state, providing a clean slate for reconfigurations. It also allows for the selective inclusion of additional tools and commands from specific sections of the /etc/jailkit/jk_init.ini file, such as git or apacheutils. Furthermore, users can efficiently manage extra commands and directories, ensuring necessary dependencies are handled automatically for a seamless jail environment setup.
This expanded feature set in Virtualmin Professional provides a robust solution for users seeking advanced control and customization in server environment management, particularly for security and isolation capabilities.
Resource limits
This feature allows you to define limits on CPU and memory use that apply to this virtual server and all sub-servers. Limits apply to both PHP scripts, and commands run via an SSH login. They can be used to prevent any one domain owner from overloading the system with a fork bomb or commands that use an excessive amount of RAM.
Edit web pages
This feature lets you create, upload, and edit HTML files directly on the virtual server, offering both a visual editor and a raw HTML editor for quick and flexible content modification.
External connectivity check
This feature checks the external accessibility of virtual servers, to run various tests to ensure that one or more virtual server’s web, DNS and mail servers are accessible from the rest of the Internet. This is useful for debugging various connectivity and configuration problems.
Search mail logs
This feature can be used to search the email logs for messages to some virtual server, or all servers if you are the master administrator, where you can select one or more of the following criteria, all of which must match: start date, end date, source address and destination address.
Cloud DNS providers
This feature is used to configure Virtualmin to use cloud DNS services (Cloudflare DNS, Google Cloud DNS, Amazon Route 53) other than your own system. These typically provide higher availability and faster DNS lookups to clients, for a cost per hosted domain.
Cloud mail delivery providers
This feature provides support for systems with dynamic IPs reliably send email by using outgoing SMTP providers, like Amazon SES.
Email server owners
This feature can be used to send email to the owners of the selected virtual servers, for example to announce system down-time, upgrades or other service alterations. Substitions such as ${USER}
, ${DOM}
, ${HOME}
and other can be used in the message body and subject.
Mailbox cleanup
This feature can be used to setup a mailbox cleanup policy that applies to some or all virtual servers on your system. Unlike the per-domain spam and virus folder cleanup settings, this policy applies to all folders of all users in each chosen domain, including the inbox. Message deletion can be based either on a time threshold, or a maximum mailbox size. Deletion based on message age is an easy way to setup a retention policy to limit the maximum age of stored messages.
Custom links
This feature allow the administrator to include additional links that appear in the left navigation menu when a virtual server is selected.
Remote DNS servers
This feature lets you add a remote DNS server running on another system managed by Virtualmin, allowing it to be used as primary or secondary to improve reliability or provide external DNS for specific virtual servers.
SSL providers
This feature allows you to choose from a variety of SSL certificate providers, including Let’s Encrypt, ZeroSSL, Google Trust Services, Buypass, SSL.com, Sectigo, and others. You can also set up automatic renewal of SSL certificates, choose between RSA and EC certificate algorithms, and check connectivity before requesting a certificate.
Secondary mail servers
This feature is used to add a secondary mail server that can also receive email for one of the virtual servers managed by Virtualmin, but only as a temporary relay rather than the final destination. It is wise to setup a secondary server for heavily used mail domains, to act as a backup or holding place in case the primary mail server is down.
Disk quota monitoring
This feature can be used to set up regular automatic checking of virtual servers that have reached or are approaching their disk quotas. It is most useful on systems that do not have group quota support, and thus depend on manual enforcement to ensure that servers do not use more than their allowed disk space.
Batch create servers
This feature allows you to create multiple virtual servers at once from a text file.
Backup encryption keys
This feature is used to create and manage GPG keys that Virtualmin can use to backup virtual servers. Encryption protects the contents of your backups when they are stored on an untrusted remote system (such as S3), and detects unauthorized modifications.