Gmail smtp configuration for Drupal 7 - email

I want to send email in Drupal 7. So, does anyone know how to configure Gmail SMTP on Drupal 7?

Download SMTP module and enable it.
Go to Admin > Configuration > SMTP authentication support and set the following values:
Turn on the module at the Install options fieldset at the top.
SMTP server settings:
smtp server: smtp.gmail.com
smtp backup server: leave blank.
smtp port: 465
use encrypted protocol: select "use SSL"
SMTP authentication:
Enter a valid Gmail email address and password.
Email options:
Set the same email address that you used at SMTP Authentication. Using a different account is called Phishing
Send test email: set an email to receive a sample email.
Enable debugging: yes.
3. Click on submit and verify that the email was submitted and that you received it. If not, read carefully the debug information at the top of the screen. Once satisfied, remember to deactivate the debug checkbox.

Step 1: Download SMTP module and enable it.
Step 2: Go to Admin > Configuration > System > SMTP authentication support and set the following values:
Turn this module on or off: On.
SMTP server settings:
smtp server: smtp.gmail.com
smtp backup server: leave blank.
smtp port: 465
use encrypted protocol: select "use SSL"
SMTP authentication:
Enter a valid Gmail email address and password.
Email options:
Set the same email address that you used at SMTP Authentication.
Send test email: set an email to receive a sample email and to test whether the module is working.
Enable debugging: yes.
Step 2a(Optional): Allow Less Secure Apps Access which is here: http://www.google.com/settings/security/lesssecureapps
Step 3: Click on Save and go to your inbox to check. If there is an testing email then it is fine.
Note: Your email address provided in your smpt setting MUST be the same like in your site information.

I hope SMTP Authentication Support module will help you.

For me, just following the steps in Juampy's answer didn't work. The error "Unable to send mail. Contact site administrator." continued to display. Do the following first and then configure SMTP module as per his answer.
Before installing SMTP module, download PHPMailer and extract it. Rename the folder as 'phpmailer' and copy the folder into module folder of SMTP module. Then, install the SMTP module.
An alternative configuration is as follows:
smtp port: 587
use encrypted protocol: select "use TLS"

This blog entry has some more up-to-date info:
http://www.stevepolitodesign.com/blog/drupal-configure-smtp-module-work-gmail-updated
Install and set-up module:
Install the SMTP Authentication Support module in the usual way.
Navigate to the configuration page admin/config/system/smtp
Under Turn this module on or off select On. You can leave Send mail
by queue and Retry sending mail on error. deselected by default, but
selecting them won't affect Gmail.
Under SMTP server enter the following smtp.gmail.com. Leave SMTP
backup server blank
Under SMTP port enter 587 ​
Under Use encrypted protocol select Use TLS ​
Under SMTP AUTHENTICATION enter a Gmail address and password.
Under E-MAIL OPTIONS use the same Gmail address as you did above and
enter an E-mail from name
Click Save
Update gmail account settings:
Login to your Gmail account at https://myaccount.google.com/
On the account homepage, click Sign-in & security or navigate to https://myaccount.google.com/security
Scroll down to the Allow less secure apps: widget, and have it enabled.
Now navigate to https://accounts.google.com/DisplayUnlockCaptcha and click Continue
Go back to the SMTP configuration page admin/config/system/smtp
Enter an email address you would like to receive a test message from and click Save configuration
Check your inbox to confirm you received the test message.

Related

Can't get outbound email working in self-hosted SugarCRM 6.5

