I’ve been playing around with Webmin and Virtualmin now for a few days but I’m having difficulty understanding what exactly I need for what I’m trying to do
To explain where I’m at and where I want to go…
I’ll have an AWS Ubuntu Server instance and on this, I’ll be hosting a small Wordpress & Woocommerce site
I’ll have one primary domain for this site (mydomain.ie) and I’ll have 2 other domains re-directing to the primary (mydomain.co.uk and mydomain.net)
I have Webmin and Virtualmin installed and running. Webmin I understand - it’s primarily for managing the server / hardware but Virtualmin has me a bit stumped. I gather it’s primarily for managing numerous virtual servers or for managing numerous websites on the one server. Based on this understanding, it would seem that I should use Virtualmin as while I’ll have just one website, I’ll have 3 domains for this website. However, looking around the web it seems others are managing their websites just fine with Webmin alone
Can someone advise what might be best for my usage scenario. Will Webmin suffice or would Virtualmin be required for managing the website?
Virtualmin is the right tool for the job, unless you really like doing everything yourself. The purpose of Virtualmin is to automate the full-stack of stuff you need for a website: Apache VirtualHost, DNS, databases, mailboxes, application installation (mostly only in the Pro version, though GPL includes a handful of installable apps like phpMyAdmin, Roundcube, etc…Pro includes 100+ apps).
If you aren’t hosting mail, aren’t hosting your own DNS, and don’t need databases, then it becomes less obvious why you’d use Virtualmin. Setting up Apache virtual hosts in the Webmin module isn’t hard. Though, getting suexec and mod_fcgid working well can be tricky for beginners (and Virtualmin automates that, too), and from a security perspective, you probably want suexec.
I suppose the reason I asked do I need Virtualmin is 1. that I simply haven’t spent enough time learning the product (!) and 2. that from toying around with it here, I got the impression that using Virtualmin was creating a lot of duplication and overlap for just one website. What I mean is that within Webmin alone, I see that I can configure Apache (to some extent it seems), there’s MySQL configuration (I’ll be using PHPmyAdmin for this), there’s configuration for Mail Servers, DNS, etc. Yet despite the feature filled Webmin interface, when I proceed to setup a new server in Virtualmin, I’m being asked about email settings, DNS settings, setting up new user accounts, etc… and I’m thinking to myself why am I being asked this here when it’s already managed in Webmin!
It’s simply a lack of understanding that’s catching me. I’m having a difficult time visualising the role Webmin and Virtualmin play, how they interact with each other and what’s best managed where. But as always, time and patience with the product will overcome this
Your post is a good help, the gist being that Virtualmin eases and automates administration for websites. While I’m not managing my own DNS and Wordpress looks after it’s own databases - I’m undecided about mail serving. I had intended to farm mail for the domain out to a third-party, but if it can be done reliably, securely and without too much effort, I would like to have it running on the same server. Running just a small Wordpress website is a waste of a good AWS instance, even if it is only a lowly t2.micro
I’ll trudge on
I know it’s hard to believe, when taking a bird’s eye view of the thing, but there is almost no overlap in functionality between Webmin and Virtualmin (er, except the fact that Virtualmin includes Webmin, and both are available on a Virtualmin system, and Virtualmin is technically a set of modules for Webmin); the difference is whether you do the work yourself, or you outsource it to Virtualmin. Virtualmin removes the need to look in the Postfix module, the database modules (at least for setup), Apache module, etc. But, Virtualmin uses those modules to configure things. Both projects are by the same people (mostly Jamie)…they work together, and do not step on each others toes. I think you’d probably want to try out Virtualmin before deciding you don’t need it. I can do everything manually (I’ve written a book about system administration, and been managing web servers for half of my life), but I don’t see any reason to do so when there are good, reliable, predictable tools that’ll automate it.
If you’re on a t2.micro, you could run mail (that one has 1GB of memory, right?). It’d take about a third of the RAM for ClamAV and SpamAssassin (mostly ClamAV, which is an absolute beast…and not in a good way); Postfix and Dovecot are light, but the spam and AV filtering is very resource-intensive. But, if your websites aren’t high load that’d be fine.
Anyway, I think trudging on is the best bet here. You’ll find it is less of a trudge if you let Virtualmin do the work for you. Almost not a trudge at all, really.