Используйте эту команду для проверки: netstat -tulpn | grep -E '25|80|443|587|993' Проверка открытых портов Это обеспечит бесперебойную связь для отправки и получения писем. Настройка DNS Правильная настройка DNS критически важна для функционирования электронной почты. Ваш домен должен знать, куда направлять почтовый трафик. Вот краткое руководство: A-запись: Связывает mail.yourdomain.com с IP-адресом вашего сервера MX-запись: Направляет входящие письма на mail.yourdomain.com SPF, DKIM и DMARC: Эти записи аутентифицируют ваши письма и снижают вероятность их попадания в спам Если вы новичок в DNS, не волнуйтесь — в основном это копирование и вставка. Для управления моими DNS-записями я использую Cloudflare — это мой выбор для всего, что связано с DNS. Ваша настройка может отличаться; возможно, вы используете панель DNS вашего регистратора доменов или другого провайдера. Независимо от платформы, шаги остаются схожими, просто адаптируйте их под ваш инструмент. A-запись Name: mail Type: A Value: IP-адрес вашего сервера Добавление A-записи в настройки DNS CNAME-записи Name: autoconfig Type: CNAME Alias: mail.yourdomain.com Добавление CNAME-записи с autoconfig в настройки DNS autodiscover: Name: autodiscover Type: CNAME Alias: mail.yourdomain.com Добавление CNAME-записи с autodiscover в настройки DNS MX-запись Name: @ Type: MX Priority: 10 Mail Exchange: mail.yourdomain.com Добавление MX-записи в настройки DNS SPF-запись Name: @ Type: TXT Value: v=spf1 ip4:your_server_ip -all Добавление TXT-записи для SPF в настройки DNS DKIM-запись Ключ мы сгенерируем позже во время настройки Mailcow. Name: dkim._domainkey Type: TXT Value: v=DKIM1;k=rsa;t=s;s=email;p=… Установка Mailcow Теперь начинается самое интересное. Прежде всего, клонируем репозиторий Mailcow на ваш сервер: git clone https://github.com/mailcow/mailcow-dockerized cd mailcow-dockerized Клонирование репозитория Mailcow на сервер Генерация конфигурации Запустите этот скрипт для создания конфигурации вашего сервера: ./generate_config.sh Он запросит FQDN, то есть ваш домен. Используйте mail.yourdomain.com . Этот шаг также настроит SSL-сертификаты с использованием Let's Encrypt. Запуск конфигурационного скрипта для генерации важных файлов для Mailcow Запуск контейнеров Когда вся подготовительная работа проделана, пора оживить ваш почтовый сервер. Чтобы запустить все, используйте следующую команду: docker-compose up -d Вот что происходит: Docker автоматически проверит наличие обновлений для контейнеров Mailcow (если необходимо), а затем загрузит и запустит все: ваш почтовый сервер, веб-интерфейс, спам-фильтры и многое другое — все одной командой. Флаг -d означает "detached" (отсоединенный), то есть контейнеры будут работать в фоновом режиме, позволяя вам заниматься другими задачами, пока все загружается. В зависимости от вашей системы и скорости интернета этот шаг может занять несколько минут, так что можете сходить за кофе, пока ваш сервер оживает. Использование команды docker-compose для запуска контейнеров Mailcow Настройка Mailcow Теперь, когда ваш сервер Mailcow запущен и работает, пора настроить его для фактической обработки ваших писем. Прежде всего, давайте войдем в административный интерфейс Mailcow. Для этого перейдите по адресу https://mail.yourdomain.com , вам будет предложено войти, используя учетные данные по умолчанию: Имя пользователя: admin Вход в Mailcow при первоначальной настройке с учетными данными по умолчанию Добавление домена Обеспечив свой административный доступ, давайте добавим ваш домен. Перейдите на вкладку Configuration в верхней части панели управления в разделе E-Mail. Доступ к странице конфигурации для добавления домена Здесь вы добавите доменное имя, которое используете для электронной почты (например, yourdomain.com ). Простыми словами, этот шаг, по сути, говорит Mailcow: "Эй, это домен, который мы будем использовать для отправки и получения писем", так что убедитесь, что он правильный. Нажатие на кнопку добавления домена После того как вы его добавили, нажмите кнопку "Add Domain and restart SOGo", и вы готовы к следующему шагу. После завершения нажмите кнопку добавления домена и перезапуска SOGo внизу Генерация DKIM-ключей DKIM (DomainKeys Identified Mail) — это способ подписывать ваши письма, чтобы принимающие серверы могли проверить, что они действительно от вас и не были изменены. Это важная часть, чтобы ваши письма не попадали в папку со спамом. Чтобы сгенерировать DKIM-ключи для вашего домена, перейдите в Configuration > ARC/DKIM Keys в Mailcow. Этот раздел позволяет создать уникальный DKIM-ключ для вашего домена. Генерация DKIM-ключа из меню конфигурации После генерации ключа вам нужно скопировать его и добавить как TXT-запись в настройках DNS вашего домена (обсуждалось выше). Добавление DKIM-ключа в настройки DNS Cloudflare Этот шаг может занять некоторое время для распространения, но не волнуйтесь — как только это будет сделано, ваши письма станут гораздо более защищенными. Создание почтовых ящиков С настроенным доменом и установленными DKIM-ключами вы готовы начать создавать почтовые ящики. Здесь вы настроите индивидуальные учетные записи электронной почты для себя, своей команды или всех, кому нужен адрес электронной почты под вашим доменом. Перейдите в Mail Setup > Mailboxes в панели управления Mailcow. Здесь вы увидите опцию "Add Mailbox". Создание почтового ящика Просто выберите имя пользователя, назначьте его вашему домену, создайте пароль и нажмите "Add Mailbox". Настройка пользователя для почтового ящика Вы можете добавить столько почтовых ящиков, сколько вам нужно, будь то для вас самих или для ваших коллег. После готовности вы увидите почтовый ящик в списке с другими настройками После создания почтовых ящиков вы можете протестировать их, войдя в интерфейс веб-почты. Просто перейдите в Apps > Webmail и войдите, используя только что созданную учетную запись электронной почты. Веб-почта После этого ваша базовая настройка Mailcow готова! Теперь у вас есть полнофункциональный почтовый сервер, работающий на вашем домене, способный отправлять и получать письма. Входящие веб-почты Подводные камни и важное замечание Но подождите, здесь все становится интересным. Во время моего тестирования я отправил два письма: одно на мой аккаунт Microsoft Outlook… Письмо получено в веб-интерфейсе Outlook …и другое на мой доменный аккаунт, размещенный на ProtonMail. Письмо получено в веб-клиенте ProtonMail К моему огорчению, оба письма попали прямиком в папку "Нежелательная почта/Спам"! После некоторого поиска неисправностей я понял, что это, вероятно, потому, что я еще не настроил DMARC-запись. Без DMARC провайдеры электронной почты часто помечают сообщения как подозрительные, даже если настройка сервера в остальном выглядит нормально. Так что, хотя ваша настройка Mailcow может быть технически завершена на этом этапе, впереди еще важная работа. Тонкая настройка этих конфигураций и проведение дополнительных тестов имеют решающее значение для того, чтобы сделать ваш почтовый сервер действительно надежным. Письмо получено в веб-почте Cowmail, отправленное с аккаунта Outlook Заключительные мысли Когда я впервые начал настраивать свой почтовый сервер, я был поражен тем, как Mailcow сделал все таким доступным. Благодаря его оптимизированному интерфейсу и предварительно настроенным Docker-контейнерам я не мог не задаться вопросом: почему больше людей не используют это? Казалось, что это идеальное решение, пока я не копнул глубже. Запуск Mailcow — это не просто запуск нескольких контейнеров. Это совершенно другой уровень ответственности, который связан с управлением вашим IP. От обеспечения чистоты репутации вашего IP до избежания черных списков и настройки статического IP — все это может стать ошеломляющим очень быстро. Mailcow не может решить эти проблемы за вас, и именно по этим причинам существуют управляемые сервисы. Для большинства людей нажатие кнопки "зарегистрироваться" на надежном хостинге стоит своей цены ради спокойствия. Но для любителей поковыряться, как я? Это именно тот вызов, который мы любим. Исследование, поломка вещей и их починка — это половина удовольствия. Дело не только в наличии собственного почтового сервера, это знание того, как он работает в точности, и удовлетворение от его создания своими руками. Если вы когда-либо задумывались о хостинге собственной электронной почты, я бы хотел услышать, как это получилось у вас или что вас сдерживает. Удачи, и пусть ваши письма всегда попадают во входящие! 😅 Ссылка на оригинальную статью: Selfhost Your Own Email Server with Mailcow на Linux Handbook Теги: Source: https://habr.com/ru/articles/974114/