I can't seem to get outbound email working from my SugarCRM installation, with only the message SMTP connect() failed appearing in the logs.
I've set my smtp server to smtp.gmail.com, email address, password, TLS, port 587. When I go to 'Send Test Email' I get the error.
I've set my local hostname, installed openssl, set the host_name in config.php and included it as a referrer in config_override.php. I've also tried setting SMPTDebug to 2 in SugarPHPMail.php but that seemed to have no effect.
When I run openssl s_client -starttls smtp -crlf -connect smtp.gmail.com:587 the output includes Verify return code: 0 (ok) and I don't know where to go from here. I can connect via telnet to that host & port and get a 220 SMTP message back as expected.
I do also have an exchange server available, but haven't been able to get that one working either, and thought Gmail would be more easily-solved.
I'm on Sugar 6.5.26 hosted on Linux (Debian, Raspbian).
Ok I found the solution while looking for the 'Allow less secure apps' setting in Gmail.
I have two-step authentication switched on in my Gmail account, which will obviously complicate things but had slipped my mind. Therefore I needed to use an app-specific password, and not my normal Gmail password.
As soon as I created an app-specific password in Google (at https://myaccount.google.com/apppasswords) and plugged that into the SugarCRM settings, it worked fine. D'oh!

How can I use a user alias with gmail smtp authentification?

I am using Drupal 7 and the SMTP module. The Gmail (Apps for work) account uses 2 step verification and an app password so that the website can auth using SMTP. Fine so far.
The problem is that the user account, say johndoe#domain.com should not be the from address, but info#domain.com should. info is already a working alias for johndoe.
We must use johndoe to actually authenticate, an alias does not work for this. But, although the from address in debug is info#domain.com, in my mail app the sender still seems to be johndoe#domain.com.
Any ideas?
Edit: I've read that the Google SMTP service overrides the from address with the user account. Even if the from address is an existing alias?
This is really weird.
Please try adding alias email address in gmail.
Open gmail => Setting => Accounts => Send email as: => Add another email address
Gmail will send confirmation code to the alias email. After you add the alias address, gmail smtp will accept "from" parameter with your alias address.
if I understood you, if you want to use the account (johndoe#domain.com) to authenticate, but you do not want it to be shown as a sender, and the sender should be (info#domain.com), then you must follow the following Steps.
It is more than obvious that you must be a GSuite administrator.
First you enable third-party authentication, go to:
Google GSuite Security=>
basic configuration=>
Unsecured applications=>
(click here) Access the settings of unsafe applications=>
Enable access for all users to unsafe applications (not recommended)
Second, in your application for sending mail do this:
Sender Address: info#domain.com
User: johndoe#domain.com
Server: smtp.gmail.com
Port: 465
Encryption: ssl
Password: yourpassowrdaccount
Exampple: https://i.stack.imgur.com/u0X8J.png

The following from address failed, joomla 2.5

I am using chronoforms to set forms on my site. After submission I want to send that information to the administrator of the site by sending mail notifications. But when the client submits the info the following error is displayed:
The following from address failed admin#admin.com
I have set SMTP settings on my joomla site using gmail SMTP settings as follows:
mailer: SMTP
from email: mygmail#gmail.com
sendmailpath: /usr/sbin/sendmail
smtpsecurity: ssl
port: 465
user: mygmail#gmail.com
pass: ***********
host: smtp.gmail.com
I have found the Acymailing component and modify to work with SMTP. What else could I do?
Set the From Email address to the address you have in the site SMTP settings, make sure that the To Email address for the admin is a different one as some mail servers - GMail in particular - will drop emails when the From and To addresses are the same.

SwiftMailer not send mail with Google App account

I'm using Symfony and I'm trying to send an email with swiftmailer. I have an account set up with google app (produccion#mydomain.com) and when I try to send shows me the following error:
Failed to authenticate on SMTP server with username
"produccion#mydomain.com" using 2 possible authenticators
I tried it with my personal gmail account and send the message correctly with the same settings. Just change the username and password.
# Swiftmailer Configuration
swiftmailer:
transport: smtp
host: smtp.gmail.com
username: produccion#mydomain.com #email#gmail.com
password: google_app_password #gmail_password
auth_mode: login
port: 587
encryption: tls
I've been searching the internet and I've found this page from Google, where I can change the access to less secure applications.
https://www.google.com/settings/security/lesssecureapps
In my gmail account this option is active, but if I turn shows me the same error when sending email.
I've been trying to change this setting in google app account but it tells me that this option is not available for google app.
Any idea to send emails from this account by google app? I have to set something else?
EDIT
It seems Gmail prefers OAuth, Swiftmailer supports this authentication mech but its not really documented.
https://developers.google.com/gmail/xoauth2_protocol
https://github.com/swiftmailer/swiftmailer/blob/5.x/lib/classes/Swift/Transport/Esmtp/Auth/XOAuth2Authenticator.php
Any idea how I use it in Symfony?
Have you tried setting the transport parameter to gmail as mentioned in the cookbook? http://symfony.com/doc/current/cookbook/email/gmail.html
# Swiftmailer Configuration
swiftmailer:
transport: gmail
username: your_gmail_username
password: your_gmail_password

Smtp send email with another address

Hi all I have a site where if i want to send an email I have to set the smtp with this configuration:
Enable Advanced Smtp Yes
Auth Mode Login
Username noreply#myserver.com
Password password
Smtp host smtp.myserver.com
Smtp port 465
Use SSL Yes
If I want to send with my smtp settings mail from another address like test#test.it how can I do that? Because my client don't want to see my domain when receive the email but another email.
Is possible?
All you need is an SMTP server with relaying. if smtp.myserver.com has relaying, than you can use a variety of languages. YOu need to modify the >MAIL From: parameter in any which of those languages.
For magento, modify: “/magento/app/code/core/Mage/Core/Model/Email.php"
then under the
public function send() function you need to modify:
->setFrom($this->getFromEmail(), $this->getFromName())
and use
->setFrom("test#test.com")