Cannot send email using SMTP server through Office 365 with ADFS - smtp

I am trying to send an email using the smtp.office365.com server. It always return the same error:
5.7.57 Client not authenticated to send mail.
As far as I know, the problem is related with the fact that I'm working with ADFS. So I have previously federated my domain to work with Office 365. When I try to log in to Office, I'm redirected to the login page of my platform, which is fine.
Is there a way to send email using the Office smtp server when working with ADFS?

Not to my knowledge, you need to change the primary username to use your tenant domain rather than your federated domain. Then you'll be able to log in without ADFS.
We configured a single account for SMTP with just an Exchange Plan 1 license, and then set up internal SMTP relays using that account to transmit to O365. We then limit connections on that account to only known locations. Then we add SendAs permissions for that account to all the DLs/mailboxes that we need to send email from.

Related

Odoo12: Setup SMPT Server with Sendinblue in Odoo. What I missed here?

I am trying to setup Sendinblue and use it as an SMTP server for my marketing and general Odoo 12 email messaging.
I setup every thing in Sendinblue and tested the SMTP Server in Odoo and got a "sucess" message under Settings / Technical / Outgoing Mail Servers.
For this I setup an external smpt server with the following data:
SMTP Server: smtp-relay.sendinblue.com
Email: my sendinblue email
Password: Password provided by sendinblue
Port: 587
Security: TLS (STARTTLS)
I can test the connection with success and set this SMTP Server as the server for sending email campaigns from Email Marketing / Settings / General Settings
Created a test email campaign and tried to send it and test it with no luck.
When Odoo tries to send the message, returns a "not delivered email" message with a unique reference and my local PC name, something like:
989345297097442.1625436965.401543280300903-openerp-reply_to#MYPC-NAME
I confirm sender email is registered and validated in Sendinblue. Using the same email as sender in Odoo.
Tried to do the same with my personal gmail account but even activating less secure apps, no message is sent from my instance.
What could be wrong?
I found the problem.
I had to verify the domain name I use for sending emails from Sendinblue service.
I have done it Senders & API main menu option on "domain" tab.
After verifying my domain name, everything is running fine

The IP you're using to send mail is not authorized to send email directly to our servers

hi i wanted to send mail via smtp protocol to one of my
gmail's accounts...
i tried but finally it occurred and error :
telnet> open alt4.gmail-smtp-in.l.google.com 25
Trying 74.125.131.27...
Connected to alt4.gmail-smtp-in.l.google.com.
Escape character is '^]'.
220 mx.google.com ESMTP b4si2095585vdw.57 - gsmtp
HELO stackoverflow.com
250 mx.google.com at your service
MAIL FROM: <test#stackoverflow.com>
250 2.1.0 OK b4si2095585vdw.57 - gsmtp
RCPT TO: <■■■■#gmail.com> // filtered ;)
250 2.1.5 OK b4si2095585vdw.57 - gsmtp
DATA
354 Go ahead b4si2095585vdw.57 - gsmtp
test
ok
it done
.
550-5.7.1 [5.22.81.102] The IP you're using to send mail is not authorized to
550-5.7.1 send email directly to our servers. Please use the SMTP relay at your
550-5.7.1 service provider instead. Learn more at
550 5.7.1 http://support.google.com/mail/bin/answer.py?answer=10336 b4si2095585vdw.57 - gsmtp
Connection closed by foreign host.
so now how can i send mail without having this problem ?
This is because Google will reject any emails sent from IP in the spamhaus database.
What you need to do is go to http://www.spamhaus.org/lookup/ and follow the instruction there to remove your server ip from spamhaus database.
Please also follow this guide: Prevent mail to Gmail users from being blocked or sent to spam
You can find the answer at the link in the last line of the Google mail served response:
'The IP you're using to send email is not authorized...'
In order to prevent spam, Gmail refuses mail from IP addresses that are not authorized to send mail. The determination of whether or not an IP address is authorized to send mail is made by the ISP that provides you with the IP address. This list typically contains consumer IP ranges offered for dialup, DSL, or other broadband access.
What can I do to fix this?
Your ISP may provide SMTP relays which will accept mail from your IP, and these servers should be authorized to send mail. Some ISPs may provide a way to get an IP that is authorized, either by upgrading to business class service or static IP service. You should reach out to your ISP to see what options are available.
Another alternative is to send mail through your own domain’s servers, either by configuring them to allow relay from your IP address, or by using MSA (mail submission agent). Learn how to use Gmail to send mail from a different address.
Please note that we are unable to whitelist IP addresses or otherwise make exceptions.
In other words, if your IP address is not authorized by your ISP to send mail, you should send your mail through:
Your provider mail server (SMTP relay)
Your own domain mail server.
Mail servers must meet a number of requirements to prevent their messages from being blocked, e.g. have a PTR record. The use of authentication methods such as SPF, DKIM or DMARC minimize the chance that messages are marked as spam.
I had this problem with one of my hotmail addresses, using Thunderbird on Kubuntu. Tried changing sever settings, passwords etc to no avail. In desperation, I deleted the offending email address through "account settings" "account actions" (bottom left of window). If you are on POP3 you will loose all your emails, so make sure you're on IMAP.
You then just select "add email" in Thunderbird and the email is put back as it should be and works perfectly.

