How to choose, use and configure a VPN in Zentyal Server (formerly eBox Platform) (My opinion)

Why These VPNs Shine on Zentyal Server

Operating Zentyal Server (formerly eBox Platform) in a small-to-medium business environment demands reliability, seamless integration and straightforward maintenance. Built atop Ubuntu LTS, Zentyal leverages the apt package manager and exposes most of its functionality through a polished web UI rather than a local desktop environment. Typical users are network administrators or IT managers who appreciate:

  • Automated updates via apt and Zentyal’s own repositories
  • Modular services managed by systemd
  • Headless operation (the server itself rarely runs a full desktop)
  • Strong community and commercial support for mission-critical deployments

Given these peculiarities, the best VPN solutions for Zentyal are those that integrate cleanly with Ubuntu’s packaging system, offer robust command-line tooling, and play nicely within a systemd-driven architecture. Here are the top contenders:

  • OpenVPN – Battle-tested, available in Zentyal’s core repos and as a web-UI module
  • WireGuard – Modern kernel-level VPN offering stellar performance, installable via PPA on Ubuntu bases
  • strongSwan – IPsec-based site-to-site and remote-access solution, fully packaged for Ubuntu

Comparison of Top VPN Solutions for Zentyal Server

Solution Protocol Type Kernel Integration Performance Ease of Setup Ubuntu Packaging Community Support
OpenVPN SSL/TLS User-space Moderate High (Zentyal module) Core repo Extensive
WireGuard Modern Crypto Kernel Excellent Medium (PPA) Ubuntu 20.04 Growing
strongSwan IPsec Kernel Good Medium Core repo Strong

Installation Configuration

1. OpenVPN on Zentyal

Zentyal even offers an OpenVPN module in its web UI, but you can manage everything manually via apt and easy-rsa for more control.

Step 1: Install the packages

sudo apt update
sudo apt install openvpn easy-rsa

Step 2: Create a PKI directory and generate certificates

make-cadir ~/openvpn-ca
cd ~/openvpn-ca
./easyrsa init-pki
./easyrsa build-ca nopass
./easyrsa gen-req server nopass
./easyrsa sign-req server server
./easyrsa gen-dh
openvpn --genkey --secret ta.key

Step 3: Deploy server configuration


DigitalOcean Referral Badge
sudo cp ~/openvpn-ca/pki/ca.crt /etc/openvpn/
sudo cp ~/openvpn-ca/pki/issued/server.crt /etc/openvpn/
sudo cp ~/openvpn-ca/pki/private/server.key /etc/openvpn/
sudo cp ~/openvpn-ca/pki/dh.pem /etc/openvpn/dh2048.pem
sudo cp ~/openvpn-ca/ta.key /etc/openvpn/

cat 

Step 4: Enable IP forwarding and start the service

sudo sed -i s/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/ /etc/sysctl.conf
sudo sysctl -p
sudo systemctl enable openvpn@server
sudo systemctl start openvpn@server

2. WireGuard on Zentyal

WireGuard delivers lightning-fast tunnels with minimal configuration. On Ubuntu-based Zentyal versions 20.04 and newer, you can install directly. For 18.04, add the official PPA.

Step 1: Add the PPA (if needed) and install

# Ubuntu 18.04 only
sudo add-apt-repository ppa:wireguard/wireguard
sudo apt update

sudo apt install wireguard

Step 2: Generate keypairs and create configuration

wg genkey  tee privatekey  wg pubkey > publickey

sudo mkdir -p /etc/wireguard
sudo tee /etc/wireguard/wg0.conf 

# Example peer:
#[Peer]
#PublicKey = 
#AllowedIPs = 10.0.0.2/32
EOF

sudo chmod 600 /etc/wireguard/wg0.conf

Step 3: Start the WireGuard interface

sudo systemctl enable wg-quick@wg0
sudo systemctl start wg-quick@wg0
sudo wg show

From here you can distribute the publickey, define peers in your wg0.conf, and extend as needed.

Wrapping Up

For most Zentyal deployments, OpenVPN fits perfectly thanks to its built-in module and kudos from the community, while WireGuard offers a no-nonsense, high-performance alternative. If you need site-to-site IPsec tunnels or advanced policy routing, strongSwan remains a solid third option. Whatever your choice, each integrates neatly with apt, systemd and Zentyal’s automated framework—ensuring that your network stays both secure and easy to manage.


G2A Referral Badge

Leave a Reply

Your email address will not be published. Required fields are marked *