Với nhiệm vụ là Digital Solution Architect, mình được đặt ra yêu cầu xây dựng hệ thống mail server cho công ty thay vì phải thuê bên thứ 3 với chi phí khá đắt đỏ. Hiện tại mình đã xây dựng được DEV server sử dụng Kubernetes, nên việc tiếp theo là tìm kiếm một Mail server mã nguồn mở, có nhiều tính năng: mail, calendar, chat,… tương thích với Outlook, có thể kể đến một vài sản phẩm:

Sau quá trình tìm hiểu và lựa chọn thì mình quyết định lựa chọn Zimbra để deploy trên hệ thống Kubernetes (k8s). Bây giờ mình sẽ giới thiệu các bước để thiết lập 1 Zimbra mail server tại địa chỉ: mail.my-domain.com

Chuẩn bị

Đầu tiên, bạn phải có 1 Kubernetes cluser để sử dụng, cách cài có thể tham khảo ở bài viết:

  1. Cài đặt Kubernetes cluster với Microk8s
  2. Cài Ingress Nginx trên Kubernetes On-premise
  3. Đã tạo PTR record
  4. Tạo MX trỏ về Mail server

Deploy Kubernetes

Lưu ý:

Namespace

Tạo namespce để dễ quản lý

# namespace.yaml
apiVersion: v1
kind: Namespace
metadata:
  name: zimbra

ClusterIssue

Cái này liên quan đển việc tạo SSL cert Letsencrypt (Free nhé)

# certificate.yaml
# Production ClusterIssue
apiVersion: cert-manager.io/v1alpha2
kind: ClusterIssuer
metadata:
  name: letsencrypt-zimbraserver
  namespace: zimbra
spec:
  acme:
    # The ACME server URL
    server: https://acme-v02.api.letsencrypt.org/directory
    # Email address used for ACME registration
    email: your-name@email.com
    # Name of a secret used to store the ACME account private key
    privateKeySecretRef:
      name: letsencrypt-zimbraserver
    # Enable the HTTP-01 challenge provider
    solvers:
      - http01:
          ingress:
            class: nginx

Deployment

# deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: zimbra
  name: zimbra
  namespace: zimbra
spec:
  replicas: 1
  selector:
    matchLabels:
      app: zimbra
  strategy:
    type: Recreate
  template:
    metadata:
      labels:
        app: zimbra
      annotations:
        container.apparmor.security.beta.kubernetes.io/zimbra: unconfined
        container.seccomp.security.alpha.kubernetes.io/zimbra: unconfined
    spec:
      restartPolicy: Always
      terminationGracePeriodSeconds: 180
      containers:
        - name: zimbra
          image: griffinplus/zimbra
          imagePullPolicy: IfNotPresent
          env:
            - name: EXTERNAL_HOST_FQDN
              value: mail.my-domain.com
            - name: MAIL_DOMAINS
              value: my-domain.net
          ports:
            - name: smtp
              containerPort: 25
              protocol: TCP
            - name: http
              containerPort: 80
              protocol: TCP
            - name: pop3
              containerPort: 110
              protocol: TCP
            - name: imap
              containerPort: 143
              protocol: TCP
            - name: ldap
              containerPort: 389
              protocol: TCP
            - name: https
              containerPort: 443
              protocol: TCP
            - name: smtps
              containerPort: 465
              protocol: TCP
            - name: submission
              containerPort: 587
              protocol: TCP
            - name: ldaps
              containerPort: 636
              protocol: TCP
            - name: imaps
              containerPort: 993
              protocol: TCP
            - name: pop3s
              containerPort: 995
              protocol: TCP
            - name: xmpp
              containerPort: 5222
              protocol: TCP
            - name: xmpp-legacy
              containerPort: 5223
              protocol: TCP
            - name: admin-panel
              containerPort: 7071
              protocol: TCP
          volumeMounts:
            - name: zimbra
              mountPath: /data
            - name: tls-certs
              mountPath: /data/app/tls
              readOnly: true
          securityContext:
            capabilities:
              add:
                - NET_ADMIN
                - SYS_ADMIN
                - SYS_PTRACE
      volumes:
        # - name: zimbra
        #   hostPath:
        #     path: "/kube-data/zimbra"
        - name: zimbra
          persistentVolumeClaim:
            claimName: zimbra-pvc
            readOnly: false
        - name: tls-certs
          secret:
            secretName: letsencrypt-zimbraserver
            items:
              - key: tls.key
                path: zimbra.key
              - key: tls.crt
                path: zimbra.crt
