SMTP-Passwort funktioniert nicht mehr

Hey!

Leider musste ich mein SMTP-Passwort neu konfigurieren – ich habe es in der app.yml geändert.

In /logs steht: Job exception: 535 Refused. Authentication failed. Rate limit hit or SMTP disabled.

Ich habe versucht, meine alte app.yml zu finden, aber mir ist aufgefallen, dass ein Backup über das Webfrontend nur alle Bilder und die dump.sql sammelt? Hmm… etwas enttäuschend, aber ich schätze, so ist das nun mal.

Wie auch immer … das Passwort steht in " " und ist korrekt. Domain und Benutzername sind ebenfalls korrekt. Kann mir jemand einen Ausweg aus diesem Config-Horror-Loop zeigen, in dem ich seit Stunden stecke? Was kann ich versuchen / prüfen / tun?

Cheers

Hier ist das Ruby-Fehlerprotokoll:

/usr/local/lib/ruby/2.7.0/net/smtp.rb:975:in `check_auth_response'
/usr/local/lib/ruby/2.7.0/net/smtp.rb:736:in `auth_plain'
/usr/local/lib/ruby/2.7.0/net/smtp.rb:728:in `authenticate'
/usr/local/lib/ruby/2.7.0/net/smtp.rb:565:in `do_start'
/usr/local/lib/ruby/2.7.0/net/smtp.rb:518:in `start'
/var/www/discourse/vendor/bundle/ruby/2.7.0/bundler/gems/mail-5b700fc95ee6/lib/mail/network/delivery_methods/smtp.rb:109:in `start_smtp_session'
/var/www/discourse/vendor/bundle/ruby/2.7.0/bundler/gems/mail-5b700fc95ee6/lib/mail/network/delivery_methods/smtp.rb:100:in `deliver!'
/var/www/discourse/vendor/bundle/ruby/2.7.0/bundler/gems/mail-5b700fc95ee6/lib/mail/message.rb:2141:in `do_delivery'
/var/www/discourse/vendor/bundle/ruby/2.7.0/bundler/gems/mail-5b700fc95ee6/lib/mail/message.rb:253:in `block in deliver'
actionmailer-6.1.3.1/lib/action_mailer/base.rb:559:in `block in deliver_mail'
activesupport-6.1.3.1/lib/active_support/notifications.rb:203:in `block in instrument'
activesupport-6.1.3.1/lib/active_support/notifications/instrumenter.rb:24:in `instrument'
activesupport-6.1.3.1/lib/active_support/notifications.rb:203:in `instrument'
actionmailer-6.1.3.1/lib/action_mailer/base.rb:557:in `deliver_mail'
/var/www/discourse/vendor/bundle/ruby/2.7.0/bundler/gems/mail-5b700fc95ee6/lib/mail/message.rb:253:in `deliver'
actionmailer-6.1.3.1/lib/action_mailer/message_delivery.rb:119:in `block in deliver_now'
actionmailer-6.1.3.1/lib/action_mailer/rescuable.rb:17:in `handle_exceptions'
actionmailer-6.1.3.1/lib/action_mailer/message_delivery.rb:118:in `deliver_now'
/var/www/discourse/lib/email/sender.rb:234:in `send'
/var/www/discourse/app/jobs/regular/user_email.rb:70:in `send_user_email'
/var/www/discourse/app/jobs/regular/user_email.rb:25:in `execute'
/var/www/discourse/app/jobs/base.rb:232:in `block (2 levels) in perform'
rails_multisite-3.0.0/lib/rails_multisite/connection_management.rb:80:in `with_connection'
/var/www/discourse/app/jobs/base.rb:221:in `block in perform'
/var/www/discourse/app/jobs/base.rb:217:in `each'
/var/www/discourse/app/jobs/base.rb:217:in `perform'
sidekiq-6.2.1/lib/sidekiq/processor.rb:196:in `execute_job'
sidekiq-6.2.1/lib/sidekiq/processor.rb:164:in `block (2 levels) in process'
sidekiq-6.2.1/lib/sidekiq/middleware/chain.rb:138:in `block in invoke'
/var/www/discourse/lib/sidekiq/pausable.rb:138:in `call'
sidekiq-6.2.1/lib/sidekiq/middleware/chain.rb:140:in `block in invoke'
sidekiq-6.2.1/lib/sidekiq/middleware/chain.rb:143:in `invoke'
sidekiq-6.2.1/lib/sidekiq/processor.rb:163:in `block in process'
sidekiq-6.2.1/lib/sidekiq/processor.rb:136:in `block (6 levels) in dispatch'
sidekiq-6.2.1/lib/sidekiq/job_retry.rb:112:in `local'
sidekiq-6.2.1/lib/sidekiq/processor.rb:135:in `block (5 levels) in dispatch'
sidekiq-6.2.1/lib/sidekiq.rb:38:in `block in <module:Sidekiq>'
sidekiq-6.2.1/lib/sidekiq/processor.rb:131:in `block (4 levels) in dispatch'
sidekiq-6.2.1/lib/sidekiq/processor.rb:257:in `stats'
sidekiq-6.2.1/lib/sidekiq/processor.rb:126:in `block (3 levels) in dispatch'
sidekiq-6.2.1/lib/sidekiq/job_logger.rb:13:in `call'
sidekiq-6.2.1/lib/sidekiq/processor.rb:125:in `block (2 levels) in dispatch'
sidekiq-6.2.1/lib/sidekiq/job_retry.rb:79:in `global'
sidekiq-6.2.1/lib/sidekiq/processor.rb:124:in `block in dispatch'
sidekiq-6.2.1/lib/sidekiq/logger.rb:11:in `with'
sidekiq-6.2.1/lib/sidekiq/job_logger.rb:33:in `prepare'
sidekiq-6.2.1/lib/sidekiq/processor.rb:123:in `dispatch'
sidekiq-6.2.1/lib/sidekiq/processor.rb:162:in `process'
sidekiq-6.2.1/lib/sidekiq/processor.rb:78:in `process_one'
sidekiq-6.2.1/lib/sidekiq/processor.rb:68:in `run'
sidekiq-6.2.1/lib/sidekiq/util.rb:43:in `watchdog'
sidekiq-6.2.1/lib/sidekiq/util.rb:52:in `block in safe_thread'

