Перед початком встановлення на Ubuntu (або будь-яку іншу систему), перевірте, чи підтримується ваша система, поточною версією [Zimbra](https://www.zimbra.com/downloads/zimbra-collaboration-open-source/)
У панелі керування доменом потрібно відредагувати записи DNS mail.YOURDOMAIN.com на IP-адресу нашого сервера.
Приклад 2 записи:
type: A name: mail content: IP
type: MX name: @ content: mail.YOURDOMAIN.com priority: 5
```sh
apt update
apt dist-upgrade -y
```
Файл /etc/hosts приводимо до такого виду:
```
127.0.0.1 localhost
EXTERNAL_IP mail.YOURDOMAIN.com mail
```
```sh
reboot
apt install mc htop dnsmasq fail2ban iptables-persistent
```
Якщо ви використовуєте ubuntu 18, виконайте такі команди для запуску dnsmasq:
```sh
sudo systemctl disable systemd-resolved
sudo systemctl stop systemd-resolved
sudo rm /etc/resolv.conf
touch /etc/resolv.conf
echo "nameserver 8.8.8.8" > /etc/resolv.conf
reboot
```
Для роботи з iptables-persistent використовуємо наступні команди:
```sh
netfilter-persistent start
netfilter-persistent stop
netfilter-persistent flush
netfilter-persistent save
```
Додаємо у файл /etc/dnsmasq.conf
```
server=8.8.8.8
domain=YOURDOMAIN.com
mx-host=YOURDOMAIN.com,mail.YOURDOMAIN.com,5
listen-address=127.0.0.1
address=/mail.YOURDOMAIN.com/EXTERNAL_IP
```
```sh
service dnsmasq restart
```
[Скачуємо потрібну версію](https://www.zimbra.com/downloads/zimbra-collaboration-open-source/)
```
wget https://files.zimbra.com/downloads/8.8.9_GA/zcs-8.8.9_GA_3019.UBUNTU16_64.20180809160254.tgz
tar xzvf zcs-8.8.9_GA_3019.UBUNTU16_64.20180809160254.tgz
cd ./zcs-8.8.9_GA_3019.UBUNTU16_64.20180809160254
./install.sh
```
Відповідаємо на всі запитання:
![file](/uploads/image-1667754710340.png)
![file](/uploads/image-1667754847218.png)
![file](/uploads/image-1667754858827.png)
![file](/uploads/image-1667754870805.png)
Наприкінці натискаємо Y і вводимо ім'я домену без mail.
Вибираємо пункти
6
4
Вводимо пароль
r
a
Y
Enter
Y
Після закінчення ми можемо зайти на нашу пошту https://mail.YOURDOMAIN.com
Далі потрібно видилити зайві заголовки. Додати DKIM, SPF, DMARC
#### Видаляємо заголовки: ####
``
/opt/zimbra/common/sbin/amavisd
``
![file](/uploads/image-1667754880220.png)
![file](/uploads/image-1667754888749.png)
```
$insert_received_line = 0
$allowed_added_header_fields{lc($_)} = 0
```
Якщо у вас інша версія Zimbra – використовуйте команду ```find / -name Ім'яФайлу``` (це допоможе вам знайти потрібний файл, оскільки швидше за все він лежить в іншій директорії)
``/opt/zimbra/conf/postfix_header_checks.in``
```
/^Received:\ .*/ IGNORE
/^X-Originating-IP:/ IGNORE
/^Received:.*with ESMTPSA/ IGNORE
/^X-Mailer:/ IGNORE
/^Mime-Version:/ IGNORE
/X-Virus- Scanned/ IGNORE
/^User-Agent:/ IGNORE
/^X-Sanitizer:/ IGNORE
/^X-Spam-Status:/ IGNORE
/^X-Spam-Level:/ IGNORE
/^X-MimeOLE:/ IGNORE
/^X -MSMail-Priority:/ IGNORE
/Message-Id:\s+<(.*?) .JavaMail.zimbra@domain.com >/ REPLACE Message-Id: < $1@domain.com >
/^Received: (.*? )/ IGNORE
/^Received:/ IGNORE
```
``/opt/zimbra/conf/zmconfigd.cf``
знаходимо:
```
if VAR zimbraMtaBlockedExtensionWarnRecipient
POSTCONF header_checks
```
змінюʼмо на:
![file](/uploads/image-1667754900115.png)
```
if VAR zimbraMtaBlockedExtensionWarnRecipient
POSTCONF header_checks
LOCAL postfix_header_check
```
Забираємо localhost із заголовків
``/opt/zimbra/common/conf/master.cf.in``
знаходимо:
```
receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_address_mappings
```
міняємо на:
```
receive_override_options=
```
Виконуємо наступні команди:
```
su - zimbra
zmprov mcf zimbraSmtpSendAddOriginatingIP FALSE
zmprov mcf zimbraMtaBlockedExtensionWarnRecipient FALSE
exit
reboot
```
Отримуємо повністю готовий поштовий сервер із гарним функціоналом. Такжо треба обовʼязково додати DKIM, DMARC, SPF записи до DNS.
#### Додаткова інформація ####
Після встановлення обов'язково закрити такі порти:
```
iptables -A INPUT -p tcp --dport 11211 -j DROP
iptables -A INPUT -p tcp --dport 111 -j DROP
iptables -A INPUT -p udp --dport 11211 -j DROP
iptables -A INPUT -p udp --dport 5353 -j DROP
iptables -A INPUT -p udp --dport 111 -j DROP
iptables -I OUTPUT -p udp --dport 11211 -j DROP
iptables -I OUTPUT -p tcp --dport 11211 -j DROP
iptables -I INPUT -p tcp -m multiport --dports 67,68,135,137,138,139,445,631,1025 -j DROP
iptables -I INPUT -p udp -m multiport --dports 67,68,135,137,138,139,445,631,1025 -j DROP
```
[Як додати header unsubscribe](https://wiki.zimbra.com/wiki/index.php?curid=23091)
Як встановити zimlets:
```
su zimbra
zmzimletctl install com_zimbra_stickynotes.zip
zmzimletctl deploy com_zimbra_stickynotes.zip
zmzimletctl enable com_zimbra_stickynotes
zmzimletctl install com_zimbra_emailtemplates.zip
zmzimletctl deploy com_zimbra_emailtemplates.zip
zmzimletctl enable com_zimbra_emailtemplates
```