Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env php
- <?php
- // Define the application root directory
- define('ROOT_DIR', dirname(__DIR__));
- // Require the Composer autoloader
- require ROOT_DIR . '/vendor/autoload.php';
- // Load configuration files
- require ROOT_DIR . '/config/app.php';
- require ROOT_DIR . '/config/mail.php';
- use App\Helpers\DkimHelper;
- // Output header
- echo "═════════════════════════════════════\n";
- echo " DKIM Key Generator Tool \n";
- echo "═════════════════════════════════════\n\n";
- try {
- // Create DKIM helper
- $dkimHelper = new DkimHelper();
- // Generate keys (2048 bits is recommended)
- echo "Generating DKIM keys (2048 bits)...\n";
- $result = $dkimHelper->generateKeys(ROOT_DIR . '/config/mail', 2048);
- echo "DKIM keys generated successfully!\n\n";
- echo "Private key saved to: {$result['private_key_path']}\n";
- echo "Public key saved to: {$result['public_key_path']}\n\n";
- echo "═════════════════════════════════════\n";
- echo "DNS TXT Record for DKIM configuration:\n";
- echo "═════════════════════════════════════\n\n";
- $domain = MAIL_DKIM_DOMAIN;
- $selector = MAIL_DKIM_SELECTOR;
- echo "Domain: $domain\n";
- echo "Selector: $selector\n\n";
- echo "Create this DNS TXT record:\n";
- echo "$selector._domainkey.$domain. IN TXT (\n";
- // Format the TXT record for DNS with proper wrapping
- $txtRecord = $result['dns_txt_record'];
- $wrappedTxt = wordwrap($txtRecord, 80, "\n ");
- echo " \"$wrappedTxt\"\n )\n\n";
- echo "This record should be added to your domain's DNS configuration.\n\n";
- echo "═════════════════════════════════════\n";
- echo "Done!\n";
- } catch (Exception $e) {
- echo "Error: " . $e->getMessage() . "\n";
- exit(1);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement