Підписуйте електронні листи за допомогою DKIM
DKIM (DomainKeys Identified Mail) – це технологія для підвищення довіри до електронних листів, яка також допомагає виявляти підроблені повідомлення. Надіслане повідомлення підписується SMTP-сервером за допомогою приватного ключа домену відправника, і цей підпис зберігається в заголовку електронного листа. Сервер отримувача порівнює цей підпис із публічним ключем, що зберігається в DNS-записах домену. Якщо підпис збігається, це доводить, що електронний лист дійсно надійшов з домену відправника і що під час передачі повідомлення не було змінено.

Nette\Mail підтримує DKIM з версії 3.1. Використання дуже просте:
$options = [
'domain' => 'myweb.com',
'selector' => 'lovenette',
'privateKey' => file_get_contents('dkim.priv'),
// 'passPhrase' => '****',
'testMode' => true,
];
$mailer = new Nette\Mail\SendmailMailer; // або SmtpMailer
$mailer->setSigner(new Nette\Mail\DkimSigner($options));
$mailer->send($mail);
Або ви можете використовувати файл конфігурації:
mail:
dkim:
domain: myweb.com
selector: lovenette
privateKey: %appDir%/cert/dkim.priv
passPhrase: ...
testMode: ...
Селектор – це довільний буквено-цифровий рядок малими літерами, який є частиною DNS-запису.
Приватний і публічний ключ можна згенерувати за допомогою онлайн-сервісів (наприклад, easydmarc) або локально за допомогою openssl:
openssl genrsa -out dkim.priv 1024
openssl rsa -in dkim.priv -pubout > dkim.pub
Опублікуйте публічний ключ, створивши
TXT-запис у DNS вашого домену, назва якого буде
поєднанням селектора, рядка ._domainkey.
та домену. У нашому прикладі це було б
lovenette._domainkey.myweb.com
. У деяких
адміністративних панелях домен може бути
вже попередньо заповнений.
Значенням запису буде поєднання рядка
v=DKIM1;t=s;k=rsa;p=
та публічного ключа, який
ви скопіюєте з файлу dkim.pub
. Видаліть
обгорткові коментарі -----BEGIN PUBLIC KEY-----
і з'єднайте рядки в один довгий:
v=DKIM1;t=s;k=rsa;p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDi5y95Mi8FZ8LOSmi7nA/EFhn4a4/Zq3BnnmPFdu1IvduDwMGRrRW5V9FKjXvr4AnUq7eMLRtEdWYRpR9BXLdCWiJ2N4yKJG7SEEir8DMYOGGeqJZoR/kWFiG++GW++sdhfukFflPusJjrWr+4Pc4/qxMSrqUk/rVdsSlTDDRy/QIDAQAB
Для перевірки налаштувань DKIM ви можете скористатися, наприклад, сервісом MailTester.
Щоб залишити коментар, будь ласка, увійдіть до системи