Mod:Postfix Made DKIM selector variable

This so multiple servers useing Web-V2 can send from the same domain
Now using odksec for host selector var
and odkdomsec for domain selector var
This commit is contained in:
2021-03-12 14:44:40 +01:00
parent f28b08792c
commit 73bf0aa0f4
4 changed files with 28 additions and 10 deletions

View File

@@ -1,8 +1,8 @@
#ADD DOMAIN #ADD DOMAIN
sudo --user opendkim mkdir /etc/opendkim.d/keys/"$maildomain" sudo --user opendkim mkdir /etc/opendkim.d/keys/"$maildomain"
sudo --user opendkim opendkim-genkey -r -D /etc/opendkim.d/keys/"$maildomain" -d "$maildomain" -s vps sudo --user opendkim opendkim-genkey -r -D /etc/opendkim.d/keys/"$maildomain" -d "$maildomain" -s "$odkdomsec"
echo "$maildomain" >> /etc/opendkim.d/TrustedHosts echo "$maildomain" >> /etc/opendkim.d/TrustedHosts
echo "vps._domainkey."$maildomain" "$maildomain":vps:/etc/opendkim.d/keys/"$maildomain"/vps.private" >> /etc/opendkim.d/KeyTable echo "$odkdomsec._domainkey."$maildomain" "$maildomain":"$odkdomsec":/etc/opendkim.d/keys/"$maildomain"/"$odkdomsec".private" >> /etc/opendkim.d/KeyTable
if [ $webserv != nginx_nonphp ]; then if [ $webserv != nginx_nonphp ]; then
echo "" >> "$phpPoolDir"/"$sitename".conf echo "" >> "$phpPoolDir"/"$sitename".conf
@@ -11,7 +11,7 @@ fi
curl --retry 7 --retry-delay 5 -s "$repo"/raw/"$branchtype"/"$branch"/SubModules/postfix/opendkim-init.sh -o ~/OpenDKIMInit-$sitename.sh curl --retry 7 --retry-delay 5 -s "$repo"/raw/"$branchtype"/"$branch"/SubModules/postfix/opendkim-init.sh -o ~/OpenDKIMInit-$sitename.sh
sed -i -e 's/DOMAINname/'$maildomain'/g' -e 's/SITEName/'${sitename//_}'/g' ~/OpenDKIMInit-$sitename.sh sed -i -e 's/DOMAINname/'$maildomain'/g' -e 's/SITEName/'${sitename//_}'/g' -e 's/ODKSec/'$odkdomsec'/g' ~/OpenDKIMInit-$sitename.sh
cat << EOF > /etc/update-motd.d/51-opendkim-"${sitename//_}" cat << EOF > /etc/update-motd.d/51-opendkim-"${sitename//_}"
#!/bin/sh #!/bin/sh

View File

@@ -7,6 +7,11 @@ if [ $IMODE = n ]; then
mailas=$(whiptail --nocancel --inputbox " Enter mail addres for sending mail?" 11 78 --title "Config" 3>&1 1>&2 2>&3) mailas=$(whiptail --nocancel --inputbox " Enter mail addres for sending mail?" 11 78 --title "Config" 3>&1 1>&2 2>&3)
maildomain=$(sed -e 's/[^@]*@//' <<< "$mail") maildomain=$(sed -e 's/[^@]*@//' <<< "$mail")
fi fi
if (whiptail --title "Config" --yesno " Use default DKIM selector [vps]?" 11 78); then
odkdomsec=vps
else
odkdomsec=$(whiptail --nocancel --inputbox " Enter DKIM selector" 11 78 --title "Config" 3>&1 1>&2 2>&3)
fi
fi fi
if [ $IMODE = l ]; then if [ $IMODE = l ]; then
@@ -25,4 +30,17 @@ if [ $IMODE = l ]; then
* )echo "Choose yes or no.";; * )echo "Choose yes or no.";;
esac esac
done done
while true; do
read -p "Use default DKIM selector [vps]? (y/n)" yn
case $yn in
[Yy]* )
odkdomsec=vps
break;;
[Nn]* )
echo 'Enter DKIM selector? '
read odkdomsec
break;;
* )echo "Choose yes or no.";;
esac
done
fi fi

