Here’s some context, I’m attempting to build a scalable web delivery system on AWS using horizonal scaling through load balancing and auto scaling - I only need Apache + PHP.
In order to achieve this, I want to build an EC2 image that leverages a shared volume (EFS) across multiple instances.
I have that part figured out in terms of making it work.
What I’m trying to figure out right now is whether it is possible to run the virtualmin setup and then completely turn off the web management GUI.
I want to avoid doing a manual install of Apache + PHP to avoid package inconsistencies between the base installation (Virtualmin) and a manual install of the corresponding packages.
The reason for this is that I’m going to keep one management instance running the virtualmin interface and then have the scaling group use an image that doesn’t include the GUI (only use resources to deliver web pages).
Note, I only plan on using Apache and PHP, none of the other server features will be in use (databases are external).
My question is:
Is it possible to turn off the GUI while still still keeping Apache and PHP functional?
Virtualmin, i.e. Webmin has a separate independent webserver. That said you can stop webmin.service from running, however it may prevent some internal Webmin cron jobs from running, like Let’s Encrypt renewals. Although, it’s not a problem to limit Webmin to only listen on local interface with bind=127.0.0.1 directive and only accept local connections using allow=127.0.0.1 directive in /etc/webmin/miniserv.conf config file.
If so, what would be the best way to do that?
You can also block access to Webmin port using firewall.
What I’m trying to figure out right now is whether it is possible to run the virtualmin setup and then completely turn off the web management GUI.
As I mentioned earlier it is technically possible, as you can solely rely on using super powerful Virtualmin CLI to manage your server.
My goal is to try to disable as much stuff as possible in order to allocate as many resources as I can to Apache+PHP. I don’t need the independent web service or any other services to run outside of serving php web content.
I’m running a virtualmin on a separate instance (with shared disk resources) that will handle the administrative part of things. In this case I’m less concerned with the SSL renewals or anything specific to Webmin/Virtualmin.
As I understand it then, I could simply disable any services I don’t need through Webmin, disable webmin.service (I assume sudo systemctl disable webmin.service on ubuntu) and this should turn off the independent web server for Webmin, thus only leaving me with Apache+PHP running in the background.