can php send email without mail server installed in server?

I know we can send email from php using smtp servers on different hosts or if there is local smtp server installed. What I want to know is can php send email without any local or remote smtp servers? I have heard about sendmail program but can it function without any mail server installed in the server?
At some point you have to talk to a SMTP server. Sending via a SMTP server on the local host is the cleanest option and the most likely to succeed at getting through spam filters.
What a mail server does is quite complex. Let's take your average e-mail as it arrives from your e-mail client to your e-mail server with an outbound host as the destination:
The server checks your user account and makes sure it is valid.
The e-mail goes into a queue either separately for each recipient or as one message (depends on the server).
The server finds the e-mail in the queue and processes each recipient address. This requires a DNS lookup for a MX record for each target domain.
The e-mail server connects to the address specified by the MX record and delivers the e-mail to it as one does over SMTP.
On success, the e-mail is removed from the queue. On failure, the e-mail may remain in the queue and the server will try again later (exponential backoff - see greylisting) or be put in the mail queue to be returned to you when you check your e-mail via POP3 later.
The next e-mail server in the queue then repeats the above until the final server receives the e-mail and sits in the recipient's mailbox.
Doing that within PHP is possible, but I don't recommend it. MX record lookup can be tricky because people do all sorts of non-compliant things that mail servers tolerate. Plus, your script might time out while attempting to connect directly to the target SMTP server. Some servers are also configured to "greylist" e-mail, which means the e-mail will initially be rejected but would be accepted later (e.g. 30 minutes is not unusual). The average PHP script won't be able to handle that scenario.

Setting up SMTP mail server. Done with installing SMTP. Now what?

I want to host my own mailserver using my own domain. So far I can see that SMTP needs to be installed and the DNS record has to be modified to point to my mailserver. So far so good. But what about mailaccounts? How do I create mail#mydomain.com with username and password so I can start receiving emails in outlook?
What more does it take to be able to receive mails in outlook now that im done with installing SMTP on my server?
Installing just the smtp service isn't going to get you what you need. In order for users to get their mail you'd need a pop server, or an IMAP server or and exchange server.
What you need is a seperate mail hosting package. Something like Imail from Ipswitch. Or exchange from Microsoft.
SMTP is simply a mail transfer mechanism, it will receive emails for remote SMTP servers and then try an deliver them. It does not handle mailboxes or email accounts, for this you will need a POP3, IMAP or Exchange server.

Need help setup windows server 2008 SMTP server

I am trying to setup windows server 2008 smtp server to relay emails to gmail smtp. Everything appears to be setup but it is not sending emails. Could you please help me figure out whats wrong.
Below is the setup:
Windows server 2008 with SMTP server
feature installed. Need SMTP server
to forward all messages to gmail smtp
server to send.
I have google apps setup for my
domain, also I can send emails
throught my test app using
gmail smtp.
SMTP Server Configuration: By default has default smtp server virtual directory.
In Properties of that virtual smtp server changed following.
Fully qualified domain name = mydomain.com
smart host = smtp.gmail.com
TCP Port = 587
Out Bound Security = Basic Authentication(my username password for google apps email account)
In domains list under virtual smtp server. I have one default domain that's server dns. I added another one for my domain name.
With above setup i am trying to redirect all email to gmail smtp.
I tested connection to smtp.gmail.com from server on port 587 through telnet and it works.
I am trying to use above server from my web application also by just dropping emails in pickup directory. It get's picked up and also accepts request form web application but never sends an email.
I can see that it adds those emails in queue folder but it stays there forever.
When i try to send emails from web app to above server it rejects if To address is other than my domain.(Am i missing something in list of domains)
Thanks for all answers, finally found solution there is a property for maximum sessions which value was 0 by default. Changed it to 100 and it send all pending emails immediately.
Possible reasons are that some SMTP servers block the outgoing messages if there domain name mismatch, possible to prevent spam mails from being sent. So for example, I will not be able to send my email with an address abc#mydomain.com from my domain yourdomain.com.
Hope that helps.
Ensure your sending domain is the same as the google apps domain
Ensure your sending address is a real address and not just an alias
IIRC you need to use STARTTLS (SSL) not basic authentication
This souds like a DNS issue. Check your /badmail directory. It will have .bad and .bdp files in there. You can open these in notepad (there will be some binary in there).
However, it may point to the possible problem.
You may also want to try and enable logging on the SMTP service. There may be something in there.