I want the ability to use an api to input an email address such as abc#gmail.com get back a cloaked email address such as xyz#cloaked.com (preferably with cloaked.com being our own domain) and finally getting stats on emails sent to the cloaked address.
if you want it on your own domain that maes it easier. set up an MX record and your own mailserver, and then use the mail servers API to set up whatever random looking addresses you want.
Some malservers (eg exim) can be configured to look in an SQL database to do the lookups for forwarding the mail, I'm not aware of any standardised API for requesting or configuring forwarders, the closest to a standard I've seen is /etc/aliases
Related
Short Description
I am trying to figure out how to use AWS SES to receive email and store this in an S3 bucket, but only for a specific email address of a domain. The rest of the emails I would like to be handled by my email provider iCloud (or any other provider).
Why
I am working on a CDK Construct, and in order to test this construct I need to receive an email to a specific email address (testing#my-domain.com for example). I also need to read the contents of this email in order to complete the testing, however the domain I own is already setup to receive emails to other email addresses within that domain (contact#my-domain.com, and me#my-domain.com for example). Currently, this domain is registered through NameCheap (arbitrary DNS registrar) and the email client is setup through iCloud.
The Problem
The issue I am finding is that in order to receive email from AWS SES, I need to configure MX records for my domain on NameCheap to point to AWS SES. If I do this then I will no longer be able to receive emails from any other email addresses on my domain such as contact#my-domain.com or me#my-domain.com on iCloud (or any other email provider) as emails can only go to one server based upon the highest priority MX record.
In essence a pseudocode example of the logic I would like to have:
if email_address == 'testing#my-domain.com' then
save_to_s3_bucket()
else
default_send_to_icloud()
Investigated Solutions
Purchase second domain
One thing I could do, is apply a rule in iCloud that would forward all emails from the testing#my-domain.com email to go to any other address. The only way this would work is if I purchased a second domain and forwarded emails to an address on this domain. Here I could setup the MX records with no conflict as this domain would be used only for this purpose, and save to S3 bucket.
I don't like this approach because now I have to purchase a recurring fee of $12/year for a singular purpose of receiving an email for a test. This seems like an overkill solution for my problem.
Send email to S3 Bucket Endpoint
This is an imaginary solution (to the best of my knowledge), but wanted to show I have investigated this route. The idea would be if AWS S3 offered a service where they controlled a domain that anyone could send an email to, and then you could configure your S3 bucket to accept emails from some REGEX domain string and allow these to be saved to your bucket as a file. (I haven't fleshed out what the whole process is, but just giving rough concept)
This does not work as this is not a current offering from S3 (but would be pretty cool if they added it).
Forward to iCloud
The last option feels like a configuration nightmare, but the idea would be to configure AWS SES to receive all emails by setting the MX records of the domain to point there. Then we could apply rule-based filter to forward the emails that we aren't saving to S3 on to the iCloud server.
This approach has quite a few question marks, such as would the email appear to be sent from SES? How would I respond via iCloud to emails? Would need to investigate latency, dropped emails, etc. from SES.
I really don't want to do this as it feels like a nightmare of configuration. I have not done this though so please let me know if it is simpler than I might imagine.
These are the only solutions I have found thus far, are there any other solutions? I find it hard to believe I am the only person who has come across an issue like this, but googling for a solution like this is extremely difficult.
After some searching I found a solution by using a subdomain of my original domain. If I do this, then I can maintain the original MX records of my root domain and receive emails to my iCloud (or any other provider). Next I can add MX records to a subdomain, all emails will now be directed to AWS SES.
Type
Host
Value
Priority
TTL
MX
my-domain.com
mx04.mail.icloud.com
10
Automatic
MX
my-domain.com
mx07.mail.icloud.com
10
Automatic
MX
testing.my-domain.com
inbound-smtp.us-east-1.amazonaws.com
10
Automatic
The benefit of doing it this way is that subdomains are free in most (all?) DNS registrars.
AWS SES MX Configuration Docs
Now all emails from me#my-domain.com, contact#my-domain.com, etc will go to iCloud. All emails to anything#testing.my-domain.com, another#testing.my-domain.com, etc will go to AWS.
I recently started working in hosting/software firm. And currently we have problem with our DNS server.
Two days ago we started getting complaints from our clients that they are receiving emails but in the From section there is a mistake, it shows wrong email of a sender. The email address that's displayed is a random address from one of our clients.
After trying to solve this problem i realized that in Email Deliverability section in cPanel Problems Exist (DKIM, SPF, and Reverse DNS).
When clicked on manage it shows how the records should look and it says that I need to update them, the problem is those same inputs do exist and so the problem persists.
It's important to note that this is a shared hosting server.
Is this some form of hacker attack? Did anyone ever had the same problem?
The sender email address is always specified by the mail client used to send that email (it's common to make mistakes in mail client settings). If those emails are not really sent by your team/server, it could be spoofing. You can implement SPF/DKIM + DMARC in your domain so that recipients can reject spoofed messages whenever they're not coming from your server.
Turns off the problem was coming from a different IP address. We were being attacked. As soon as we blocked it it stopped, and that error cPanel was showing was because the configuration on our server, it was always there.
This was the problem. I advise all WHM/cPanel users to update ASAP because the problem is really hard to find once you get in the middle of it.
https://www.tenable.com/blog/cve-2019-10149-critical-remote-command-execution-vulnerability-discovered-in-exim
You can monitor your email health score with a mail testing service.
These services allow you to check for deliverability issues along with spam activity on your email. Warmup Inbox provides a health score to all users. It's nice to keep track of how your email is performing/what needs to be improved.
Implementing a SPF record alongside proper DMARC and DKIM settings for your domain will drastically increase the overall deliverability rates of all outgoing mail coming from your domain. DKIM and DMARC increase deliverability rating as well as keep your mail server safe from malicious attacks and damaging spam mail.
I wanted try to Cloudflare, changed my DNS and checked mx and mail values. But mail still doesn't work.
I wonder also what is free plan of Cloudflare protects my Website from?
After moving your website over to CloudFlare you must set up what are called MX DNS Records. These are bits of information that tell email solutions like gmail where to send email when your domain is used.
To setup an MX record do the following:
Navigate to the DNS panel in your CloudFlare control panel
Select the record type as MX from the dropdown box:
As we are creating MX records that allow emails to #example.com be received, set the name as #. If you are using an external email provider enter their domain address instead here:
Clicking the next field will open up a box in which two things are set - the server, and the priority of this server. Type in the address of the mail server - in our example this will be mx1.mail.com. Also select the priority that you are advised to set - this server will have have the priority of 10:
Click save. Unless specifically asked by your email provider to set a certain TTL, leave “Automatic TTL” selected. Finally click “Add Record”. Your first MX record will now be saved and added to the list of your DNS records:
(source)
To compare what protection features you get with the different CloudFlare plans, check out the table at the bottom of https://www.cloudflare.com/plans/
As you probably know, changes in MX values may take 24hrs to propagate. In your case though, if you just changed to the CloudFlare name servers and the MX servers were unchanged, I wouldn't expect there to be any issue with your mail delivery.
But mail still doesn't work.
Can you give more details?
i just click on Mail DNS and make cloud grey, now emails are working.
Change your MAIL's proxy status to DNS Only ( grey cloud) and your email will start working
I already have a free user account into cloudbees.
Now I need to setup the account of my approved FOSS project. I couldn't use my personal email for this. This means that I need to create an specific email for the open source project?
We (cloudbees) also can convert your FREE account to FOSS if you wish. please then reply to your approval email asking for the conversion
Many email providers (such as Google) will deliver email to an account if the address includes the account name followed by some delimiter and some arbitrary characters.
So if your email address is foo#gmail.com, you will receive mail from foo+1#gmail.com, foo+abc#gmail.com, etc. In this way, you can create multiple unique accounts on CloudBees which all map to a single email inbox.
http://lifehacker.com/144397/instant-disposable-gmail-addresses
This probably works on all the other webmail providers, but that's a guess.
How have people intergrated custom CRM type applications with email?
I have a Access 2003 front-end application with a SQL Server 2005 backend. One CRM
part of the application tracks the activity with the customer in a traffic
log table. Sometimes the salesstaff has communication with their customer
using email instead. What do people do to synch this up with an application?
I was thinking about creating a form to enter the initial message, so I
could save it into a table and then have the system generate a email, of
course, this doesn't handle the email communication after the initial email.
Thanks
What you need to do is setup your domain name with a free google apps account. Your sales staff can still use the clients of their choice, but since they are essentially using custom gmail accounts, every single email that they send and receive will be recorded in a nice and neat transactional format in the gmail interface. Since your sales staff is always online, they will always have access to every message they ever sent. If you want to have access to the emails, you can set it up that every single message that gets sent are automatically blind forwarded to your account. Filters can be set up to automatically tag and archive them, so you will not be overwhelmed, but you will still be able to search them. Google Apps will also give you a central contact directory similar to outlook/exchange.
Here are a few options for you:
Use web forms for all communications. When a message is sent out, the only thing it includes is a link back to the site. Responses are sent the same way.
Setup an email alias that your sales staff Cc's when they want their correspondence to be tracked. Your app would periodically read a POP mailbox, and record the traffic. Customers would have to remember to Cc the same email box for the traffic to be remembered.
Establish a single common email box, such as sales#domain.com. All outgoing mail is marked as being from that account, so all replies will go through it. To send mail, sales staff uses a web form. Messages are tagged with a key that associates them with a particular customer. Putting the key in the subject header usually works OK (that's how many support ticket management systems work, for example). Replies from customers keep the tag. Your app then reads an associated POP mailbox, parses out the keys, and stores the email accordingly.