---
apiVersion: v1
kind: PersistentVolume
metadata:
  name: zimbra-pv
  labels:
    type: local
  namespace: zimbra
spec:
  storageClassName: manual
  capacity:
    storage: 30Gi
  accessModes:
    - ReadWriteMany
  hostPath:
    path: "/your-ubuntu/path/zimbra-data"
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: zimbra-pvc
  labels:
    type: local
  namespace: zimbra
spec:
  storageClassName: manual
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 30Gi
  volumeName: zimbra-pv

Service

# service-cluster.yaml
apiVersion: v1
kind: Service
metadata:
  name: zimbra-cluster
  namespace: zimbra
spec:
  selector:
    app: zimbra
  ports:
    - name: smtp
      port: 25
      protocol: TCP
    - name: http
      port: 80
      protocol: TCP
    - name: pop3
      port: 110
      protocol: TCP
    - name: ldap
      port: 389
      protocol: TCP
    - name: imap
      port: 143
      protocol: TCP
    - name: https
      port: 443
      protocol: TCP
    - name: smtps
      port: 465
      protocol: TCP
    - name: submission
      port: 587
      protocol: TCP
    - name: ldaps
      port: 636
      protocol: TCP
    - name: imaps
      port: 993
      protocol: TCP
    - name: pop3s
      port: 995
      protocol: TCP
    - name: xmpp
      port: 5222
      protocol: TCP
    - name: xmpp-legacy
      port: 5223
      protocol: TCP
    - name: adminpanel
      port: 7071
      protocol: TCP

Nginx Ingress

# ingress.yaml
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: zimbraserver-ingress
  namespace: zimbra
  annotations:
    kubernetes.io/ingress.class: "nginx"
    cert-manager.io/cluster-issuer: "letsencrypt-zimbraserver"
    nginx.ingress.kubernetes.io/add-base-url: "true"
    nginx.ingress.kubernetes.io/proxy-body-size: "0"
spec:
  tls:
  - hosts:
    - mail.my-domain.com
    secretName: letsencrypt-zimbraserver
  rules:
  - host: mail.my-domain.com
    http:
      paths:
      - backend:
          serviceName: zimbra-cluster
          servicePort: 80
        path: /

ConfigMap

# configmap.yaml  
apiVersion: v1
kind: ConfigMap
metadata:
  name: tcp-services
  namespace: ingress-nginx
data:
  25: "zimbra/zimbra-cluster:25"
  110: "zimbra/zimbra-cluster:110"
  143: "zimbra/zimbra-cluster:143"
  465: "zimbra/zimbra-cluster:465"
  587: "zimbra/zimbra-cluster:587"
  993: "zimbra/zimbra-cluster:993"
  995: "zimbra/zimbra-cluster:995"
  5222: "zimbra/zimbra-cluster:5222"
  5223: "zimbra/zimbra-cluster:5223"
  7071: "zimbra/zimbra-cluster:7071"

Deploy

Mở Terminal lên và chạy các lệnh dưới đây để lần lượt deploy các resource kubernetes

kubectl apply -f namespace.yaml
kubectl apply -f certificate.yaml
kubectl apply -f deployment.yaml
kubectl apply -f service-cluster.yaml
kubectl apply -f ingress.yaml
kubectl apply -f configmap.yaml

Nếu chạy mọi thứ thành công, bạn phải kiểm tra Pod (tạo bởi deployment.yaml) xem pod đã khởi tạo và cài các thư viện cần thiết xong chưa bằng cách kiểm tra log có chưa cụm từ:

