SendGrid — це хмарний SMTP-сервіс, який дозволяє надсилати електронну пошту без необхідності керувати поштовими серверами.
УВАГА: Порт 25 закритий для підключення на наших віртуальних машинах за замовчуванням. Якщо ви хочете відкрити порт 25, придбайте Mail Bridge і налаштуйте його у Starlight™ Manager.
Щоб налаштувати електронну пошту SendGrid на WHM, скористайтеся цією інструкцією.
Виконайте наступні кроки, щоб налаштувати сервіс SendGrid і Email System для вашого домену на стороні CyberPanel:
1. Зареєструйтеся в SendGrid:

Після заповнення всієї контактної інформації натисніть «Continue».
2. Вас буде перенаправлено у нову вкладку браузера для підтвердження вашого поштового акаунта. Скопіюйте код підтвердження, надісланий на вашу електронну адресу, введіть його у поле «Code» і натисніть «Verify»:

3. Підтвердіть номер телефону, ввівши код підтвердження, надісланий на нього, у поле «Enter certification code» і натисніть «Verify»:

4. Далі ви отримаєте код відновлення, який стане у пригоді у випадку втрати телефону або відсутності доступу до пристрою для підтвердження. Скопіюйте код, збережіть його і натисніть «Continue». Також є можливість завантажити код як файл:

5. Заповніть вашу контактну інформацію на наступній сторінці та натисніть «Next»:

6. На наступній сторінці відкрийте вашу панель керування SendGrid:

7. Коли ви там, перейдіть у «Settings» >> меню «API Keys», щоб створити новий API-ключ:

8. У відкритому меню введіть назву API-ключа, встановіть для нього права доступу «Full Access» і збережіть налаштування:

9. Налаштуйте автентифікацію відправника SendGrid. Є два способи це зробити:
Метод 1: Перевірка одного відправника
Перевірка одного відправника — це швидкий спосіб перевірки, який дозволяє додати авторизованого одержувача (одну або декілька електронних адрес) при використанні облікового запису SendGrid. Наприклад, якщо ви хочете надсилати листи з john.doe@example.com, доданого на сервері cPanel, на jane.doe@gmail.com. Адресу jane.doe@gmail.com потрібно додати до Перевірки одного відправника в SendGrid для цього.
УВАГА: Перевірка одного відправника рекомендується лише для тестування.
УВАГА: Ви можете надсилати лише з тієї адреси, яку перевірили, а не з будь-якої адреси на автентифікованому домені.
Щоб налаштувати Перевірку одного відправника, перейдіть у «Settings» у вашій панелі керування SendGrid >> меню «Sender Authentication» >> натисніть кнопку «Verify a Single Sender»:

На наступній сторінці створіть відправника, заповнивши контактну інформацію, і натисніть «Create», щоб зберегти все:

Після цього ви отримаєте лист для підтвердження від SendGrid. Щоб підтвердити додавання електронної адреси, натисніть кнопку «Verify Single Sender» у листі:

Метод 2: Автентифікація домену (рекомендовано)
Натисніть «Settings» >> перейдіть у меню «Sender Authentication» >> у полі «Domain Authentication» натисніть «Authenticate Your Domain»:

На наступній сторінці автентифікуйте ім'я вашого домену, відповівши на питання з першого та другого кроків, і натисніть «Next»:

УВАГА: На скріншоті ми обрали відповідь «No» на друге питання. Однак ця відповідь не є обов'язковою.
Після цього введіть потрібне ім'я домену, за потреби встановіть додаткові налаштування та натисніть «Next»:

Тепер необхідно підтвердити ім'я домену, налаштувавши відповідні CNAME і TXT DNS-записи.
Після створення DNS-записів для домену підтвердьте їх додавання на кроці 2, поставивши галочку «I’ve added these records» і натисніть «Verify» нижче:

УВАГА: Пропагація DNS-записів може зайняти до 24-48 годин.
10. Наступний крок — налаштувати SMTP-параметри для сервера CyberPanel.
На жаль, CyberPanel поки не пропонує користувачам спеціального інтерфейсу для налаштування SMTP. SendGrid потрібно налаштовувати через SSH-термінал.
Спочатку увійдіть на ваш сервер як root:
ssh root@SERVER_IP_ADDRESS -p PORT
Де SERVER_IP_ADDRESS — це IP-адреса вашого сервера, а PORT — порт підключення по SSH (за замовчуванням 22022)
Відкрийте /etc/postfix/main.cf файл у текстовому редакторі:
nano /etc/postfix/main.cf
абоvi /etc/postfix/main.cf
Додайте наступні рядки в кінець файлу:
smtp_sasl_auth_enable = yessmtp_sasl_password_maps = hash:/etc/postfix/sasl_passwdsmtp_sasl_security_options = noanonymoussmtp_sasl_tls_security_options = noanonymoussmtp_tls_security_level = encryptheader_size_limit = 4096000relayhost = [smtp.sendgrid.net]:587
Тепер потрібно вказати ваші облікові дані (використовуйте apikey як ім'я користувача та API-ключ як пароль) у окремому файлі /etc/postfix/sasl_passwd (ймовірно, його потрібно буде створити):
echo “[smtp.sendgrid.net]:587 apikey:YOUR_SENDGRID_API_KEY” > /etc/postfix/sasl_passwd
Де YOUR_SENDGRID_API_KEY — це ключ, який ви створили на кроці 8.
Далі переконайтеся, що файл має обмежений доступ на читання й запис лише для root, і використайте команду postmap для оновлення хеш-таблиць Postfix для використання цього нового файлу:
sudo chmod 600 /etc/postfix/sasl_passwdsudo postmap /etc/postfix/sasl_passwd
Нарешті, перезапустіть Postfix:
systemctl restart postfix
Встановіть плагін SASL на ваш сервер:
apt-get install libsasl2-modules # для Ubuntudnf install cyrus-sasl-plain # для Almalinux/CloudLinuxyum install cyrus-sasl-plain # для CentOS
Також деяким інстансам може знадобитися MySQL Driver для Dovecot для налаштування MySQL Backend для автентифікації:apt install dovecot-sqlite dovecot-mysql # для Ubuntudnf install dovecot-mysql # для Almalinux/CloudLinuxyum install dovecot-mysql # для CentOS
Після цього перезапустіть Dovecot:
systemctl restart dovecot
Тепер ви можете перевірити, чи надсилається пошта через SendGrid:
sendmail -f YOUR_LOCAL_EMAIL -v DESTINATION_EMAIL
Де YOUR_LOCAL_EMAIL — це поштовий акаунт, який ви створили у вашому обліковому записі CyberPanel, а DESTINATION_EMAIL — це адреса одержувача, на яку надсилається тестовий лист.
Далі введіть текст повідомлення і натисніть Ctrl+D для надсилання.
Або скористайтеся Webmail у вашому обліковому записі CyberPanel, щоб надіслати тестовий лист звідти.