====Adding Domains to ASSP 2====
How to add domains to an existing ASSP install based on “Install ASSP 2.x on CentOS 7.docx”
==Add Domain in Web UI==
Add your domain in:
Recipients/Local Domains/Transparent Recipients and Domains--> Local Domains* (localDomains)
The format should be like
domain1.com|domain2.com|domain3.com|domain4.com
==Allow Relaying==
This will allow relaying from the public IP of your MTA to ASSP
Relaying / Outgoing and Local Mail -> Accept All Mail* (acceptAllMail)
The format should be like
ip.add.re.ss|10.0.0.1|20.30.20.2|14.28.190.88
==Add Domains in Postfix==
Postfix will deliver your email to your MTA, define the destinations here per domain
==Edit the Postfix Transport file==
sudo vim /etc/postfix/transport
Add this to a file
test1-dom.com smtp:[internalhost.domain.com] # where internalhost.domain.com is your internal mail server
test2-dom.com smtp:[internalhost.domain.com] # if this is different mail server you can specify it here
test3-dom.com smtp:[internalhost.domain.com]
test4-dom.com smtp:[internalhost.domain.com]:235 # here we use a custom port so that port 25 isn't open to the public on the MTA
==Generate the transport map==
sudo postmap /etc/postfix/transport
====Enable DKIM====
This will create DKIM keys which will help validate your domain with other MTA
==Generate Keys==
sudo opendkim-genkey --domain=example.com --selector=default --verbose
This will produce two files named mail.private and mail.txt. Rename them to something more meaningful.
sudo mv default.private /etc/opendkim/keys/example.com.key
sudo mv default.txt /etc/opendkim/keys/example.com.dns
==Set Permissions==
sudo chown -R opendkim:opendkim /etc/opendkim/keys
sudo chmod -R 700 /etc/opendkim/keys
==Update DNS Records==
Once you have the keys from the above command you'll need to update the DNS with your domain registrar. Open the DNS file that was created, is should look something like this
default._domainkey IN TXT ( "v=DKIM1; k=rsa; "
"p=MIGfMA0GCSqGSIb344400sDFjSSDDNADCBiQKBgQC8iQZE2Ri7oEVMPprWVwt1eLhf6kOl7e/ufXPJYoB3f4K7dynhxTc4QnhOIgDLbih5FnzqKzA49/cngexDcz36CoLySlcYHWIyqoj6iP/Yrn1svCR1vc1jTCFU7HkEVhJ1YqNIE2ZpnnKMR28SHR+rtxOKnk1xpxexHXCpWwMHKwIDAQAB" ) ; ----- DKIM key default for domainname.com
On your domain registrar create a TXT record.
Host: default._domainkey
TXT Value: v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb344400sDFjSSDDNADCBiQKBgQC8iQZE2Ri7oEVMPprWVwt1eLhf6kOl7e/ufXPJYoB3f4K7dynhxTc4QnhOIgDLbih5FnzqKzA49/cngexDcz36CoLySlcYHWIyqoj6iP/Yrn1svCR1vc1jTCFU7HkEVhJ1YqNIE2ZpnnKMR28SHR+rtxOKnk1xpxexHXCpWwMHKwIDAQAB;
==Trusted Hosts==
Create a file of external hosts that DKIM should trust, one per line and comments are allowed, this should be the FQDN of any sending mail server that will relay through the ASSP server.
sudo vim /etc/opendkim/TrustedHosts
Here are example contents for our domain.
#
# External Hosts that OpenDKIM will Trust
edoceo.com
gcdn.org
he.edoceo.com
s001.edoceo.com
==Key Table for Multiple Domains==
This will map the domain key for each domain.
sudo vim /etc/opendkim/KeyTable
# $sender-pattern:$signing-domain:$keypath
default._domainkey.example.com example.com:default:/etc/opendkim/keys/example.com.key
default._domainkey.dom2.com dom2.com:default:/etc/opendkim/keys/dom2.com.2015.private
default._domainkey.dom3.com dom3.com:default:/etc/opendkim/keys/dom3.com.2015.private
default._domainkey.dom4.com dom4.com:default:/etc/opendkim/keys/dom4.com.2015.private
==Update Signing Table==
sudo vim /etc/opendkim/SigningTable
*@dom1.com mail._domainkey.dom1.com
*@dom2.com mail._domainkey.dom2.com
*@dom3.com mail._domainkey.dom3.com
*@dom3.com mail._domainkey.dom3.com
==Restart Services==
sudo systemctl restart opendkim.service
sudo systemctl restart postfix.service
====SPF====
On your domain registrar you'll want to add an SPF record. The record should be similar to the following:
Host: @
TXT Value: v=spf1 a:mail.dom1.com a:asspX.domX.com a:asspX2.domX.com a:smtp03.sec.haddentech.com -all
The value "a:" is an A record value and should include a record for each MTA/mail server and a record for each ASSP relay that you are going to send through.
====Dovecot SASL Authentication====
Configure Dovecot SASL so external mail server can authenticate and send via ASSP
Create local OS user with passwords which represent the external mail servers:
sudo useradd mail.sendingmta1.com && passwd mail.sendingmta1.com
Use this as the user name and password to authenticated when sending from your MTA to ASSP as a relay/smarthost.