...
Starting auditswatch...done.
Waiting for signals...

Truy cập vào container để cài đặt zimbra:

POD=`kubectl get pods -n zimbra -o name | cut -f2 -d '/'`
kubectl exec -it -n zimbra $POD -- /bin/bash

Chạy script cài đặt zimbra

chroot /data /bin/bash
cd /app
./install-zimbra.sh

Tiếp theo thông thường chọn Yes hết cho tới khi xuất hiện màn hình lựa chọn các packages, ấn N với các package: zimbra-dnscachezimbra-imapd (BETA - for evaluation only)

Select the packages to install
Install zimbra-ldap [Y] Y
Install zimbra-logger [Y] Y
Install zimbra-mta [Y] Y
Install zimbra-dnscache [Y] N
Install zimbra-snmp [Y] Y
Install zimbra-store [Y] Y
Install zimbra-apache [Y] Y
Install zimbra-spell [Y] Y
Install zimbra-memcached [Y] Y
Install zimbra-proxy [Y] Y
Install zimbra-drive [Y] Y
Install zimbra-imapd (BETA - for evaluation only) [N] N
Install zimbra-chat [Y] Y
Checking required space for zimbra-core
Checking space for zimbra-store
Checking required packages for zimbra-store
zimbra-store package check complete.
Installing:
    zimbra-core
    zimbra-ldap
    zimbra-logger
    zimbra-mta
    zimbra-snmp
    zimbra-store
    zimbra-apache
    zimbra-spell
    zimbra-memcached
    zimbra-proxy
    zimbra-drive
    zimbra-patch
    zimbra-chat
The system will be modified.  Continue? [N] Y

Ấn Y và chờ cái đặt cho đến bước báo:

DNS ERROR resolving MX for mail.my-domain.com
It is suggested that the domain name have an MX record configured in DNS
Change domain name? [Yes] Y
Create domain: [mail.my-domain.com] my-domain.com

thì nhập my-domain.com thay vì mail.my-domain.com

Sau đó bước cài đặt kết thúc, chúng ta tới phần cấu hình Zimbra:

Thay mật khẩu admin

Main menu
   1) Common Configuration:
   2) zimbra-ldap:                             Enabled
   3) zimbra-logger:                           Enabled
   4) zimbra-mta:                              Enabled
   5) zimbra-snmp:                             Enabled
   6) zimbra-store:                            Enabled
        +Create Admin User:                    yes
        +Admin user to create:                 admin@my-domain.com
******* +Admin Password                        UNSET
        +Anti-virus quarantine user:           virus-quarantine.v5tbun66@my-domain.com
        +Enable automated spam training:       yes
        +Spam training user:                   spam.mzyndpju@my-domain.com
        +Non-spam(Ham) training user:          ham.ky4j9okzp2@my-domain.com
        +SMTP host:                            zimbra.my-domain.com
        +Web server HTTP port:                 8080
        +Web server HTTPS port:                8443
        +Web server mode:                      https
        +IMAP server port:                     7143
        +IMAP server SSL port:                 7993
        +POP server port:                      7110
        +POP server SSL port:                  7995
        +Use spell check server:               yes
        +Spell server URL:                     http://zimbra.my-domain.com:7780/aspell.php
        +Enable version update checks:         TRUE
        +Enable version update notifications:  TRUE
        +Version update notification email:    admin@my-domain.com
        +Version update source email:          admin@my-domain.com
        +Install mailstore (service webapp):   yes
        +Install UI (zimbra,zimbraAdmin webapps): yes
   7) zimbra-spell:                            Enabled
   8) zimbra-proxy:                            Enabled
   9) Default Class of Service Configuration:
   s) Save config to file
   x) Expand menu
   q) Quit
Address unconfigured (**) items  (? - help) 6

Cái này là menu cài đặt thông thường trên terminal, điền 6 rồi Enter

Store configuration
   1) Status:                                  Enabled
   2) Create Admin User:                       yes
   3) Admin user to create:                    admin@my-domain.com
