Найти в Дзене
www.TechPlanet.pro

WordPress + Postfix

В этой инструкции мы добавим на сервер под #ubuntu плагины #WP MAIL SMTP и #contact form by WPForms для #WordPress для использования совместно с #Postfix Предварительная подготовка Ранее мы уже создали сервер WordPress и на него установили Postfix. Если вы это ещё не сделали, то вернитесь назад и создайте этот сервер. После его создания можем подключится и залогиниться как admin https://www.51.250.107.122.nip.io/wp-login.php Username: admin Password: TP5YdkZfbq28Lb9u5 WP Mail SMTP by WPForms Установим плагин WP Mail SMTP by WPForms Plugins -> Add New -> WP Mail SMTP by WPForms -> Install Now Активизируем его и настроем на использование нашего майл сервера. Plugins -> WP Mail SMTP -> Activate -> Let's Get Started -> Other SMTP -> Save and Continue -> SMTP Host -> 51.250.107.122.nip.io -> Encryption -> None -> Auto TLS -> off -> Authentication -> off -> From Email -> admin@51.250.107.122.nip.io -> Force From Email -> off -> Save and Continue -> Save
Оглавление

В этой инструкции мы добавим на сервер под #ubuntu плагины #WP MAIL SMTP и #contact form by WPForms для #WordPress для использования совместно с #Postfix

Предварительная подготовка

Ранее мы уже создали сервер WordPress и на него установили Postfix.

Если вы это ещё не сделали, то вернитесь назад и создайте этот сервер.

После его создания можем подключится и залогиниться как admin https://www.51.250.107.122.nip.io/wp-login.php

Username: admin
Password: TP5YdkZfbq28Lb9u5
-2

WP Mail SMTP by WPForms

Установим плагин WP Mail SMTP by WPForms

Plugins -> Add New -> WP Mail SMTP by WPForms -> Install Now
-3

Активизируем его и настроем на использование нашего майл сервера.

Plugins -> WP Mail SMTP -> Activate -> Let's Get Started
-> Other SMTP -> Save and Continue
-> SMTP Host -> 51.250.107.122.nip.io
-> Encryption -> None
-> Auto TLS -> off
-> Authentication -> off
-> From Email -> admin@51.250.107.122.nip.io
-> Force From Email -> off
-> Save and Continue
-> Save and Continue
-> Save and Continue
-> Skip this Step
-> Finish Setup
-4
-5
-6
-7
-8
-9
-10
-11

Не смотря на предупреждение, проверяем почту и видим, что всё работает. На самом деле он ругается, что у домена не настроена SPF запись.

-12
-13

Contact Form by WPForms

Плагин Contact Form by WPForms, должен был установится вместе с WP Mail SMTP, если этого не произошло, то установите его и активируйте.

Plugins -> Add New -> Contact Form by WPForms – Drag & Drop Form Builder for WordPress -> Install Now -> Activate
-14

Добавим новую форму.

WPForms -> Add New -> Simple Contact Form -> Use Template
-> Settings -> Notifications -> From Email -> {field_id="1"} -> Save
-> Embed -> Select Existing Page
-> Sample Page -> Let’s Go!
-> Add a Block (+)-> Widgets -> WPForms -> Select a Form -> Simple Contact Form
-> Update
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24

Автоответ

Настроим Postfix на отправку автоответа.

Установим плагин dovecot-managesieved

sudo apt install dovecot-managesieved roundcube-plugins -y

Добавим его в конфигурацию.

sudo sed -i 's/.mail_plugins = .*/mail_plugins = $mail_plugins sieve/' /etc/dovecot/conf.d/20-lmtp.conf

Поменяем расположение файла настроек.

sudo sed -i 's/sieve =.*/sieve = file:\/var\/mail\/vhosts\/%d\/%n\/sieve;active=\/var\/mail\/vhosts\/%d\/%n\/.dovecot.sieve/' /etc/dovecot/conf.d/90-sieve.conf

Перезапустим dovecot.

sudo systemctl restart dovecot.service

Добавим в roundcube плагин managesieve

sudo sed -i 's/plugins.. = array.*/plugins\x27\] = array\(\n       \"managesieve\"/' /etc/roundcube/config.inc.php

Добавим фильтр для автоответа.

-> Создать
-> Название фильтра -> autorep
-> Filter enabled -> on
-> Область -> все сообщения
-> Действия -> Ответить с сообщением
-> Текст сообщения (причина отсутствия): -> test from autoreplay
-> Тема сообщения: -> autoreplay
-> Заполнить всеми моими адресами
-> Сохранить
-25
-26

Проверим работу формы.

First: name
Last: surname
Email: info@51.250.107.122.nip.io
Comment or Message: test form
Submit
-27

Проверяем получение письмо от формы.

-28

Заходим под info@51.250.107.122.nip.io и проверяем автоответ.

имя: info@51.250.107.122.nip.io
пароль: PASSWORD
сервер: localhost
-29
-30

Обратите внимание, что стоит защита от повтора и сегодня повторно вы не получите автоответ. Но увидите сообщение (discarded duplicate vacation response) в логах.

nikolai@wordpress:~$ sudo tail -f /var/log/mail.log
May 30 16:11:53 wordpress dovecot: lmtp(admin@51.250.107.122.nip.io)<2730><mAjEBMnslGKqCgAAE6nm/Q>: sieve: msgid=<a0daef1ab3a7a8ce824c635a13dabc42@www.51.250.107.122.nip.io>: discarded duplicate vacation response to <info@51.250.107.122.nip.io>

Если остались вопросы, то задавайте в комментариях. Удачи в работе!