adddomain.sh to add an additional domain
This commit is contained in:
parent
8b9cde77af
commit
514e36196b
43
adddomain.sh
Executable file
43
adddomain.sh
Executable file
@ -0,0 +1,43 @@
|
||||
#!/bin/sh
|
||||
|
||||
domain="$1"
|
||||
[ -z "$1" ] && exit
|
||||
|
||||
domain="$1"
|
||||
subdom="mail"
|
||||
|
||||
# Add the domain to the valid postfix addresses.
|
||||
grep -q "^mydestination.*$domain" /etc/postfix/main.cf ||
|
||||
sed -i "s/^mydestination.*/&, $domain/" /etc/postfix/main.cf
|
||||
|
||||
# Create DKIM for new domain.
|
||||
mkdir -p "/etc/postfix/dkim/$domain"
|
||||
opendkim-genkey -D "/etc/postfix/dkim/$domain" -d "$domain" -s "$subdom"
|
||||
chgrp -R opendkim /etc/postfix/dkim/*
|
||||
chmod -R g+r /etc/postfix/dkim/*
|
||||
|
||||
# Add entries to keytable and signing table.
|
||||
echo "$subdom._domainkey.$domain $domain:$subdom:/etc/postfix/dkim/$domain/$subdom.private" >> /etc/postfix/dkim/keytable
|
||||
echo "*@$domain $subdom._domainkey.$domain" >> /etc/postfix/dkim/signingtable
|
||||
|
||||
systemctl reload opendkim postfix
|
||||
|
||||
# Print out DKIM TXT entry.
|
||||
pval="$(tr -d '\n' <"/etc/postfix/dkim/$domain/$subdom.txt" | sed "s/k=rsa.* \"p=/k=rsa; p=/;s/\"\s*\"//;s/\"\s*).*//" | grep -o 'p=.*')"
|
||||
|
||||
dkimentry="$subdom._domainkey.$domain TXT v=DKIM1; k=rsa; $pval"
|
||||
dmarcentry="_dmarc.$domain TXT v=DMARC1; p=reject; rua=mailto:dmarc@$domain; fo=1"
|
||||
spfentry="$domain TXT v=spf1 mx a:$maildomain -all"
|
||||
mxentry="$domain MX 10 $maildomain 300"
|
||||
|
||||
echo "$dkimentry
|
||||
$dmarcentry
|
||||
$spfentry
|
||||
$mxentry" >> "$HOME/dns_emailwizard_added"
|
||||
|
||||
echo "=== ADD THE FOLLOWING TO YOUR DNS TXT RECORDS ==="
|
||||
echo "$dkimentry
|
||||
$dmarcentry
|
||||
$spfentry
|
||||
$mxentry"
|
||||
echo "They have also been stored in ~/dns_emailwizard_added"
|
Loading…
Reference in New Issue
Block a user