Go to file
Lucas Costa Beyeler a283e67fdd
Merge pull request #24 from UdelaRInterior/agregarCaseUbuntu20
Including installer for Ubuntu 20
2025-08-17 11:33:23 +01:00
.github Update FUNDING.yml 2020-12-19 13:17:20 +00:00
defaults adding task to update /etc/hosts if required 2021-01-20 14:04:43 -03:00
files Including bayesian mail filtering options 2017-08-10 15:17:12 -03:00
meta Update main.yml 2020-12-13 16:21:59 +00:00
tasks Se agrega instalador para Ubuntu 20 2025-07-24 11:12:27 -03:00
templates Enabling support to Zimbra 8.8.15 and dropping the support to any other version 2020-12-08 10:37:41 +00:00
tests Uploading new test.yml 2017-07-09 19:03:29 -03:00
.gitignore Remove idea folder 2020-12-08 10:43:00 +00:00
.travis.yml Rewriting playbook for multiserver purpose 2017-07-09 17:06:04 -03:00
LICENSE Rewriting playbook for multiserver purpose 2017-07-09 17:06:04 -03:00
README.md Removing reference to old versions and removing var folder 2021-02-06 19:25:51 +00:00

README.md

Zimbra

Non-Official ansible role to install and configure Zimbra Collaboration Open Source Edition on Red Hat, CentOS and Ubuntu Server.

Build Status Zimbra Version Linux Distro Branch Ansible Version

Requirements

Install

Zimbra is already in Ansible Galaxy, so the only thing you need to install this script in your machine is just use ansible-galaxy command:

ansible-galaxy install lucascbeyeler.zimbra

Update

When a new version of ansible-zimbra is released, you will need to run the install process again, but with the "-f" or "--force" parameter.

ansible-galaxy install -f lucascbeyeler.zimbra

Features

  • Run many times you want to apply the configuration - installatin only occur if the server has no Zimbra installed
  • Configuring SpamAssassin, Pyzor and Razor;
  • Configure a logo for your server - WARNING: Read this article for more details about the logo;
  • Enable PolicyD service and web admin;
  • Proxy Admin;
  • HTTP to HTTPS redirect;
  • LMTP Host Lookup in Native mode;
  • Customize your Zimbra OSE server;

Role Variables

  • hostname: set the hostname of your server WITHOUT the domain;
  • domain: set the domain for the server and the primary domain for your Zimbra server;
  • zmpasswd: set the password used for every single service in your Zimbra server, like the admin account and the LDAPServer - WARNING: do not put special characters in the password during the install;
  • zmnetwork: set the network the Zimbra server is;
  • zmlogologin: Inform the path for your logo (Login Screen) - don't inform and no image will be applied;
  • zmlogoapp: Inform the path for your logo (Application Screen) - don't inform and no image will be applied;
  • timezone: inform the timezone the playbook should set in your server;
  • zimbra_version: Inform which version of Zimbra you want to install. Default: 8.8.15

Service Variables - Inform "y" or "n"

  • zimbra_ldap: Enable Zimbra LDAP Server - default: y
  • zimbra_logger: Enable Zimbra Logger Service - default: y
  • zimbra_mta: Enable Zimbra MTA Service - default: y
  • zimbra_dnscache: Enable Zimbra DNS Cache Service (unbound) - default: n
  • zimbra_snmp: Enable Zimbra SNMP Checks - default: n
  • zimbra_store: Enable Zimbra Store Service - default: y
  • zimbra_apache: Enable Zimbra Web Interface (Apache Web Server) - default: y
  • zimbra_spell: Enable Zimbra Spell Check - default: y
  • zimbra_memcached: Enable Zimbra Cache Service (Memcached) - default: y
  • zimbra_proxy: Enable Zimbra Proxy Service - default: y
  • zimbra_chat: Enable Zimbra Chat - default: n
  • zimbra_drive: Enable Zimbra ownCloud Drive - default: n
  • zimbra_imapd: Enable Zimbra IMAPD Solo Service BETA - default: n
  • zimbra_policyd: Enable Zimbra PolicyD Service - default: n

Dependencies

To run this playbook, you will need to run lucascbeyeler.baseline too. We do not cover any kind of server preparation, like upgrade the system or change the hostname (even put the hostname in /etc/hosts is made by commons). The motive is because all my playbooks will need some kind of preparation before executed, so to not including the same code in every single project, I made a different playbook that will do everything that is considered "common" in each one of my playbooks.

Example Playbook

    - hosts: zimbra
      become: yes
      become_method: sudo
      roles:
         - role: lucascbeyeler.zimbra
           hostname: localhost
           domain: localdomain
           timezone: America/Sao_Paulo
           zmpasswd: 123change
           zmnetwork: 192.168.122.0/24
           zmlogologin: /tmp/login.png
           zmlogoapp: /tmp/app.png

License

GNU GPL v3.0

View official GNU site http://www.gnu.org/licenses/gpl.html.

Author Information