Перейти к основному контенту

Администрирование - Установка mailcow

Описание

Комбинация докеризированных сервисов для отправки и получения почтовых писем.
Данная инструкция может быть не актуальна, рекомендуется сверятся с официальной документацией.

Предварительная настройка

Настройка DNS

DNS должен быть настроен в соответсвии с DNS - mailcow

Настройка портов

Сервис Протокол Порт Контейнер Переменная Описание
Postfix SMTP TCP 25 postfix-mailcow ${SMTP_PORT}
Postfix SMTPS TCP 465 postfix-mailcow ${SMTPS_PORT}
Postfix Submission TCP 587 postfix-mailcow ${SUBMISSION_PORT}
Dovecot IMAP TCP 143 dovecot-mailcow ${IMAP_PORT}
Dovecot IMAPS TCP 993 dovecot-mailcow ${IMAPS_PORT}
Dovecot POP3 TCP 110 dovecot-mailcow ${POP_PORT}
Dovecot POP3S TCP 995 dovecot-mailcow ${POPS_PORT}
Dovecot ManageSieve TCP 4190 dovecot-mailcow ${SIEVE_PORT}
Nginx Reverse Proxy HTTP TCP 80 reverse-proxy
Nginx Reverse Proxy HTTPS TCP 443 reverse-proxy

удостовериться что порты не используются другими программами:

ss -tlpn | grep -E -w '25|80|443|110|143|443|465|587|993|995|4190'

или:

netstat -tulpn | grep -E -w '25|80|443|110|143|443|465|587|993|995|4190'

Установка

  1. Перейти в папку docker:
cd /путь/к/репозиторию/docker/
  1. Склонировать репозиторий mailcow:
git clone https://github.com/mailcow/mailcow-dockerized
  1. Перейти в папку mailcow-dockerized:
cd mailcow-dockerized/
  1. Скопировать mailcow.conf.example из mailcow-modifications в mailcow-dockerized, изменить настройки по необходимости и заполнить пустые поля паролей (или взять mailcow.conf из бэкапа):
cp ../mailcow-modifications/mailcow.conf.example ./mailcow.conf

необходимо отключать поддержку IPv6, так как она ломает функционирование спам фильтра, причина: сервер не имеет IPv6 адреса и не может достучатся до антиспам сервисов

  1. Сделать символьные ссылки файлов из mailcow-modifications в mailcow-dockerized:
    docker-compose.override.yml нужен для отключения IPv6 и подключения контейнеров к обратному прокси
ln -s ../mailcow-modifications/docker-compose.override.yml ./docker-compose.override.yml

extra.cf нужен для отключения IPv6

cd data/conf/postfix/
ln -s ../../../../mailcow-modifications/extra.cf ./extra.cf
cd ../../../
  1. Отключить IPv6 в unbound-mailcow:
    изменить data/conf/unbound/unbound.conf и установить do-ip6 на "no"
nano data/conf/unbound/unbound.conf
server:
  [...]
  do-ip6: no
  [...]
  1. Запустить mailcow:
docker compose up -d