How can I add SSL certification for something OTHER than one of the Virtualmin servers ?


Debian Wheezy + Webmin&Virtualmin here. Setup by a professional I hire for the server installation every few years and heavy critical works like RAID deaths. I take care of the rest.

I have already added SSL certification for some of the domains I am hosting on my server, that much, I can understand. For this, I have been using the certificates given for free by Wosign dot com, but I imagine any other SSL organism would have been the same.

However, I confess, I have absolutely no idea how I can add SSL for something other than my domains that are servers in Virtualmin.

Two things, more precisely:
I have an Alias for PhpMyAdmin on
https:// my.server.IPV4.adress. /phpmyadmin-something/
And I have Webmin and Virtualmin themselves on
https:// my.server.IPV4.adress :10000/

They are, so far, self-signed.
But I want them to have a real valid SSL certificate.
I can’t ask the technician doing the heavy works on my server, he would charge me for this, and I’d rather learn to do it myself.

However, my web searches fail, here. I only find how to add SSL for a domain, not for an IP. And I’d have to do it outside of webmin/virtualmin to make it work, right ?

Please, could I humbly ask for help, here ?
Either if you can point me in the right direction, tell me where and what for to search, or (the fact I never witnessed one doesn’t formally disprove the existence of miracles!) would you perhaps know of a guide explaining how to do it ?

Thank you VERY MUCH if you can help!


Hmm, is it an option to setup a domain (or even sub-domain) for those sites, rather than using an IP address? That might simplify things a bit. Then you could just use Virtualmin to handle that for you… especially now that Let’s Encrypt is supported, and you can get a free SSL cert.

If you had a Virtual Server for your web apps, you could just go into Server Configuration -> Manage SSL Certificates -> Let’s Encrypt, and there you can obtain a free Let’s Encrypt SSL cert.

Also, in the Manage SSL Certificates screen, you could use the Copy to Webmin button to setup Webmin/Virtualmin with that same cert.



(thanks for your reply, first!)

I never even considered the possibility… You mean…
(1) I would purchase a domain, like “
(2) in my registrar options, I would setup this domain to redirect to the IP adress of my server, the “my.server.IPV4.address” that I wrote in my post above
(3) I would open virtualmin on my server, and add this domain to the domains managed by webmin/virtualmin
(4) and from there, I would configure SSL as for any other domain

Is this really what you are suggesting ?
(This looks like it could work, but I can’t help finding it odd, you add to virtualmin the URL from which you plan to manage virtualmin…)

OK, I tried it, registering a cheap domain, redirecting the domain to my server, and later on, adding that domain to virtualmin.

Problem: the domain addition to virtualmin must have the option “SSL enabled”… but this option can only be added if we choose to setup a website for this domain.

That’s a conflict, it’s a domain to load the webmin/virtualmin panel and nothing else, so it cannot play host to a website :frowning:

Would anyone have an idea on how to prevent this, perhaps ?

Okay, a final update :slight_smile:
I know it’s a soliloquy, but if other people have the same problem as I do and end here after a web search, I hope it may help them.

I experimented around those last days, and finally got a setup to work.

  • purchased a super cheap domain
  • got the registrar to point it to my server, not redirection but like a normal website
  • had to create the website on virtualmin, as a real website, enabling the website feature that is required by the SSL option
  • installed letsencrypt ( following )
  • and to my pleasant surprise, it worked! The cheap domain loads a “real” website (actually, I uploaded only one file, a dancing_banana.gif) when I test it normally, with both http and https. But if I add :10000 this is virtualmin and webmin that load. Woot!

I have only one last issue, server-wise PhpMyAdmin. My “official” phpmyadmin that I load with an Apache alias in https://my_server_ipv4/my_phpmyadmin_alias won’t work with https://mycheapdomain/my_phpmyadmin_alias. It just triggers the download of a php file (the “front” page of phpmyadmin).
No idea how to solve it yet.