Allow using an SMTP server without authentication (#1597)

* Allow using an SMTP server without authentication (e.g Postfix relay on the same host) by setting SMTP_LOGIN and SMTP_AUTH_METHOD to 'none'

* Add note in .env.production.sample about SMTP settings for servers where no auth is required

* Assume that SMTP_LOGIN and SMTP_PASSWORD will be blank if we set SMTP_AUTH_METHOD to none
This commit is contained in:
Miguel Jacq 2017-04-17 18:41:19 +10:00 committed by Eugen
parent e22f9819bb
commit e9eaf9e33c
2 changed files with 5 additions and 1 deletions

View file

@ -35,6 +35,8 @@ OTP_SECRET=
# E-mail configuration # E-mail configuration
# Note: Mailgun and SparkPost (https://sparkpo.st/smtp) each have good free tiers # Note: Mailgun and SparkPost (https://sparkpo.st/smtp) each have good free tiers
# If you want to use an SMTP server without authentication (e.g local Postfix relay)
# then set SMTP_AUTH_METHOD to 'none' and leave SMTP_LOGIN and SMTP_PASSWORD blank
SMTP_SERVER=smtp.mailgun.org SMTP_SERVER=smtp.mailgun.org
SMTP_PORT=587 SMTP_PORT=587
SMTP_LOGIN= SMTP_LOGIN=

View file

@ -100,8 +100,10 @@ Rails.application.configure do
:address => ENV['SMTP_SERVER'], :address => ENV['SMTP_SERVER'],
:user_name => ENV['SMTP_LOGIN'], :user_name => ENV['SMTP_LOGIN'],
:password => ENV['SMTP_PASSWORD'], :password => ENV['SMTP_PASSWORD'],
:domain => ENV['SMTP_DOMAIN'] || ENV['LOCAL_DOMAIN'], :domain => ENV['SMTP_DOMAIN'] || ENV['LOCAL_DOMAIN'],
:authentication => ENV['SMTP_AUTH_METHOD'] || :plain, :authentication => ENV['SMTP_AUTH_METHOD'] == 'none' ? nil : ENV['SMTP_AUTH_METHOD'] || :plain,
:openssl_verify_mode => ENV['SMTP_OPENSSL_VERIFY_MODE'], :openssl_verify_mode => ENV['SMTP_OPENSSL_VERIFY_MODE'],
:enable_starttls_auto => ENV['SMTP_ENABLE_STARTTLS_AUTO'] || true, :enable_starttls_auto => ENV['SMTP_ENABLE_STARTTLS_AUTO'] || true,
} }