Virtualmin behind Nginx Proxy Manager

SYSTEM INFORMATION
OS type and version Ubuntu 24.04
Virtualmin version GPL.

Hi everyone,

I looked at the forum to find my answers and also the FAQ but with all the (different) information I am not sure how to handle this and need your help.

I have NPM running in my selfhosted environment for several service using docker containers. Within in my router/firewall I forward HTTP and HTTPS traffic to my proxy, so I can access webservices from the internet with an Letsencrypt certificate.

I have installed virtualmin on a separated virtual Ubuntu server and can create virtualservers. But I should I make that work using the proxy server? Should I use different ports on the virtualserver configuration for HTTP and HTTPS and point NPM tot that IP and port number?

Kind regards,

Francis

If this virtual machine isn’t going to serve any websites using a web server like Apache or Nginx, you can set Webmin to listen on port 443 and make it accessible like a regular “website”.

Well, it is going to serve websites. I choose virtualmin exeactly for that. I want to host several wordpress websites

I don’t think you grasped @Ilia (maybe translation) response there is no need getting upset

ooh sorry, I was not upset. Sorry if I came through that way.

I am trying to understand. Should I point my reverse proxy to webmin on port 10000 for every web domain hosted on webmin? So for example, I have two web domains, website1.com and website2.com, should I put an entry in the reverse proxy server for every web domain pointing to the server IP on port 10000?

It’s really up to you! You could make those available for all records, or just set it up for one, like hostname:10000, for example. But, personally, I wouldn’t run Webmin behind a proxy — I’d keep it accessible independently on a dedicated IP. But again, it’s your choice!

That’s right — I love translating English into English. :wink:

No, you would proxy it to the IP of the Virtualmin server port 80 (since you’d have to terminate SSL on the NPM server).
I’m doing this myself at home and it works swell for some particular usecases.

ok, good information. So how did you make it work with wordpress application installed for example? because when I try to load https://mydomain.com/wordpress the request times out. I am also looking for a way to make it work so that when users type in the main domain wordpress is loaded.

You select the path or subdirectory during the install of WP from the install scripts.

Is it working on your local network? First make sure the Virtualmin server responds to requests, then proceed with hooking the proxy up infront.
I don’t have a vmin server on my network currently, but after adding the domain in vmin, add the same on NPM, requesting cert and so on, proxying to vmin-ip:80.
You need to disable any automatic redirect from 80->443 on vmin, otherwise you’ll get a loop.

Hi All,

Thanks you all for your help. It is working now with the tips in this thread. Now I continue to test Virtualmin and learn more about it.

Kind Regards,

Francis

1 Like

This topic was automatically closed 8 days after the last reply. New replies are no longer allowed.