Looking for help installing Virtualmin on FreeBSD 13.1

Thank you, @JeremyHorland. What’s the best way to contact you directly - I can do a Discord or the like, and we can talk live. I have a Google Doc I am keeping notes in as I go through the process.

Installing the three *min apps is not the hard part - it’s all the options and modules that need to be configured by hand. I’ve got a FreeBSD jail up and running at the moment, but I’m still slogging through the various individual settings to get it to work.

I assume y’all have seen our generic manual installation doc: Manual Installation – Virtualmin

It’s vague, by necessity. But, it at least lists some of the expectations that Virtualmin has (though can be configured very differently). If you want it to act like our docs and most of the conversations here, you’ll probably want to hew to standard package selection and configuration, as best you can.

I also used to talk about FreeBSD quite a bit in the forums (mostly cursing), but a lot of the rough stuff has been polished out over the years, so probably not necessary or useful now. Like, you definitely don’t need to recompile the kernel now, and you probably don’t need to rebuild Apache for suexec in /home (you can probably use fcgiwrap).

The https://webmin.com/download/ page of the Webmin website currently links to Download webmin-2.105.tar.gz (Webmin) for installations on FreeBSD. That page at SourceForge automatically downloads the current Webmin installer to the default download directory set by the Web browser. An automated installation script must be able to properly handle redirects if the webmin-current link on the Webmin website is used. The curl utility handles this very well. I wrote a script that employs curl to automatically install Webmin on FreeBSD:

#!/bin/sh
# InstallWebminOnFreeBSD.sh
# This script installs the current version of Webmin on a FreeBSD system.
# Unix conventions for user directories are followed.
# This installation method enables Webmin to upgrade itself without causing 
# the FreeBSD security system to detect this as installed package corruption.
#
# Install or update curl so it can be run to download Webmin.
sudo pkg install --yes curl
#
# Install or update the Webmin dependencies.
# Visit https://www.freshports.org/sysutils/webmin/ to check the current dependencies.
sudo pkg install --yes p5-Authen-PAM p5-IO-Tty p5-Net-SSLeay python3 perl5
#
# Download the current Webmin installer to the temporary directory.
sudo curl --location --output-dir /tmp --output webmin-current.tar.gz \
https://www.webmin.com/download/webmin-current.tar.gz
#
# Extract Webmin to the user local library directory.
sudo tar --extract --directory /usr/local/lib --file /tmp/webmin-current.tar.gz
#
# Remove the no longer needed Webmin installer.
sudo rm /tmp/webmin-current.tar.gz
#
# Set environment variables for the Webmin configuration log and perl directories 
# and run the Webmin setup script to setup the various configuration files.
# This command presumes that the name of the extracted Webmin directory 
# begins with “webmin-” followed by text indicating the version.
sudo env config_dir=/usr/local/etc/webmin var_dir=/var/log/webmin \
perl=/usr/local/bin/perl /usr/local/lib/webmin-*/setup.sh

I tested this installation script on a FreeBSD 13.2 system. The script can be copied and pasted into an interactive command shell, or can be saved as a file named “InstallWebminOnFreeBSD.sh” in the /tmp directory and run by entering “sudo sh /tmp/InstallWebminOnFreeBSD.sh” at the command prompt.

The script works, but I’ve noticed that your process / scripts only install Webmin, and not Virtualmin. Is this something that can be added, or am I missing something?

Virtualmin is one of many Webmin modules that can be installed into Webmin. See: Webmin Modules and Webmin Modules - Webmin Documentation. The Webmin installation is the necessary first step before modules can be installed. Virtualmin is available as a GPL version or as a Pro version with extra functionality. The GPL download directory is Index of /download/virtualmin. As of this writing the latest GPL Virtualmin version for installation into Webmin on FreeBSD is virtual-server-7.7.gpl.wbm.gz. There currently appears to be three patched versions of Virtualmin in a different directory at Index of /vm/7/gpl/wbm, with the latest being virtual-server-7.7.gpl-3.wbm.gz. I have not tried any of these Virtualmin module versions yet, but the third patched version is probably the best choice at the time of this writing. As referenced earlier in this discussion, a Virtualmin installation package for FreeBSD exists, but that should install an older version of Virtualmin since the Webmin packaged installer for FreeBSD currently installs an older version of Webmin. It seems best to install a current version of Virtualmin since the script that I wrote installs a current version of Webmin. The Virtualmin module can be installed from the Webmin Modules page accessed from the Webmin Configuration page within Webmin.

The script works, but I’ve noticed that your process / scripts only install Webmin, and not Virtualmin. Is this something that can be added, or am I missing something?

<+>-=-<+>-=-<+>-=-<+>-=-<+>-=-<+>-=-<+>

SCARAMELLA & HOOFNAGLE
Attorneys at Law
~ * ~
Voice: 856-424-2100
Web: http://www.ScaraHoof.com

<+>-=-<+>-=-<+>-=-<+>-=-<+>-=-<+>-=-<+>

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