Zentyal Server 6.2Zentyal is an Ubuntu-based server distribution which is designed to be easy to set up and then manage using a friendly, web-based interface. The distribution targets small and medium office and business environments. The Zentyal distribution is intended to take on such tasks a as a storage server, Internet gateway, or to provide other office IT infrastructure - all through a convenient, point-n-click web portal.
The latest version of Zentyal is based on Ubuntu 18.04.4 and mostly features minor updates. There are new anti-virus packages, improved DNS management, easier management of hard drives, and the AppArmor security software is enabled by default.
The download for Zentyal is 1GB in size and is available for 64-bit (x86_64) machines only. Booting from the install media brings up a menu asking us to select our preferred language from a list. Then we are given the choice of wiping the hard drive and installing Zentyal or launching an expert installer. Both menu options launch a text-based installer which should be familiar to people who have set up Ubuntu Server or used Debian's text installer.
Setting up Zentyal through the expert install mode brings up a series of text-based menus where we are asked to supply our preferred language (again), choose our keyboard layout, time zone, and to make up a username and password for ourselves. The installer then asks if we want to use guided or manual partitioning. The former takes over the entire disk, creating an ext4 formatted LVM volume, while the manual option walks us through an unusually long series of partitioning and filesystem options screens.
The installer then asks if we would like to install a graphical desktop environment (LXDE in this case). Packages are copied to our hard drive and then we are presented with a few more configuration steps. We are asked if we wish to enable a web proxy and if we want to install the GRUB boot loader. Then we confirm our system clock settings and the system offers to restart itself.
The installer uses an unusual combination of white text on a bright green background for text entry boxes which I found difficult to read. The rest of the interface uses a high contrast, but entering text into fields was hard on the eyes.
After the installer finished its work and offered to reboot the computer I ran into my first serious issue. The shutdown process started off well, showing systemd status messages about services being shutdown. However, the process took a long time. In fact, once the system reached a point where it was reportedly cleaning up temporary directories and had been stuck on that task for 15 minutes (longer than the installer had taken to set up the operating system) I finally forced a hard reset.
Zentyal booted and, after performing a quick filesystem check, brought me to a text console. (I had opted not to install the desktop environment.) I could sign in with the credentials I had supplied to the installer and was able to confirm my Internet connection worked. I was able to shutdown the system (reboots happened quickly and were error-free at this time), and some basic command line programs worked.
Once I got logged in I noticed a few oddities with Zentyal. The first was that the operating system identified itself as Ubuntu 18.04.4 LTS rather than Zentyal Server 6.2. Which makes some sense since Ubuntu is this project's parent. The message which is displayed when the user logs in indicates that the web interface can be accessed by pointing a web browser to the server's IP address and using port 8443 over the HTTPS protocol.
Attempts to connect to port 8443 were refused. As were connection attempts to communicate over port 443. Attempts to connect with port 80 (the default HTTP port) worked, but only showed a generic home page for the nginx web server.
At this point I tried to install the telnet client to help me troubleshoot the connection issues and found my package database was a mess. I had to run "dpkg --configure -a" to fix it. This seemed odd as the APT package tools had not been used yet since the installation had completed. After letting dpkg run I was able to install telnet and confirm only ports 22 (for OpenSSH) and 80 (for the generic nginx install) were available. There were no services listening on port 8443. This remained true after a reboot and so I decided to start over from scratch.
Things had gone poorly enough the first time trying Zentyal that I decided to be extra careful the next time around. I double-checked the distribution's ISO checksum, decided to try running it in a virtual machine to avoid any potential hardware incompatibilities, and then opted to take the automated installation option.
As it turns out, the automated install option walks us through almost all of the same steps as the expert installer. We are asked the same questions about language, keyboard layout, time zone, and login credentials. There appear to be just three differences in the automated version of the system installer. The first is we are warned partitions on the main hard disk are already mounted and asked if they should be unmounted before the disk is partitioned. Since the plan is to wipe the disk, umounting partitions seemed wise. Though I'm not sure why any partitions would be mounted by the installer to begin with.
The second difference is that the installer handles disk partitioning, setting up an LVM volume and formatting it with ext4 rather than have us set up partitions and mount points. The third difference is the installer does not ask if we would like to install a graphical desktop, it just assumes we want the desktop. This causes LXDE to be installed, along with a handful of X.Org and Wayland libraries.
Zentyal Server 6.2 -- Exploring the LXDE menu (full image size: 52kB, resolution; 1920x1200 pixels)
The installation process finished, indicated it was successful and offered to restart the system. Once again Zentyal got stuck shutting down. Background services stopped gradually for a few minutes, then got stuck cleaning out temporary directories. The system at this point appeared to be idle (hard drive and CPU activity were minimal) and remained stuck for the next twenty minutes. Eventually I forced a restart.
This time my fresh copy of Zentyal booted to a graphical environment. I could sign into the LXDE desktop where the Firefox browser opened and automatically attempted to connect to the localhost. This connection failed and, again, all connections (either over HTTP or HTTPS) failed to reach port 8443 and succeeded on port 80 where the generic web server was running. I tried to take a screenshot of this error and discovered that the keyboard shortcut for screenshots was mapped, but to a GNOME screenshot application that was not available. This broken shortcut feels all the more out of place given Zentyal uses the LXDE desktop rather than GNOME.
Zentyal Server 6.2 -- Trying to take a screenshot of Firefox connecting to the Zentyal server (full image size: 96kB, resolution: 1920x1200 pixels)
I wanted to use the nmap tool to scan local ports and see which services were available. I soon found that nmap was installed, but one of its dependencies (libblas) was missing, causing the tool to not run. I could reinstall nmap through the APT package manager and a scan turned up no new services, other than OpenSSH and nginx showing its generic home page.
After my second failed attempt at using Zentyal, and some troubleshooting, I came to the realization the distribution was not going to work as expected and put it aside. According to the documentation, I should be able to simply install the distribution and connect to it using a web browser, but this did not work, either locally or over the LAN. This was disappointing as I have used Zentyal in the past and generally had positive experiences with it. I've even recommended the distribution to a few people who wanted to run a light office server with an easy, point-n-click interface.
I have three theories as to why Zentyal did not work for me this time around. One is that the documentation is out of date (or updated in places I'm not looking) and additional steps are now required to set up the web portal service. The second is that there is a bug in the web portal software that is preventing it from running.
Personally, I suspect neither of these are true and, instead, something (or multiple somethings) are going wrong during the setup phase. While the installer appears to finish copying its files to my hard drive and reports it is done, the fact the system does not shut down cleanly afterwards suggests something is not finished in the background. The shutdown services never conclude and, while disk and CPU activity was virtually non-existent all twenty minutes I waited, I suspect additional configuration steps were supposed to be happening during that time. It is hard to say for certain though since no status messages are displayed and the installer claims to be finished. I would also consider it odd for services to be enabled during the shutdown phase of the live media, but stranger things have happened.
Whatever the case, Zentyal did not work for me and, unfortunately, did not display any errors or status messages which would help explain why. The documentation, while normally helpful, did not offer any tips to help me get going. In the past Zentyal has proven to be easy for me to use, but this version has left me with a server-sized void to fill.