По целия свят

Как да инсталирате Postal SMTP сървър и да конфигурирате DNS (SPF, DKIM, DMARC)

 

Postal е мощна open-source платформа за изпращане на имейли, която ви позволява да управлявате собствен SMTP сървър за изпращане на транзакционни и масови имейли. Тя предоставя уеб интерфейс, API и SMTP достъп подобно на услуги като SendGrid или Mailgun.

Това ръководство показва как да инсталирате Postal на VPS сървър, използвайки Docker, както и как да конфигурирате DNS записи за правилна доставка на имейли.

Минимални системни изисквания

  • Ubuntu 22.04 сървър
  • Минимум 4 GB RAM
  • 2 CPU ядра
  • Публичен IP адрес
  • Домейн с DNS достъп

Стъпка 1 – Подготовка на сървъра

ssh root@SERVER_IP
apt update && apt upgrade -y
apt install git curl jq -y

Стъпка 2 – Инсталиране на Docker

curl -fsSL https://get.docker.com | sh
docker --version

Postal работи изцяло с Docker и не може да бъде използван без него.

Стъпка 3 – Конфигуриране на Hostname, A запис и Reverse DNS (PTR)

Правилната конфигурация на hostname и DNS е критично важна за доставката на имейли и издаването на SSL сертификат.

Задаване на hostname

hostnamectl set-hostname postal.example.com

Редактирайте hosts файла:

nano /etc/hosts
127.0.0.1 localhost
SERVER_IP postal.example.com postal

Конфигуриране на A запис

postal.example.com → SERVER_IP

Конфигуриране на PTR (Reverse DNS)

SERVER_IP → postal.example.com

Важно: Hostname, A записът и PTR записът трябва да съвпадат напълно.

Стъпка 4 – Инсталиране на Postal helper

git clone https://github.com/postalserver/install /opt/postal/install
ln -s /opt/postal/install/bin/postal /usr/bin/postal

Стъпка 5 – Стартиране на MariaDB (Docker)

docker run -d \
   --name postal-mariadb \
   -p 127.0.0.1:3306:3306 \
   --restart always \
   -e MARIADB_DATABASE=postal \
   -e MARIADB_ROOT_PASSWORD=StrongPassword \
   mariadb

Стъпка 6 – Генериране на конфигурация

postal bootstrap postal.example.com

Стъпка 7 – Конфигуриране на Postal

nano /opt/postal/config/postal.yml
main_db:
  host: 127.0.0.1
  username: root
  password: StrongPassword
  database: postal

Стъпка 8 – Инициализиране на Postal

postal initialize
postal make-user

Стъпка 9 – Стартиране на Postal

postal start
postal status

Стъпка 10 – Стартиране на Caddy (Docker)

docker run -d \
   --name postal-caddy \
   --restart always \
   --network host \
   -v /opt/postal/config/Caddyfile:/etc/caddy/Caddyfile \
   -v /opt/postal/caddy-data:/data \
   caddy

Стъпка 11 – DNS конфигурация

MX запис

postal.example.com → postal.example.com

SPF запис

v=spf1 ip4:SERVER_IP ~all

DKIM запис

Ще бъде генериран в Postal интерфейса.

Return-Path домейн

rp.postal.example.com → SERVER_IP

Стъпка 12 – Достъп до Postal

https://postal.example.com

Стъпка 13 – Създаване на SMTP сървър

  1. Създайте Organization
  2. Създайте Mail Server
  3. Добавете домейн
  4. Генерирайте SMTP данни

Примерна SMTP конфигурация

SMTP Host: postal.example.com
SMTP Port: 587
Encryption: TLS
Username: your_username
Password: your_password

Стъпка 14 – Ъпгрейд на Postal

cd /opt/postal/install
git pull
postal update
postal restart

Заключение

Postal работи изцяло с Docker и използва контейнери за MariaDB и Caddy. С правилна DNS конфигурация и коректно зададен hostname можете да постигнете надеждна доставка на имейли.

Беше ли полезна тази статия?

Споделете тази статия

Facebook Twitter LinkedIn