Zentyal

From LibrePlanet
Revision as of 10:24, 8 September 2012 by Robbosch (talk | contribs) (Zentyal Linux Small Business Server)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Zentyal (formerly eBox Platform) is an open source unified network server software package (or a Unified Network Platform) for small and medium enterprises (SMEs). Zentyal can act as a Gateway, Network Infrastructure Manager, Unified Threat Manager, Office Server, Unified communications Server or a combination of them. Besides, Zentyal includes a development framework to ease the development of new Unix based services.

The project's source code is available under terms of the GNU General Public License, as well as under a variety of proprietary agreements. Zentyal is owned and sponsored by a single for-profit firm, the Spanish company eBox Technologies S.L., which holds the copyright to the codebase.

Zentyal (eBox Platform) development was first published in 2005 as an open-source, collaborative project of two companies. On 16 November 2006 Zentyal (eBox Platform) was officially approved as a NEOTEC project, receiving public funds from the CDTI (a Spanish public organisation, under the Ministry of Industry, Commerce and Tourism) to complete the development of version 1.0. Zentyal (eBox Platform) was first included in Ubuntu in 2007, in the Gutsy Gibbon Tribe 3, the third alpha release of Ubuntu 7.10. The first stable release candidate of Zentyal (eBox Platform 1.0) was published in 2008.

Features

As of September 2010, Zentyal 2.0 offers the following features:

  • Networking
    • Firewall and routing
      • Filtering
      • NAT and port redirections
      • VLAN 802.1Q
      • Support for multiple PPPoE and DHCP gateways
      • Multi-gateway rules, load balancing and automatic failover
      • Traffic shaping (with application layer support)
      • Graphical traffic rate monitoring
      • Network intrusion detection system
      • Dynamic DNS client
    • Network infrastructure
      • DHCP server
      • NTP server
      • DNS server
        • Dynamic updates via DHCP
      • RADIUS server
    • VPN support
      • Dynamic routes autoconfiguration
    • HTTP proxy
      • Internet cache
      • User authentication
      • Content filtering (with categorized lists) - only in a pay version
      • Transparent antivirus
      • Delay pools
    • Intrusion Detection System
    • Mail Server
      • Virtual domains
      • Quotas
      • SIEVE support
      • External account retrieval
      • POP3 and IMAP with SSL/TLS
      • Spam and antivirus filtering
        • Greylisting, blacklisting, whitelisting
      • Transparent POP3 proxy filter
      • Catch-all account
  • Webmail
  • Web server
    • Virtual hosts
  • Certification authority
  • Workgroup
    • Centralized users and groups management
      • Master/slave support
      • Windows Active Directory Synchronization
    • Windows PDC
      • Password policies
      • Support for Windows 7 clients
    • Network resource sharing
      • File server
        • Antivirus
        • Recycle bin
      • Print server
    • Groupware: calendar, address book, webmail, wiki, etc.
    • VoIP server
      • Voicemail
      • Conference rooms
      • Calls through an external provider
      • Call transfers
      • Call parking
      • Music on hold
      • Queues
      • Logs
  • Extensible Messaging and Presence Protocol|Jabber/XMPP server
    • Conference rooms
  • Zentyal User Corner for self users info updating
  • Reporting and monitoring
    • Dashboard for centralized service information
    • Monitor CPU, load, disk space, thermal, memory
    • Disk usage and RAID status
    • Summarized and full system reports
    • Event notification via mail, RSS or Jabber
  • Software updates
  • Backups (configuration and remote data backup)

Development

Zentyal uses an open source model, with all the source code available for its users.

Design

Zentyal is a web application using Apache webserver with mod perl as foundation and Mason components as building blocks, mainly written in object oriented Perl, with some Javascript for visual improvements.

Its design incorporates modern programming techniques as:

  • Design patterns: an Observer design pattern is used mainly to integrate different modules across Zentyal. E.g. each service reports about which ports it needs to be open. Besides this, a Singleton pattern holds global configuration and behaviour details.
  • Presentation and logic decoupling: user interface uses CSS and Ajax, and include several Mason components, as a generic table used to configure services. Program logic is held inside library packages and CGI-like code.
  • Fault tolerance: errors and warnings are managed through software exceptions, flowing from core to its handling routine.

It also offers debugging facilities, integrating the layout of the execution stack of the Perl 5 interpreter.

Services are monitored and automatically respawned if they die.

Open source components

Zentyal is composed of open source software packages, mostly written in Perl:

  • Apache web server
  • mod_perl CGI engine
  • OpenLDAP shared users and groups
  • OpenSSL cryptography
  • netfilter/iptables firewall and NAT
  • BIND DNS server
  • Squid proxy server and web cache
  • DansGuardian content-control software
  • Postfix mail transfer agent
  • Extensible Messaging and Presence Protocol Jabber Server
  • ntpd
  • OpenVPN
  • Samba shared storage and Primary Domain Controller for Windows clients
  • CUPS shared printers
  • APT software installation and upgrade
  • Asterisk VOIP services
  • Snort network intrusion detection system
  • Zarafa calendar sharing, address book, and webmail
  • Dovecot IMAP and POP3 server

Community

Main Zentyal community work and support takes place at Zentyal Forum.


See also

  • ClearOS
  • Webmin
  • Web hosting control panel
  • SysCP
  • SME Server

External links