View File

@@ -61,13 +61,13 @@ if [ "$shortdist" = "ubu1804" ] || [ "$shortdist" = "ubu2004" ] || [ "$shortdist
systemctl daemon-reload systemctl daemon-reload
fi fi
odksec=$(sed 's/\..*$//' <<< $hostname) odkhsec=$(sed 's/\..*$//' <<< $hostname)
sudo --user opendkim mkdir /etc/opendkim.d/keys/"$hostname" sudo --user opendkim mkdir /etc/opendkim.d/keys/"$hostname"
sudo --user opendkim opendkim-genkey -r -D /etc/opendkim.d/keys/"$hostname" -d "$hostname" -s $odksec sudo --user opendkim opendkim-genkey -r -D /etc/opendkim.d/keys/"$hostname" -d "$hostname" -s $odkhsec
echo ""$odksec"._domainkey."$hostname" "$hostname":"$odksec":/etc/opendkim.d/keys/"$hostname"/"$odksec".private" >> /etc/opendkim.d/KeyTable echo ""$odkhsec"._domainkey."$hostname" "$hostname":"$odkhsec":/etc/opendkim.d/keys/"$hostname"/"$odkhsec".private" >> /etc/opendkim.d/KeyTable
curl --retry 7 --retry-delay 5 -s "$repo"/raw/"$branchtype"/"$branch"/SubModules/postfix/opendkim-init.sh -o ~/OpenDKIMInit-host.sh curl --retry 7 --retry-delay 5 -s "$repo"/raw/"$branchtype"/"$branch"/SubModules/postfix/opendkim-init.sh -o ~/OpenDKIMInit-host.sh
sed -i -e 's/DOMAINname/'$hostname'/g' -e 's/SITEName/'host'/g' -e 's/vps/'$odksec'/g' ~/OpenDKIMInit-host.sh sed -i -e 's/DOMAINname/'$hostname'/g' -e 's/SITEName/'host'/g' -e 's/ODKSec/'$odkhsec'/g' ~/OpenDKIMInit-host.sh
unset odksec unset odkhsec
cat << EOF > /etc/update-motd.d/51-generalspf cat << EOF > /etc/update-motd.d/51-generalspf

View File

@@ -2,7 +2,7 @@ if [ -n "$1" ]; then
if [[ "$1" = "--enable" ]]; then if [[ "$1" = "--enable" ]]; then
echo "Enableing DKIM" echo "Enableing DKIM"
echo "*@DOMAINname vps._domainkey.DOMAINname" >>/etc/opendkim.d/SigningTable echo "*@DOMAINname ODKSec._domainkey.DOMAINname" >>/etc/opendkim.d/SigningTable
systemctl reload opendkim systemctl reload opendkim
#Remove script #Remove script
while true; do while true; do
@@ -26,7 +26,7 @@ echo "Optional to enable dkim"
echo "ip4:$(curl -s -4 icanhazip.com) ip6:$(curl -s -6 icanhazip.com)" echo "ip4:$(curl -s -4 icanhazip.com) ip6:$(curl -s -6 icanhazip.com)"
echo "Please add the folloing TXT Record to the DNS of DOMAINname" echo "Please add the folloing TXT Record to the DNS of DOMAINname"
echo "WARNING the output is split, please combine key before inserting into DNS" echo "WARNING the output is split, please combine key before inserting into DNS"
cat /etc/opendkim.d/keys/DOMAINname/vps.txt cat /etc/opendkim.d/keys/DOMAINname/ODKSec.txt
echo "" echo ""
echo "If DNS is propegated then run \"bash $0 --enable\"" echo "If DNS is propegated then run \"bash $0 --enable\""