After the basic installation, we can access to Webmin: https://yourserver:10000 (mini-server Webmin own SSL server). The target is to publish trough our Apache server in a own URL: http://webmin.yourserver.com/.
To do it we will use in the documentation
http://www.webmin.com/apache.html, the less intrusive method.
We will add the Proxy modules in Apache (the server redirects other server contents, the proxy_http module to make a Http requests proxy, and the ssl module to make cache in https protocol (it joins the miniserver):
elite:~# cd /etc/apache2/mods-enabled/
elite:/etc/apache2/mods-enabled# ln -s ../mods-available/proxy.conf proxy.conf
elite:/etc/apache2/mods-enabled# ln -s ../mods-available/proxy.load proxy.load
elite:/etc/apache2/mods-enabled# ln -s ../mods-available/proxy_http.load proxy_http.load
elite:/etc/apache2/mods-enabled# ln -s ../mods-available/ssl.conf ssl.conf
elite:/etc/apache2/mods-enabled# ln -s ../mods-available/ssl.load ssl.load
Add the following directives to our Virtual Host in Apache (in /etc/apache2/sites-available/default):
<VirtualHost *>
ServerName webmin.tuservidor.com
DocumentRoot /var/www/tuservidor
ProxyRequests Off
SSLProxyEngine On
ProxyVia On
<Proxy *>
AddDefaultCharset off
Order deny,allow
Allow from all
</Proxy>
ProxyPass / https://localhost:10000/
ProxyPassReverse / https://localhost:10000/
ProxyPassReverseCookieDomain localhost:10000 tuservidor.com
ProxyPassReverseCookiePath / /
</VirtualHost>
In Webmin configuration (/etc/webmin/config) add:
referer=webmin.sys.lebrijo.com
In /etc/webmin/miniserv.conf delete the line session=1 to login without cookies (I think that Webmin use GET method instead of POST method, getting variables from URL instead of cookies).
Finally, in our DNS server we must reference the webmin.tuservidor.com name. Add the record in the zone db.yourserver.com:
webmin IN A 85.48.162.99