News

Basic Zentyal Linux Server Management Tools for Sysadmins

Zentyal Linux Server Management Tools for Sysadmins

Zentyal Linux Server is an alternative to Windows Server. It is used by large companies and public administrations mostly as LDAP server and domain controller, but most widely adapted by small and medium businesses that usually need a domain and directory server and a number of other network services. Thanks to Zentyal’s graphical user interface (GUI) system administrators can easily manage with “point and click” over 20 network infrastructure management applications from Samba, BIND, OpenVPN to Dovecot and many other.

Many experienced Linux system administrators choose to use Zentyal Server because it helps them to configure and manage quickly their network infrastructure services and server deployments. Because Zentyal integrates Samba, it provides Windows-compatible active directory for Linux making it possible to manage Windows clients similarly to Windows Server. Having a GUI also makes Zentyal low-barrier-to-entry Linux server, making it easier to introduce co-workers to Linux.

Although Zentyal provides a way to configure lots of services “quickly” and to maintain them easily, it doesn’t free system administrators from having the basic system administration knowledge and skills. This post aims at pointing out few of these basic commands, logs and workflows that are necessary to successfully manage a Zentyal Linux Server.

Configuration files

So that you are able to manage a Zentyal Server, it is extremely important that you are familiar with the configuration files of each one of the services. When you configure a module through the Zentyal Server Web GUI, you are provided detailed information of each configuration file change on the services that are managed by the module. You should read the configuration file changes and understand what goes under the hood when you hit on “Save changes”.

Changes that will take place when DHCP module is enabled on Zentyal Server
Screenshot: Changes that will take place when DHCP module is enabled on Zentyal Server

Terminal

Zentyal Server is an Ubuntu-based distribution. You should feel comfortable working on Ubuntu Server with the terminal. Basic proceedings such as navigating the filesystem, copy, create or delete files and folders as well as the Unix permissions system are a must-have. Some commands as grep, find or less are the sysadmin work horses. Make sure that you are comfortable using them.

Most of the common issues are related to the installing or upgrading of packages. Although Zentyal manages these processes from the web GUI, sometimes you’ll have to work with apt and dpkg in order to collect the information needed to debug a problem and to fix it. Commands such as dpk –configure -a, dpkg -l, apt-get update, apt-get upgrade and their most common flags are another must-have.

These resources become handy to learn more about these commands:

Logs are the sysadmin’s most useful resource for checking the system health. You should be able to read and search on /var/log/syslog, /var/log/zentyal/zentyal.log, etc. The SystemD tools as systemctl and journalctl are useful too.

The networking related basic Linux commands are another requirement: ip and its subcommands and ss with their most common flags are constantly used tools. In general, you should be able to obtain any network information about your system. Some basic knowledge on networking is useful: you should know, at least, what an IPv4 is and how to calculate the broadcast IP and the network IP with the mask. What are the ports and how to check them is another useful piece of information.

Services managed by Zentyal Server

Make sure that you know the basics on Zentyal management workflow. It is very important that you are aware of the system status: is Zentyal waiting for you to save the changes? Are the necessary modules enabled? Zentyal does actually a great work giving you information about the system’s state and health. Read it carefully!

Information provided by Zentyal Server  before saving changes.
Screenshot: Information provided by Zentyal Server before saving changes.

Keep in mind that the best tools to understand a system are the logs.

If you go to “/etc/zentyal/zentyal.conf” and modify the parameter “debug = no” to “debug = yes”, you can then go to /var/log/zentyal/zentyal.log to see every single command that Zentyal Server runs in order to accomplish each task.

You have to know and understand the Zentyal web GUI and the meaning of all the features provided for each one of the modules. Zentyal doesn’t require you to be a “Samba wizard” (for example), but you should understand the meaning of some setting parameters or how to obtain information about them. A basic understanding of the software packages managed by Zentyal Server and the native tools offered for each one of them, are a must-have to manage the system. Below you can find few useful links for additional information regarding most important Zentyal modules:

Samba4

Mail services

DNS

Firewall – networking

Know the Zentyal Server filesystem

One final tip would be to get familiar with the Zentyal Server filesystem. Do you know where the Zentyal helper scripts are located? Or where the Zentyal services “stubs” are?

This command will give you the Zentyal file location on the Ubuntu host filesystem in real time:

# find /usr /etc /var -iname *zentyal* -type d -exec ls -lR {} \;

The ‘dpkg -L’ command will give you the list of files that it has installed (or would install) on your system. Use it with the Zentyal module packages:

#dpkg -L zentyal-core

Further information

The full official documentation for the latest version of the Zentyal Linux Server is available in English and in Spanish at https://doc.zentyal.org/ If you would like to learn more about configuring and managing Zentyal Servers or get certified, check out the official Zentyal Training Resources: Book, On-line courses and ZeCA certification exam.

To stay updated join our newsletter