Security Hardening for Club Websites on Your Own Virtualmin Server: The Practical Checklist
Effectively protect your club website on your own Virtualmin server from attacks. Our practical checklist shows you how to close the most common security gaps with Fail2ban, SSH keys, two-factor authentication, restrictive file permissions, and automatic backups.
Security Hardening for Club Websites on Your Own Virtualmin Server
Club websites are often a popular target for attackers, as they frequently manage sensitive member data and are not always maintained regularly. If you run your website on your own Virtualmin server, you have full control over security. In this checklist, we show you how to ward off the most common attack vectors with simple measures.
1. Fail2ban: Automatic Defense Against Brute-Force Attacks
Fail2ban is an indispensable tool that monitors failed login attempts and, after a specified number of failed attempts, blocks the attacker's IP address. This effectively prevents brute-force attacks on SSH, FTP, and web applications.
- Installation: On most Linux distributions, Fail2ban can be installed quickly:
apt install fail2banoryum install fail2ban. - Configuration: Adjust the file
/etc/fail2ban/jail.localto enable monitoring for SSH and other services. Setbantime,findtime, andmaxretryaccording to your requirements. - Virtualmin Integration: Virtualmin offers integrated Fail2ban management. Under Webmin > System > Fail2ban, you can enable and monitor jails.
2. SSH Keys Instead of Passwords
Logging in via SSH with a password is vulnerable to brute-force attacks. Using SSH keys is better and significantly more secure.
- Generate a key pair: On your local machine:
ssh-keygen -t ed25519(or RSA with 4096 bits). - Copy the public key to the server:
ssh-copy-id user@server. - Disable password authentication: In
/etc/ssh/sshd_config, setPasswordAuthentication noandChallengeResponseAuthentication no. Restart the SSH service. - Restrict root login: Set
PermitRootLogin prohibit-passwordorno.
3. Two-Factor Authentication (2FA) for Virtualmin
Virtualmin supports two-factor authentication via TOTP (Time-based One-Time Password). This provides additional protection even if your password is compromised.
- Activation: Under Webmin > Webmin Users > Two-Factor Authentication, you can set up 2FA for your account.
- Apps: Use apps such as Google Authenticator, Authy, or FreeOTP.
- Backup codes: Store the generated backup codes securely in case you lose your device.
4. Restrictive File Permissions
Incorrectly set file permissions are a common security gap. Make sure that only necessary users have access to sensitive files.
- Web directories: Files should be owned by the user, the web server process (e.g.,
www-data), and should not be world-readable. Set directories to755and files to644. - Configuration files: Critical files such as
wp-config.phpshould be set to600or640. - Regular review: Use tools such as
findor Virtualmin's file manager to detect insecure permissions.
5. Automatic Backups
Regular backups are your insurance against data loss and attacks. Virtualmin offers integrated backup functions.
- Backup schedule: Under Virtualmin > Backup and Restore > Scheduled Backups, set up daily or weekly backups.
- Storage location: Store backups externally, e.g., on a remote server or cloud storage.
- Encryption: Encrypt backups with GPG to protect sensitive data.
- Testing: Regularly check the restoration to ensure that the backups work.
Additional Security Measures
In addition to the points mentioned above, you should also consider the following aspects:
- Regular updates: Keep Virtualmin, the operating system, and all applications (e.g., WordPress) up to date.
- Firewall: Use a firewall such as UFW or iptables to open only necessary ports.
- SSL/TLS: Encrypt data traffic with Let's Encrypt certificates, which Virtualmin can manage automatically.
- Monitoring: Monitor logs and use tools such as Logwatch or OSSEC to detect suspicious activity.
With these measures, you significantly increase the security of your club website on your own Virtualmin server. If you don't yet have a suitable server, we offer powerful Virtual Servers and web hosting solutions. For your domain registration or management, our domain management is available to help. If you have any questions, you can contact our support at any time.