** 4) Admin Password                           UNSET
   5) Anti-virus quarantine user:              virus-quarantine.v5tbun66@my-domain.com
   6) Enable automated spam training:          yes
   7) Spam training user:                      spam.mzyndpju@my-domain.com
   8) Non-spam(Ham) training user:             ham.ky4j9okzp2@my-domain.com
   9) SMTP host:                               zimbra.my-domain.com
  10) Web server HTTP port:                    8080
  11) Web server HTTPS port:                   8443
  12) Web server mode:                         https
  13) IMAP server port:                        7143
  14) IMAP server SSL port:                    7993
  15) POP server port:                         7110
  16) POP server SSL port:                     7995
  17) Use spell check server:                  yes
  18) Spell server URL:                        http://zimbra.my-domain.com:7780/aspell.php
  19) Enable version update checks:            TRUE
  20) Enable version update notifications:     TRUE
  21) Version update notification email:       admin@my-domain.com
  22) Version update source email:             admin@my-domain.com
  23) Install mailstore (service webapp):      yes
  24) Install UI (zimbra,zimbraAdmin webapps): yes
Select, or 'r' for previous menu [r] 4
Password for admin@my-domain.com (min 6 characters): [7X0eFKNr] my-password
Store configuration
   ...
Select, or 'r' for previous menu [r] r
Main menu
   1) Common Configuration:
   2) zimbra-ldap:                             Enabled
   3) zimbra-logger:                           Enabled
   4) zimbra-mta:                              Enabled
   5) zimbra-snmp:                             Enabled
   6) zimbra-store:                            Enabled
   7) zimbra-spell:                            Enabled
   8) zimbra-proxy:                            Enabled
   9) Default Class of Service Configuration:
   s) Save config to file
   x) Expand menu
   q) Quit
*** CONFIGURATION COMPLETE - press 'a' to apply
Select from menu, or press 'a' to apply config (? - help)

Khi deploy Zimbra container trên Kubernetes và sử dụng Nginx Ingress cần một số cấu hình khác:

Menu 1: Common Configuration

  • Secure interprocess communications : no
Common configuration
   1) Hostname:                                zimbra.my-domain.com
   2) Ldap master host:                        zimbra.my-domain.com
   3) Ldap port:                               389
   4) Ldap Admin password:                     set
   5) Store ephemeral attributes outside Ldap: no
   6) Secure interprocess communications:      no
   7) TimeZone:                                Europe/Berlin
   8) IP Mode:                                 ipv4
   9) Default SSL digest:                      sha256
Select, or 'r' for previous menu [r]

Menu 8: zimbra-proxy

  • Enable HTTP[S] Proxy: FALSE
  • Enable strict server name enforcement?: no
Proxy configuration
   1) Status:                                  Enabled
   2) Enable POP/IMAP Proxy:                   TRUE
   3) Enable strict server name enforcement?   no
   4) IMAP proxy port:                         143
   5) IMAP SSL proxy port:                     993
   6) POP proxy port:                          110
   7) POP SSL proxy port:                      995
   8) Bind password for nginx ldap user:       set
   9) Enable HTTP[S] Proxy:                    FALSE
Select, or 'r' for previous menu [r]

Menu 6: zimbra-store

  • Web server mode: both
Store configuration
   1) Status:                                  Enabled
   2) Create Admin User:                       yes
   3) Admin user to create:                    admin@my-domain.com
   4) Admin Password                           set
   5) Anti-virus quarantine user:              virus-quarantine.v5tbun66@my-domain.com
   6) Enable automated spam training:          yes
   7) Spam training user:                      spam.mzyndpju@my-domain.com
   8) Non-spam(Ham) training user:             ham.ky4j9okzp2@my-domain.com
   9) SMTP host:                               zimbra.my-domain.com
  10) Web server HTTP port:                    80
  11) Web server HTTPS port:                   443
  12) Web server mode:                         both
  13) IMAP server port:                        7143
  14) IMAP server SSL port:                    7993
  15) POP server port:                         7110
  16) POP server SSL port:                     7995
  17) Use spell check server:                  yes
  18) Spell server URL:                        http://zimbra.my-domain.com:7780/aspell.php
  19) Enable version update checks:            TRUE
  20) Enable version update notifications:     TRUE
  21) Version update notification email:       admin@my-domain.com
  22) Version update source email:             admin@my-domain.com
  23) Install mailstore (service webapp):      yes
  24) Install UI (zimbra,zimbraAdmin webapps): yes
