If authentication is required to send SMTP messages, how do different mail servers send messages to each other? - sockets

To learn about email and SMTP, I wrote a basic SMTP client using sockets to push an email to my outlook account, following an example from a textbook.
I ran into a hiccup though, when the outlook mail server required me to authenticate before I could send the email. After researching the issue, I learned this is to prevent mass email spam and sender spoofing, which makes sense. I resolved this by authenticating using my outlook email and sending the email to myself.
My follow up questions that I'm having trouble finding an answer to are:
If a different mail server, such as google, needs to push an email to my outlook inbox, how does it authenticate? Does the google mail server have an account with outlook?
Is it not possible to just send mail between any two mail servers? Do the mail server admins need to white list other email servers first?

Found my answer here: How to send a mail directly to SMTP server without authentication?
Turns out, I was not connecting to an external SMTP server for outlook, but rather a server for users to perform actions with their outlook account specifically.

Related

How does an SMTP server resolve ambiguity?

Suppose I own an email 'demo#gmail.com'. Now, I create a new Microsoft account using my existing email. Thus I get another email 'demo#gmail.com', but this one is served by Microsoft.
So the situation is: one email and two providers.
If I send a hello email to 'demo#gmail.com' using my personal SMTP server, to which of the above will it send: will it send to the one hosted by Microsoft or the one hosted by Google?
How does it solve such an ambiguity? What are the factors that influence this?
This is a very common problem because many providers are giving us an option to create a new account using our existing email.
My observations:
I saw the emails inside the inboxes of both the services. I found that they had completely different emails.
There was no email which was common to both the inboxes. So there must be some mechanism to deal with it.
Let us look at the problem the other way round: If I had an email 'demo#outlook.com' initially and I created a new Google Account with this email address, then:
An email sent to this email address from another gmail account goes to the Google's server. An email sent to this email address from an Outlook also goes to the Google's servers.
There are two different ways of looking up an email. The 'normal' way:
You send an email to an server, in this example gmail.com.
Your mail delivery agent looks for mx record of gmail.comand send it to the ip-address of gmail.com.
If an email is delivered locally by the domain outlook.com it perhaps doesn't lookup the mx record, but lookups in a local database if the email-address exist there, and sends it to the ip-address of the outlook.com.
I think in the inbox of outlook.com are only microsoft emails.
More details can be found at https://www.socketlabs.com/blog/smtp-email-delivery/

My system generated transactional Emails are going to outlook mail server though gmail is configured with the domain

I had outlook mail server configured with my server and all system generated emails(transactional) were getting received in my Outlook inbox which was installed on my server.
I wanted to move into Gmail. So, I mapped my domain with gmail (G suite) changed my SMTP credentials, outbound email password, etc in postfix, then MX records were also changed.
Outbound emails from my system/server are going to other addresses perfectly. but copies of them are not coming to my Gmail inbox, rather they are going to the outbox inbox.
I didn't stop/uninstalled Outlook as I noticed this problem. Normal emails which are coming from separate platforms are landing in my gmail, but most of my system generated transactional email copies are going to my outlook inbox.
I am using centos, Postfix and I want my system generated emails to land in my Gmail which now mapped with my domain.
**I also contacted Google support, they told it is problem with my email configuration/routing in server.
Please help. Thanks in advance.
I solved the problem just by gaining courage and deleting the outlook account. Now all emails are receiving in the Gmail smoothly.

Avatar for an email address

OK, I'm not sure this question even belongs here but here goes...
I have an email server running Postfix and Dovecot and a couple of mailboxes there. Using third party email services like Gmail or Outlook I've noticed they fetch an avatars for some emails. Question is how can I attach an avatar to my own mailboxes on my own server such that others will recognize them? Is this a part of mail protocols that I can set up somehow or should I use any third-party services?
Avatars are handled by mail client, not mail server. Gmail fetchs google+ avatars for #gmail.com and outlook fetchs avatar from a Microsoft global exchange address book.
AFAIK there is no protocol for email avatars and no easily possible 3rd party integration into gmail or outlook.

Connecting to my company mail server

I want my fellow workers in my company, able to connect to work mail from home,
we are able to retrieve the mails through outlook express but not thunderbird.
So our employees using thunderbird can't retrieve these emails.
Is there any fix for this?
You could you outlook.com's web based interface to connect to POP3 accounts, similar to what you do in outlook express.
Similarly you could add your email as additional account in gmail too.

Is there a reliable way to send email without having the senders smtp?

My application will be used in a manner that the user is remote from his computer running the application, receiving data via text messages sent periodically from the PC. Im sending the text message via email, using the number#carrierdomain.com. To simplify determining the user's smtp server, I've been sending the message using the destination phone carrier's smtp, instead of the whatever may or may not be available at the PC. This has worked so far with AT&T and T-Mobile, but not Verizon, as they have discontinued their smtp service.
I'm using mailsend v1.15 http://www.muquit.com/muquit/software/mailsend/mailsend.html
but Im open to alternatives.
I do have a less than ideal workaround, which is to use google or hotmail's smtp, but that requires a login/pass.
If I can send the text through regular email, using outlook, it works. I've looked at outlooks smtp logs, but that doesn't really help.
If its not being sent to a Verizon smtp server, how does it get routed, and is it something that my application can use?
Is there a reliable way to send email without having the senders smtp?
Theoretically, any smtp server can send your e-mail. However, due to the overwhelming amount of spaming on the internet, pretty much every isp has locked down their smtp server and will not allow anonymous relaying of e-mail.
If you do have the outlook client on the box you are sending the e-mail you can look at using one of the Outlook APIs:
http://msdn.microsoft.com/en-us/library/gg608200.aspx
to send the e-mail message. You are using the outlook configuration then and don't have to worry about it your code.
As long as an SMTP server is configured to allow relay from a remote domain then you can use it send email from/to virtually any address. There are downsides, however, to using any SMTP server to send an email from a specific domain - the most notable of which is that the recipient's domain will likely flag the message as spam because the domain of the SMTP server is different from that of the sender's email address.
There are other non-email APIs that can be used to send text messages, if that is something you're willing to consider. Check out:
Tropo (http://www.tropo.com)
Zeep Mobile (http://www.zeepmobile.com)
Best of luck to you.
Impossible. SMTP is the Simple Mail Transfer Protocol, without this is impossible to access to another account with Email format. You can make a php mail where you don't need to have smtp, but your access will be limited, not all ESP / ISP will allow you to delivery those emails, because they need to identify you using your SMTP and MX Lookup (Reverse MX A records) from your server. It exists more ways, but are 100% SPAMMERS and HACKERS methods and I don't recommend to use them.