Haben Sie nach dieser Änderung eine Neubildung durchgeführt?

Änderungen an app.yml müssen neu gebildet werden, um wirksam zu werden.

Ja… das mache ich immer… das ist zu zeitaufwendig, um Fehler zu beheben.

Das klingt entweder nach einem falschen Passwort oder danach, dass Ihr E-Mail-Anbieter den Dienst verweigert.

Sie können etwas Zeit sparen, indem Sie das SMTP-Passwort ändern mit:

./launcher destroy app; ./launcher start app

Ich glaube, dass dies bei geänderten SMTP-Einstellungen funktioniert, aber nicht bei allen Einstellungen.

Ja, das denke ich auch… aber ich habe alles ausprobiert… Es wurde nicht behoben.

Das ist mein aktueller ENV-Abschnitt in der app.yml:

env:
  LANG: en_US.UTF-8
  # DISCOURSE_DEFAULT_LOCALE: en

  ## Wie viele gleichzeitige Webanfragen werden unterstützt? Hängt vom Arbeitsspeicher und den CPU-Kernen ab.
  ## Wird automatisch vom Bootstrap-Script basierend auf den erkannten CPUs gesetzt, oder Sie können es überschreiben.
  UNICORN_WORKERS: 2

  ## TODO: Der Domainname, auf den diese Discourse-Instanz antworten soll
  ## Erforderlich. Discourse funktioniert nicht mit einer reinen IP-Adresse.
  DISCOURSE_HOSTNAME: forum.bgh-hamburg.de

  ## Kommentieren Sie dies aus, wenn Sie möchten, dass der Container mit demselben
  ## Hostnamen (-h-Option) gestartet wird, wie oben angegeben (Standard: "$hostname-$config")
  #DOCKER_USE_HOSTNAME: true

  ## TODO: Liste der durch Komma getrennten E-Mail-Adressen, die bei der ersten Registrierung als Admin und Entwickler festgelegt werden
  ## Beispiel: 'user1@example.com,user2@example.com'
  #DISCOURSE_DEVELOPER_EMAILS: 'bgh@forum.bgh-hamburg.de'

  ## TODO: Der SMTP-Mailserver, der zur Validierung neuer Konten und zum Senden von Benachrichtigungen verwendet wird
  ## SMTP-Adresse, Benutzername und Passwort sind erforderlich
  ## WARNUNG: Das Zeichen '#' im SMTP-Passwort kann Probleme verursachen!

  #DISCOURSE_SMTP_AUTHENTICATION: login
  DISCOURSE_SMTP_ADDRESS: forum.bgh-hamburg.de
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: bgh@forum.bgh-hamburg.de
  DISCOURSE_SMTP_PASSWORD: sdfoksdfpokasdpkopasdkfdfj
  #DISCOURSE_SMTP_DOMAIN: desde.uberspace.de
  #DISCOURSE_SMTP_ENABLE_START_TLS: true
  #DISCOURSE_SMTP_OPENSSL_VERIFY_MODE: none

Die mit ‘#’ markierten Zeilen waren Dinge, die ich bereits ausprobiert habe… aber es funktioniert einfach nicht. Ich kann mich mit diesen Zugangsdaten über meine Mail.app anmelden und E-Mails senden und empfangen, ohne Probleme (ich habe sie etwas geändert, damit sie nicht funktionieren, wenn Sie es versuchen). Ich habe auch versucht, über Telnet auf Port 587 vom Host aus eine Verbindung herzustellen – das funktioniert wie erwartet… aber es ist immer noch etwas falsch in meiner app.yml – ich kann es nicht herausfinden…

Übrigens… meine Fehlermeldung in /logs hat sich geändert in:

Job exception: -ERR [AUTH] Authentication failed.

oder

Ich mag mich irren, aber es scheint sinnvoller zu sein, Folgendes einzustellen:

SMTP ADDRESS: desde.uberspace.de
SMTP DOMAIN: Ihre Forum-Domain

Ich gehe davon aus, dass Uberspace der E-Mail-Anbieter ist. Normalerweise verwenden wir in dieser ersten Einstellung die SMTP-Domain des E-Mail-Anbieters.

Vielen Dank! Das hat es gelöst!