Select, or 'r' for previous menu [r]

Sau đó trở ra menu chính và apply các cấu hình

Main menu
   1) Common Configuration:
   2) zimbra-ldap:                             Enabled
   3) zimbra-logger:                           Enabled
   4) zimbra-mta:                              Enabled
   5) zimbra-snmp:                             Enabled
   6) zimbra-store:                            Enabled
   7) zimbra-spell:                            Enabled
   8) zimbra-proxy:                            Enabled
   9) Default Class of Service Configuration:
   s) Save config to file
   x) Expand menu
   q) Quit
*** CONFIGURATION COMPLETE - press 'a' to apply
Select from menu, or press 'a' to apply config (? - help) a
Save configuration data to a file? [Yes]
Save config in file: [/opt/zimbra/config.6347]
Saving config in /opt/zimbra/config.6347...done.
The system will be modified - continue? [No] y
Operations logged to /tmp/zmsetup.20190114-164628.log
Setting local config values...done.
Initializing core config...Setting up CA...done.
Deploying CA to /opt/zimbra/conf/ca ...done.
Creating SSL zimbra-store certificate...done.
Creating new zimbra-ldap SSL certificate...done.
Creating new zimbra-mta SSL certificate...done.
Creating new zimbra-proxy SSL certificate...done.
Installing mailboxd SSL certificates...done.
Installing MTA SSL certificates...done.
Installing LDAP SSL certificate...done.
Installing Proxy SSL certificate...done.
Initializing ldap...done.
Setting replication password...done.
Setting Postfix password...done.
Setting amavis password...done.
Setting nginx password...done.
Setting BES searcher password...done.
Creating server entry for zimbra.my-domain.com...done.
Setting Zimbra IP Mode...done.
Saving CA in ldap...done.
Saving SSL Certificate in ldap...done.
Setting spell check URL...done.
Setting service ports on zimbra.my-domain.com...done.
Setting zimbraFeatureTasksEnabled=TRUE...done.
Setting zimbraFeatureBriefcasesEnabled=TRUE...done.
Checking current setting of zimbraReverseProxyAvailableLookupTargets
Querying LDAP for other mailstores
Searching LDAP for reverseProxyLookupTargets...done.
Adding zimbra.my-domain.com to zimbraReverseProxyAvailableLookupTargets
Updating zimbraLDAPSchemaVersion to version '1537783098'
Setting TimeZone Preference...done.
Disabling strict server name enforcement on zimbra.my-domain.com...done.
Initializing mta config...done.
Setting services on zimbra.my-domain.com...done.
Adding zimbra.my-domain.com to zimbraMailHostPool in default COS...done.
Creating domain my-domain.com...done.
Setting default domain name...done.
Creating domain my-domain.com...already exists.
Creating admin account admin@my-domain.com...done.
Creating root alias...done.
Creating postmaster alias...done.
Creating user spam.mzyndpju@my-domain.com...done.
Creating user ham.ky4j9okzp2@my-domain.com...done.
Creating user virus-quarantine.v5tbun66@my-domain.com...done.
Setting spam training and Anti-virus quarantine accounts...done.
Initializing store sql database...done.
Setting zimbraSmtpHostname for zimbra.my-domain.com...done.
Configuring SNMP...done.
Setting up syslog.conf...done.
Starting servers...done.
Installing common zimlets...
        com_zimbra_email...done.
        com_zimbra_clientuploader...done.
        com_zimbra_cert_manager...done.
        com_zimbra_viewmail...done.
        com_zimbra_attachcontacts...done.
        com_zimbra_adminversioncheck...done.
        com_zimbra_ymemoticons...done.
        com_zimbra_attachmail...done.
        com_zimbra_tooltip...done.
        com_zimbra_srchhighlighter...done.
        com_zimbra_url...done.
        com_zextras_drive_open...done.
        com_zimbra_phone...done.
        com_zextras_chat_open...done.
        com_zimbra_date...done.
        com_zimbra_mailarchive...done.
        com_zimbra_bulkprovision...done.
        com_zimbra_proxy_config...done.
        com_zimbra_webex...done.
