Virtualmin and Webmin are Linux server administration tools for managing websites, domains, databases, email, DNS and SSL certificates from a browser. This guide walks through installing them on a supported Ubuntu or Debian server, setting up your first website and securing the control panel.
What Is the Difference Between Virtualmin and Webmin?
Webmin provides browser-based Linux system administration, including services, users, packages and network settings. Virtualmin extends Webmin with website and virtual hosting management, including domains, databases, DNS, email and SSL certificates. The official Virtualmin installer also installs and configures Webmin.
System Requirements
Prepare a fresh installation of a currently supported Ubuntu Server or Debian release, root or sudo access, a fully qualified hostname, working DNS, and enough memory, CPU and disk space for the services you plan to run. Check the official Virtualmin documentation for current OS support. Back up existing systems and avoid running the automated installer on a production machine with conflicting hosting services.
Step 1: Update Your Linux Server
sudo apt update
sudo apt upgrade
cat /etc/os-release
hostnamectl
Review updates and reboot if necessary, especially after kernel upgrades.
Step 2: Configure a Fully Qualified Hostname
Use a dedicated hostname such as server.example.com and ensure it resolves to the correct server address.
sudo hostnamectl set-hostname server.example.com
hostname -f
Replace the example with your actual hostname and verify DNS and local hostname resolution.
Step 3: Download the Official Virtualmin Installer
Download the installer over HTTPS from Virtualmin’s official distribution server:
curl -fsSLo virtualmin-install.sh https://software.virtualmin.com/gpl/scripts/virtualmin-install.sh
Inspect the downloaded script and verify its authenticity before running it with elevated privileges. Check the official installation documentation for any changes to installer paths or options.
Step 4: Install Virtualmin and Webmin
sudo sh virtualmin-install.sh
Follow the prompts and review the software components being installed. The installer configures Webmin, Virtualmin and selected hosting services. Do not disconnect your SSH session during installation.
Step 5: Sign In to the Control Panel
Open https://your-server-ip:10000/ or https://server.example.com:10000/. Port 10000 is Webmin’s default HTTPS management port. Sign in with an administrator account allowed by your Webmin authentication setup; this may be root or a sudo-enabled user, depending on the system. A temporary self-signed certificate may produce a browser warning; verify the server identity before proceeding.
Step 6: Complete the Post-Installation Wizard
Review resource usage, database configuration, DNS, mail service requirements and hostname resolution. Enable only the services you need. Run Virtualmin’s configuration re-check after completing setup to identify missing dependencies.
Step 7: Create Your First Website
In Virtualmin, choose the option to create a virtual server. Enter the domain, select the required features and create the server. Depending on your setup, Virtualmin can provision the website directory, user account, web server configuration, database, DNS and mail services. Point the domain’s DNS records to the correct server before expecting the site to resolve publicly.
Step 8: Secure Virtualmin and Webmin
Configure firewall access safely
Allow SSH before enabling a firewall, or you could lock yourself out. These examples assume SSH uses port 22:
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow from YOUR_ADMIN_IP to any port 10000 proto tcp
sudo ufw status numbered
Replace YOUR_ADMIN_IP with your trusted public IP, adjust the SSH port if needed, and account for any other hosted services. Only after checking access rules, enable UFW:
sudo ufw enable
Also check the firewall provided by your hosting company. Restrict Webmin management access wherever possible.
Configure SSL certificates
Use Virtualmin’s SSL certificate settings to request a certificate for a domain after DNS and validation prerequisites are met. Configure a suitable certificate for the Webmin hostname as well.
Other security practices
Keep packages updated, use strong authentication and MFA where supported, restrict administrator access, monitor login logs and maintain off-server backups.
Step 9: Set Up Backups and Monitoring
Configure regular backups of website files, databases, hosting configuration and mail data if used. Store copies off-server and test restores. Monitor CPU, memory, disk capacity and service availability before moving production sites onto the server.
Common Virtualmin and Webmin Installation Problems
Cannot access port 10000
sudo systemctl status webmin
sudo ss -lntp | grep 10000
Check the Webmin service, OS firewall and hosting provider’s firewall.
Invalid hostname warning
hostname -f
Verify the hostname and its DNS records.
Website does not load
Check DNS, web server status, virtual host configuration and firewall rules. Commands vary depending on Apache or Nginx.
SSL certificate request fails
Check domain resolution and the certificate authority’s validation requirements.
Installer fails on an existing server
Existing packages or custom configurations may conflict with the installer. Review the installation logs and avoid removing production services without backups.
Frequently Asked Questions
Is Virtualmin free?
Virtualmin offers a free GPL edition and commercial options.
Does Virtualmin include Webmin?
Yes. Virtualmin runs on Webmin and the official installer configures both.
Can I install Virtualmin on a VPS?
Yes, if the VPS meets supported OS and resource requirements.
Which port does Webmin use?
Webmin normally uses TCP port 10000 over HTTPS.
Can Virtualmin manage multiple websites?
Yes. It can manage multiple domains and virtual servers.
Does Virtualmin support Let’s Encrypt?
Yes, provided domain and certificate validation requirements are satisfied.
Conclusion
Virtualmin and Webmin simplify Linux server and website administration. Start with a supported operating system, use the official installer, verify DNS and secure management access before hosting production sites. Explore DigitalBerg VPS hosting, dedicated servers and the DigitalBerg knowledge base for related infrastructure guidance.
DigitalBerg Technical Team