Network configuration service (DHCP)В¶
Zentyal uses ISC DHCP Software  to configure the DHCP service, which is the de facto standard on Linux systems. This service uses the UDP transport protocol, port 68 on the client and port 67 on the server.
DHCP server configuration with ZentyalВ¶
The DHCP service needs to be deployed on an interface configured with a static IP address. This interface should also be internal. From the menu DHCP you can find a list of interfaces on which you can offer the service.
Interfaces on which you can offer DHCP
Once you click on the configuration option of one of these interfaces, the following form will appear:
DHCP service configuration
The following parameters can be set in the Common options tab.
Default gateway: This is the gateway that clients will use to communicate with destinations that are not on your local network, such as the Internet. Its value can be Zentyal, a gateway set Network вЂЈ Routers or a Custom IP address. Search domain: This parameter can be useful in a network where all the hosts are named under the same subdomain. Thus, when attempting to resolve a domain name unsuccessfully (for example host), a new attempt would be carried out by adding the search domain at the end (host.zentyal.lan). Primary name server: It specifies the DNS server that clients will use first when they have to resolve a domain name. Its value can be Local Zentyal DNS or the IP address of another DNS server. If you select your own Zentyal as the DNS server, make sure that the DNS module  is enabled. Secondary name server: DNS server to be used by clients in case primary DNS server is unavailable. Its value must be an IP address of a DNS server. NTP server: NTP server that clients will use to synchronise their system clock. It can be None, Local Zentyal NTP or the IP address of another NTP server. If you select your own Zentyal server as the NTP server, make sure that the NTP module  is enabled. WINS server: WINS server (Windows Internet Name Service)  that clients will use to resolve names on a NetBIOS network. It can be None, Local Zentyal or another Custom. If you select your own Zentyal server as the WINS server, make sure that the File Sharing module  is enabled.
Under these options, you can see the dynamic ranges of addresses and static allocations. For the DHCP service to work properly, you should at least have a range of addresses to distribute or static allocations; otherwise the DHCP server will not allocate IP addresses even when listening on all network interfaces.
Configuring DHCP ranges
Address ranges and static addresses available for assignment from a certain interface are determined by the static address assigned to that interface. Any available IP address of the subnet can be used in ranges or static allocations.
In order to add a range in the Range section you have to introduce a name to identify the range and the values you want to assign within the range listed above.
You can perform static assignment of IP addresses to specific physical addresses in the Fixed addresses section. To fill this section you need an object which members are pairs of host IP addresses (/32) and MAC addresses. You can create this object from Network вЂЈ Objects or directly in the quick menu offered in the DHCP interface. An address assigned in this way can not be part of any range. You can add an optional Description for the allocation as well.
You can see DHCP clients using dynamic allocations (static allocations will not be shown) thanks to a widget that will appear in the Dashboard:
Client with dynamic allocation enabled
|||See Domain Name System (DNS) section for details.|
|||See Time synchronization service (NTP) section for details.|
|||See Domain Controller and File Sharing section for details.|
Dynamic DNS optionsВ¶
The dynamic DNS options will allow to assign domain names to DHCP clients through the integration of DHCP and DNS modules. Thanks to this it is easier to recognize machines located in the network: they can be recognized by an unique domain name instead of an IP address that might change.
Configuration of dynamic DNS updates
To use this option, you must go to the tab “Dynamic DNS options” and to enable the feature, the DNS module must be enabled as well. You must have both Dynamic domain and Static domain: both will be added automatically to the DNS configuration. The dynamic domain will host the names of those machines which IP addresses belong to the range and the name associated is the one sent by the DHCP client, usually the host name. If none is sent, the pattern dhcp- . will be used. If there are any conflicts with a static allocation, the established static address will be overwritten manually. As to the static domain, the host name will follow this pattern: . . The name will be the one registered in the object used in the static allocation.
Advanced DHCP options
The dynamic address allocation has a time limit. After expiry of that time a renewal must be requested (configurable in the Advanced options tab). This time varies from 1800 seconds to 7200. This limitation also applies to the static allocation.
Zentyal supports remote boot for thin clients through DHCP. In the Advanced options tab you can configure a thin client that will be published through DHCP. Select the remote host in Host and in File route select the route to find the image within the server.
Finally, there are two more options available — for comercial editions only — :
Allow to connect to TFTP servers to use VoIP.
Allow to connect to a ShoreTel Director server.
Generally speaking, Zentyal is meant to be installed exclusively on one (real or virtual) machine. However, this does not prevent you from installing other applications, that are not managed through the Zentyal interface, like for example a database engine. These applications must be manually installed and configured.
Zentyal runs on top of Ubuntu  server edition, always on LTS (Long Term Support) . LTS editions have longer support periods, covering five years.
You can install Zentyal in two different ways:
- Using the Zentyal installer (recommended option),
- On top of an existing Ubuntu Server Edition installation.
In the second case the official Zentyal repositories must be added , after updating the software sources, you can install Zentyal base system and any of the modules.
However, in the first case, the installation and deployment process is easier as all dependencies are found on a single DVD or USB. Another benefit of using the DVD or USB is to have a graphical environment that allows the use of a web interface and desktop environment from the server host itself.
|||Ubuntu is a Linux distribution developed by Canonical and the community, focused on laptops, PCs and servers: http://www.ubuntu.com/.|
|||For a detailed description about the publication of Ubuntu versions it is recommended you consult the Ubuntu guide: https://wiki.ubuntu.com/Releases.|
|||For more information about installing from the repository please go to https://wiki.zentyal.org/wiki/Installation_Guide|
It is recommended to have an Internet connection available for the host where you are installing Zentyal, this way, the most recent updates and fixes will be installed automatically.
The first iteration of the Zentyal installer is based on the Ubuntu Server installer. Those already familiar with this installer will find the installation process very similar.
The steps below apply to all Zentyal editions, but if you are installing a commercial edition, you will be asked for a valid license key (obtained when you purchased your edition), otherwise the installation process will not continue.
To start with, you choose the installation language, in this example English is chosen.
Selection of the language
You can install Zentyal by using the default mode which deletes all disk contents and creates the partitions required by Zentyal by using LVM  or you can choose the expert mode which allows customized partitioning. Most users should choose the default option unless they are installing on a server with RAID software or they want to create special partitioning according to specific requirements. Using the expert mode you can also choose to perform a headless installation (without local desktop environment).
In the next step you have to choose the language for the installer interface, which will be the default language for the installed system as well.
Then you are asked for your geographical location, in this example the United States is chosen.
You can use automatic detection for setting the keyboard: a few questions are asked to ensure the model you are using is correct. Otherwise, you can select the model manually by choosing No.
Keyboard configuration 1
Keyboard configuration 2
Keyboard configuration 3
If you have multiple network adapters, the installer will ask you for your primary one, the one that will be used to access the Internet during the installation. The installer will try to auto configure it using DHCP. If you only have one interface, you will not see this step.
Select primary network interface
Now choose a name for your server: this name is important for host identification within the network. The DNS service will automatically register this name. Samba will also use this host name by default.
Next, the installer will ask you for the administrator account. This user will have administration privileges and will be used to access the Zentyal interface.
In the next step you are asked for the user password. It is important to note that the user defined earlier, can access, using the same password, both system (via SSH or local login) and the Zentyal web interface. Therefore you must be really careful to choose a secure password (more than 12 characters including letters, numbers and symbols).
Here, insert the password again to verify it.
In the next step you are asked for your time zone. It is automatically configured depending on the location chosen earlier, but you can modify it if the guessing is not correct.
The installation progress bar will now appear. You must wait for the basic system to install. This process can take approximately 20 minutes, depending on the connection and performance of the hardware.
Installation of the base system
Once installation of the base system is completed, you can eject the installation CD and restart the server.
You have completed the first iteration of the installation. After reboot, the system will automatically launch a desktop session with a web browser where you can perform the remaining steps. The first boot will take longer than then next ones, as it needs to initialize the core Zentyal modules.
Your Zentyal system is now installed! A graphical interface in a web browser is displayed and you are able to access the administrative interface. The first boot will take an extra time while it configures core Zentyal modules. You will notice that the first time you boot, the graphical environment is automatically started in order to ease the process. Next boot sequences will require you to authenticate first.
Graphical environment with administrative interface
You need to provide the username and password configured in the last steps to continue with the process. Later on, you can add any system user to the sudo group. This user will be able to access the web GUI and, of course, the local operative system as root.
|||LVM is the logical volume manager in Linux, you can find an introduction to LVM management in http://www.howtoforge.com/linux_lvm.|
When you access the web interface for the first time, you will be presented a configuration wizard.
Any of the parameters that you configure using this wizard can be modified later on accessing the appropriate service or component configuration.
First of all, you will be asked about the functionality that you want to install and configure in your server. Some of these components depend on others, but Zentyal will manage those dependencies automatically. The next steps of this wizard will depend on the functionality you choose here. In any case, you can install/remove/update any of the components later on from the server’s interface.
For this example, the Domain Controller, Groupware and Firewall components will be installed.
Zentyal will inform you of the dependencies that will be installed to support the components you have chosen in the previous step.
The system will start the installation process of the required modules. Progress bar shows information of the modules being installed and you are provided information regarding the commercial version.
Next, you will be asked for the basic network information. First of all, which interfaces are External (generally speaking, connected to the Internet gateways), and which ones are Internal (generally speaking, LAN interfaces). This will impact the firewall default policies, network masquerading, default listen interfaces for other modules, etc.
Next, you will carry out basic configuration of each one of these interfaces. External interfaces can be configured using DHCP, if you have another network device providing the leases. In any case, if you use DHCP to configure any of the Zentyal interfaces, it is recommended to use an static lease.
Next you need to choose the domain associated to your server and the type of server, you have these options:
- Standalone: First domain controller of the domain.
- Additional domain controller: Join an existing domain as an additional controller.
For the sake of simplicity, Standalone mode will be selected for this example. You can read more about the other directory modes in the Domain Controller and File Sharing chapter.
To configure this mode, you only need to specify the domain name for your directory entities. Be careful not to confuse this with the DNS domain, which is a highly related, but actually different context.
In the next step, you will choose the default virtual mail domain. By default, the domain name will be used to autocomplete this form, but that may not be your case.
Zentyal will proceed to apply the initial configuration for the installed components.
And, that’s it! Your Zentyal server is ready to be used.
Now you can access the Dashboard and the specific configuration of each one of the components. In the next chapter, you can go through the basic concepts and behavior of the Zentyal GUI.
Zentyal runs on standard x86_64 (64-bit) hardware. However, you must ensure that Ubuntu Xenial 18.04 LTS (kernel 4.15) supports the hardware you are going to use. You should be able to check this information directly from the vendor. Otherwise you can check Ubuntu Linux Hardware Compatibility List  or Google Search.
The Zentyal server hardware requirements depend on the modules you install, how many users will use the services and what their usage patterns are.
Some modules have low resource requirements, like Firewall, DHCP or DNS. Others, like Mailfilter or Antivirus need more RAM memory and CPU. Proxy and File sharing modules benefit from faster disks due their intensive I/O usage.
A RAID setup gives a higher level of security against hard disk failures and increased speed on read operations.
If you use Zentyal as a gateway or firewall, you will need at least two network cards, but if you use it as a standalone server, one network card is enough. If you have two or more Internet connections, use one network card for each router or connect them to one network card keeping them in the same subnet. Using VLANs is also an option.
Also, it is always recommended that a UPS is deployed along with the server.
For a general purpose server with normal usage patterns, these are the recommended minimum requirements:
Hardware requirements table
When combining more than one profile, you should think in terms of higher requirements. If you are deploying Zentyal in an environment with more than 100 users, a more detailed analysis should be done including usage patterns, benchmarking and considering high availability strategies.