Finished installing common zimlets.
Restarting mailboxd...done.
Creating galsync account for default domain...done.
You have the option of notifying Zimbra of your installation.
This helps us to track the uptake of the Zimbra Collaboration Server.
The only information that will be transmitted is:
        The VERSION of zcs installed (8.8.11_GA_3737_UBUNTU16_64)
        The ADMIN EMAIL ADDRESS created (admin@my-domain.com)
Notify Zimbra of your installation? [Yes] y
Checking if the NG started running...done.
Setting up zimbra crontab...done.
Moving /tmp/zmsetup.20190114-173610.log to /opt/zimbra/log
Configuration complete - press return to exit

Sau khi cài xong, Zimbra sẽ thực hiện thêm vài cấu hình, thời gian mất khá lâu

  • Install brute-force detector auditswatch
  • Generate a 4096 bit prime to use as DH parameters
Retrieving some information needed for further steps...
- Admin e-mail address: admin@my-domain.com
Configuring Zimbra's brute-force detector (auditswatch) to send notifications to admin@my-domain.com...
--2019-01-14 17:48:13--  http://bugzilla-attach.zimbra.com/attachment.cgi?id=66723
Resolving bugzilla-attach.zimbra.com (bugzilla-attach.zimbra.com)... 23.22.223.51, 23.20.183.249
Connecting to bugzilla-attach.zimbra.com (bugzilla-attach.zimbra.com)|23.22.223.51|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 35695 (35K) [application/x-perl]
Saving to: 'auditswatch'
auditswatch                                                 100%[========================================================================================================================================>]  34.86K  --.-KB/s    in 0.1s
2019-01-14 17:48:14 (346 KB/s) - 'auditswatch' saved [35695/35695]
/opt/zimbra/conf/auditswatchrc is missing.
Starting auditswatch...done.
Removing Zimbra installation files...
removed '/install/zcs.tgz'
removed '/install/zcs/.BUILD_TIME_STAMP'
removed '/install/zcs/data/versions-init.sql'
removed directory '/install/zcs/data'
removed '/install/zcs/.BUILD_RELEASE_NO'
removed '/install/zcs/readme_binary_en_US.txt'
removed '/install/zcs/docs/en_US/Zimbra iCalendar Migration Guide.pdf'
removed '/install/zcs/docs/en_US/zimbra_user_guide.pdf'
removed '/install/zcs/docs/en_US/Import_Wizard_Outlook.pdf'
removed '/install/zcs/docs/en_US/RNZCSO_2005Beta.pdf'
removed '/install/zcs/docs/en_US/OSmultiserverinstall.pdf'
removed '/install/zcs/docs/en_US/quick_start.pdf'
removed '/install/zcs/docs/en_US/MigrationWizard_Domino.pdf'
removed '/install/zcs/docs/en_US/MigrationWizard.pdf'
removed '/install/zcs/docs/en_US/admin.pdf'
removed '/install/zcs/docs/en_US/Migration_Exch_Admin.pdf'
removed '/install/zcs/docs/en_US/User Instructions for ZCS Import Wizard.pdf'
removed '/install/zcs/docs/en_US/Fedora Server Config.pdf'
removed directory '/install/zcs/docs/en_US'
removed '/install/zcs/docs/zcl.txt'
removed directory '/install/zcs/docs'
removed '/install/zcs/bin/checkService.pl'
removed '/install/zcs/bin/get_plat_tag.sh'
removed '/install/zcs/bin/checkLicense.pl'
removed '/install/zcs/bin/zmdbintegrityreport'
removed '/install/zcs/bin/zmValidateLdap.pl'
removed directory '/install/zcs/bin'
removed '/install/zcs/.BUILD_NUM'
removed directory '/install/zcs/lib/jars'
removed directory '/install/zcs/lib'
removed '/install/zcs/packages/zimbra-apache_8.8.11.GA.3737.UBUNTU16.64_amd64.deb'
removed '/install/zcs/packages/zimbra-core_8.8.11.GA.3737.UBUNTU16.64_amd64.deb'
removed '/install/zcs/packages/zimbra-common-mbox-docs_8.8.11.1540236948-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-common-mbox-conf-msgs_8.8.11.1539627833-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-store_8.8.11.GA.3737.UBUNTU16.64_amd64.deb'
removed '/install/zcs/packages/zimbra-logger_8.8.11.GA.3737.UBUNTU16.64_amd64.deb'
removed '/install/zcs/packages/zimbra-imapd_8.8.11.GA.3737.UBUNTU16.64_amd64.deb'
removed '/install/zcs/packages/zimbra-snmp_8.8.11.GA.3737.UBUNTU16.64_amd64.deb'
removed '/install/zcs/packages/zimbra-mbox-conf_8.8.11.1539627833-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-common-mbox-conf-attrs_8.8.11.1537865556-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-common-mbox-db_8.8.11.1543567590-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-ldap_8.8.11.GA.3737.UBUNTU16.64_amd64.deb'
removed '/install/zcs/packages/zimbra-mbox-war_8.8.11.1543567590-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-spell_8.8.11.GA.3737.UBUNTU16.64_amd64.deb'
removed '/install/zcs/packages/zimbra-mbox-webclient-war_8.8.11.1544083326-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-mbox-service_8.8.11.1543567590-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-mta_8.8.11.GA.3737.UBUNTU16.64_amd64.deb'
removed '/install/zcs/packages/zimbra-mbox-admin-console-war_8.8.11.1540805051-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-dnscache_8.8.11.GA.3737.UBUNTU16.64_amd64.deb'
removed '/install/zcs/packages/zimbra-common-core-libs_8.8.11.1539971682-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-common-mbox-native-lib_8.8.11.1521095672-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-common-core-jar_8.8.11.1543567590-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-common-mbox-conf_8.8.11.1543567590-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-common-mbox-conf-rights_8.8.11.1487328490-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-mbox-store-libs_8.8.11.1539971682-1.u16_amd64.deb'
removed '/install/zcs/packages/zimbra-timezone-data_1.0.1+1538986928-1.u16_amd64.deb'
removed '/install/zcs/packages/Packages'
removed '/install/zcs/packages/zimbra-proxy_8.8.11.GA.3737.UBUNTU16.64_amd64.deb'
removed directory '/install/zcs/packages'
removed '/install/zcs/.BUILD_PLATFORM'
removed '/install/zcs/.BUILD_TYPE'
removed '/install/zcs/util/addUser.sh'
removed '/install/zcs/util/utilfunc.sh'
removed '/install/zcs/util/globals.sh'
removed '/install/zcs/util/modules/getconfig.sh'
removed '/install/zcs/util/modules/postinstall.sh'
removed '/install/zcs/util/modules/packages.sh'
removed directory '/install/zcs/util/modules'
removed directory '/install/zcs/util'
removed '/install/zcs/install.sh'
removed '/install/zcs/README.txt'
removed '/install/zcs/.BUILD_RELEASE_CANDIDATE'
removed directory '/install/zcs'
removed directory '/install/auditswatch'
removed directory '/install'
Adding Zimbra's Perl include path to search path...
Generating stronger DH parameters (4096 bit)...
Generating DH parameters, 4096 bit long safe prime, generator 2
This is going to take a long time
..................
..................
..................
zmdhparam: saving 'zimbraSSLDHParam' via zmprov modifyConfig
Configuring cipher suites (as strong as possible without breaking compatibility and sacrificing speed)...
Configuring default COS to use selected persona in the Return-Path of the mail envelope (important for privacy).
Installing mail utilities to enable unattended-upgrades to send notifications.
(Can be done after installing Zimbra only as bsd-mailx pulls in postfix that conflicts with the postfix package deployed by Zimbra.)
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  liblockfile-bin liblockfile1
The following NEW packages will be installed:
  bsd-mailx liblockfile-bin liblockfile1
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 82.5 kB of archives.
After this operation, 298 kB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 liblockfile-bin amd64 1.09-6ubuntu1 [10.8 kB]
Get:2 http://archive.ubuntu.com/ubuntu xenial/main amd64 liblockfile1 amd64 1.09-6ubuntu1 [8056 B]
Get:3 http://archive.ubuntu.com/ubuntu xenial/main amd64 bsd-mailx amd64 8.1.2-0.20160123cvs-2 [63.7 kB]
Fetched 82.5 kB in 0s (690 kB/s)
Selecting previously unselected package liblockfile-bin.
(Reading database ... 51696 files and directories currently installed.)
Preparing to unpack .../liblockfile-bin_1.09-6ubuntu1_amd64.deb ...
Unpacking liblockfile-bin (1.09-6ubuntu1) ...
Selecting previously unselected package liblockfile1:amd64.
Preparing to unpack .../liblockfile1_1.09-6ubuntu1_amd64.deb ...
Unpacking liblockfile1:amd64 (1.09-6ubuntu1) ...
Selecting previously unselected package bsd-mailx.
Preparing to unpack .../bsd-mailx_8.1.2-0.20160123cvs-2_amd64.deb ...
Unpacking bsd-mailx (8.1.2-0.20160123cvs-2) ...
Setting up liblockfile-bin (1.09-6ubuntu1) ...
Setting up liblockfile1:amd64 (1.09-6ubuntu1) ...
Setting up bsd-mailx (8.1.2-0.20160123cvs-2) ...
update-alternatives: using /usr/bin/bsd-mailx to provide /usr/bin/mailx (mailx) in auto mode
Processing triggers for libc-bin (2.23-0ubuntu10) ...
Restarting services...
Host zimbra2.griffin.plus
        Stopping zmconfigd...Done.
        Stopping zimlet webapp...Done.
        Stopping zimbraAdmin webapp...Done.
        Stopping zimbra webapp...Done.
        Stopping service webapp...Done.
        Stopping stats...Done.
        Stopping mta...Done.
        Stopping spell...Done.
        Stopping snmp...Done.
        Stopping cbpolicyd...Done.
        Stopping archiving...Done.
        Stopping opendkim...Done.
        Stopping amavis...Done.
        Stopping antivirus...Done.
        Stopping antispam...Done.
        Stopping proxy...Done.
        Stopping memcached...Done.
        Stopping mailbox...Done.
        Stopping logger...Done.
        Stopping dnscache...Done.
        Stopping ldap...Done.
 * Starting enhanced syslogd rsyslogd                                                                                                                                                                                                 [ OK ]
 * Starting periodic command scheduler cron                                                                                                                                                                                           [ OK ]
 * Starting OpenBSD Secure Shell server sshd                                                                                                                                                                                          [ OK ]
Host mail.my-domain.com
        Starting ldap...Done.
        Starting zmconfigd...Done.
        Starting logger...Done.
        Starting mailbox...Done.
        Starting memcached...Done.
        Starting proxy...Done.
        Starting amavis...Done.
        Starting antispam...Done.
        Starting antivirus...Done.
        Starting opendkim...Done.
        Starting snmp...Done.
        Starting spell...Done.
        Starting mta...Done.
        Starting stats...Done.
        Starting service webapp...Done.
        Starting zimbra webapp...Done.
        Starting zimbraAdmin webapp...Done.
        Starting zimlet webapp...Done.
Starting auditswatch...done.

Cuối cùng cũng xong, bây giờ chúng ta có thể đăng nhập vào:

  • Webmail: https://mail.my-domain.com/
  • Admin: https://mail.my-domain.com:7071/zimbraAdmin