Yggmail - це дочірній проект від розробників Yggdrasil, написаний на Go та має відкритий код.
З коробки, являє собою сервер, підключитись до якого можна через поштовий клієнт типу Thunderbird або DeltaChat.
Утім, від класичних поштових серверів відрізняється протоколом транспорту, тому не є сумісним зі звичайними скриньками і працює у власній мережі.
Yggmail варто сприймати саме як месенджер, оскільки він має тільки спільний поштовий інтерфейс IMAP / SMTP але іншу модель транспорту.
Yggmail знаходиться на стадії розробки, тому для встановлення будемо збирати з початкового коду на останній версії Go:
Встановлення останньої версії Go в Debian
Збірка Yggmail виконується наступною командою в теці і користувачем, від якого планується робота з поштою:
cd ~ go install github.com/neilalexander/yggmail/cmd/yggmail@latest
Наступним кроком, ініціюємо новий профіль:
yggmail -password
Записуємо згенеровану адресу в полі "Mail address", на неї будуть отримуватись листи і вона вказується при підключенні поштового клієнта.
Профіль користувача буде збережено до файлу "~/yggmail.db" - його можна використовувати для резервного копіювання пошти.
Щоб вказати альтернативний шлях, вказується атрибут "-database=/path/to/yggmail.db".
Довідка доступна командою:
yggmail -help
Запуск відбувається однойменною командою, утім декілька слів про режими підключень:
Відповідно:
yggmail -multicast yggmail -peer=tls://... yggmail -multicast -peer=tls://...
Yggmail отримує пошту тільки тоді, коли він працює та підключений до мережі.
Якщо вузол отримувача недосяжний, лист переміщується в до черги очікування і буде надіслано як тільки зв'язок між вузлами відновиться.
Тому зручно створити системний сервіс з автозапуском:
[Unit] Description=Yggmail After=network-online.target [Service] Type=simple ExecStart=/home/user/go/bin/yggmail -peer=tcp://... 2>&1 Restart=always [Install] WantedBy=multi-user.target
Активуємо сервіс:
systemctl daemon-reload systemctl enable yggmail systemctl start yggmail
Перевіряємо:
netstat -tulpn | grep LISTEN
Yggmail прослуховує порти:
В залежності від поштового клієнта, при створенні нового підключення скриньки, вказуються наступні дані:
Якщо сервер працює на віддаленому VPS, на ньому потрібно відкрити відповідні порти, а "localhost" замінити на його IP.
Єдиною рекомендацією можна додати, що не варто відправляти пошту самому собі для тестування, наразі це не працює.
Щоб перевірити роботу Yggmail - відправляйте пошту з іншого вузла або залиште вашу адресу в коментарях - можливо хтось вам відповість!