hostbrook / laravel-dkim
Laravel 9.x, 10.x and 11.x package to sign emails with DKIM
Installs: 3 218
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 2
Open Issues: 3
Type:package
Requires
- laravel/framework: ^9.0 || ^10.0 || ^11.0
- symfony/mailer: ^5.2 || ^6.0 || ^7.0
README
Laravel 9.x, 10.x and 11.x DKIM signature
Sign all outgoing emails in Laravel 9.x, 10.x and 11.x with a DKIM signature.
IMPORTANT! The package version that supports Laravel 10.x starts from 1.2.5
IMPORTANT! The package version that supports Laravel 11.x starts from 1.4
Installation and setup
- Get the latest version of the package via Composer:
composer require hostbrook/laravel-dkim
- In
config/app.php
comment the line with the original mail service provider (if exists) and add the line with the new mail service provider:
// Illuminate\Mail\MailServiceProvider::class,
HostBrook\LaravelDkim\DkimMailServiceProvider::class,
-
Add your DKIM private key settings in
/.env
or in/config/mail.php
. The priority of DKIM settings is from/.env
file.3.1. The syntax, if you want to add DKIM private key settings in
/.env
file:DKIM_SELECTOR="selector1" DKIM_DOMAIN="domain.name" DKIM_PASSPHRASE="" DKIM_PRIVATE_KEY="/storage/app/dkim/private_key.txt"
As an option, you can add the full RSA Private Key to the
.env
file, for example:DKIM_PRIVATE_KEY="-----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAq1SCAScet736Rr/f36OYUo8cRziq4v2uq6kNs5wzEaaqUAoh ... ENwDlqtgpM9D7YznrL6W9NH7fdSwmz2Ux0frY6weuBx/VSeJn1fb -----END RSA PRIVATE KEY-----"
3.2. The syntax, if you want to add DKIM private key settings in
/config/mail.php
file:'dkim_selector' => 'selector1', 'dkim_domain' => 'domain.name', 'dkim_passphrase' => '', // leave empty if you didn’t protect the private key 'dkim_private_key' => '/storage/app/dkim/private_key.txt',
As an option, you can add the full RSA Private Key to the
/config/mail.php
file, for example:'dkim_private_key' => '-----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAq1SCAScet736Rr/f36OYUo8cRziq4v2uq6kNs5wzEaaqUAoh ... ENwDlqtgpM9D7YznrL6W9NH7fdSwmz2Ux0frY6weuBx/VSeJn1fb -----END RSA PRIVATE KEY-----',
Notes and recommendations
- No matter where you keep the RSA Private Key, in
/.env
file or in/config/mail.php
file or in a text file, everything between two instances'-----BEGIN RSA PRIVATE KEY-----'
and'-----END RSA PRIVATE KEY-----'
must be right up to the start of the line! - It is not recommended to keep private key directly in the
/config/mail.php
file for security reasons especially if your project is not in the private repository. - If you would like to keep RSA Private key in a text file, the path to the text file must be relative to the project base path (like in the example above).
Upgrading
Whenever there is a new release, then from the command line in your project root:
composer update
Deleting package
Running the following command will remove the package from vendor folder:
composer remove hostbrook/laravel-dkim
DKIM info
Read more how to:
- Generate DKIM Public and Private Keys
- Check if DKIM record is shown and has a correct format
- Test the Spammyness of your Emails