Search

SOUL 4.4 – WÄHLEN SIE ZWISCHEN DER ERWEITERTEN UND DER LISTENANSICHT DER TODOS-FUNKTION

So geht’s: SMTP Server Konfiguration

09.07.2015

Seit SOUL 2.7 ist es möglich einen eigenen SMTP Server für die ausgehenden Benachrichtigungsemails zu nutzen. Dies ist – um unsachgemäßem Gebrauch vorzubeugen – über die Kommandozeile der Protonet Lösung einzurichten.

Update: Ab SOUL 2.8 kann zusätzlich eine Absenderadresse angegeben werden. Dafür ist die zusätzliche Konfigurationsdatei „sender“ anzulegen und die Mailadresse einzutragen. 

Einrichtung:

Nach dem Einloggen via SSH kann es losgehen.

Anschließend wird in „/etc/protonet“ das Basisverzeichnis „mail“, das Unterverzeichnis „smtp“ und die jeweils dazugehörigen Konfigurations-Dateien angelegt.

Die Struktur muss folgendermaßen aussehen:

smtp

Ein Tar-Archiv mit der Struktur findest Du hier.
Dieses Archiv einfach mit „wget“ herunterladen und entpacken mit:

cd /tmp
wget https://support.protonet.info/wp-content/uploads/2016/01/smtp_structure.tar
tar -C / -xvf smtp_structure.tar

 


Du verstehst nur noch Bahnhof bzw. fühlst Dich nicht Linux-Konsolen-tauglich?

Hier findest Du eine Anleitung für weniger technische Benutzer.


SMTP-Konfigurationsdateien anpassen:

Folgende Inhalte müssen in die zugehörigen Dateien geschrieben werden:

1. Festlegen des zu verwendenden Mail-Services in /etc/protonet/mail/mode:

default Verwendung des Protonet-Mail-Dienstes
smtp Verwendung des eigenen Mail-Dienstes nach Box Neustart

2. Mail-Server Adresse in  /etc/protonet/mail/smtp/address eintragen:

Beispielsmtp.meine-domain.de

3. SMTP-Auth-Methode in /etc/protonet/mail/smtp/authentication eintragen:

Beispiel: plain, login, cram-md5, scram-sha-1 oder ntlm

Hier ist darauf zu achten, welche Methoden vom Mail-Server unterstützt werden.
Es darf nur eine eingetragen werden!
Weitere Informationen hierzu findest Du hier.

*Hinweise zu verschlüsselten Passwörtern (CRAM-MD5) und STARTTLS
Verschlüsselte SMTP-Passwörter werden selten unterstützt, da fast alle SMTP-Server STARTTLS nutzen. Wenn kein STARTTLS genutzt wird, wäre zwar durch die Nutzung von CRAM-MD5 das Passwort verschlüsselt, jedoch nicht der Inhalt der Emails. Es macht also keinen Sinn, auf STARTTLS zu verzichten. Mit STARTTLS wird sichergestellt, dass die generelle Verbindung zwischen Protonet Lösung und SMTP-Server verschlüsselt ist.

4. Domain des SMTP-Servers in /etc/protonet/mail/smtp/domain eintragen:
Beispiel: meine-domain.de

5.  STARTTLS in /etc/protonet/mail/smtp/enable_starttls_auto de-/aktivieren:

Falls der SMTP-Server STARTTLS unterstützt:

true

Falls dies nicht der Fall ist:

false

6. Passwort des Mail-Accounts in /etc/protonet/mail/smtp/password eintragen

7. SMTP-Port des SMTP-Servers in /etc/protonet/mail/smtp/port eintragen:

Beispiel: 25, 587

8. Benutzernamen des Mail-Accounts in /etc/protonet/mail/smtp/user_name eintragen

Beispiel: emailadresse@meine-domain.de

9. Absenderadresse des Mail-Accounts in /etc/protonet/mail/smtp/sender eintragen (ab SOUL 2.8)

Beispiel: emailadresse@meine-domain.de

10. Nach einem Neustart der Box wird die neue SMTP-Konfiguration verwendet.

Während der Konfigurationsphase können auf Servern mit der Version stable/xx folgende Dienste zu Testzwecken neu gestartet werden:

  sudo sv restart /home/protonet/dashboard/shared/services/enabled/worker1

  sudo sv restart /home/protonet/dashboard/shared/services/enabled/worker2

Mit folgender Befehlskette (1 Zeile!) kann der Mailversand getestet werden. Ausgabe im Fehlerfall erfolgt hier jedoch nur auf der Konsole und auch wenn der Inhalt etwas anderes sagt – ein neues Kennwort wurde damit nicht erzeugt. Die Emailadresse sollte durch eine eigene ausgetauscht werden.

 cd /home/protonet/dashboard/current && RAILS_ENV=production protonet_bundle exec rails r "SystemNotificationMailer.masterpassword_password_changed([OpenStruct.new(locale: 'de', email: 'otto@example.com')], User.first, Time.now).deliver"

Nach Abschluss nach jeglichen Arbeiten an der Smarthost-Konfiguration ist der Protonet Server neu zu starten!


Nötige Einstellungen auf dem Microsoft Exchange Server

Folgende Einstellungen sind im Exchange vorzunehmen:

smtp2 smtp3

Als SMTP-Auth-Methode ist „login“ zu wählen.

 


Testen der SMTP-Konfiguration und Analyse im Fehlerfall:

Zum Testen kann man z.B. einfach einen Benutzer via Mail einladen. Wichtig hierbei ist, dass die E-Mail-Adresse auf der Box noch nicht verwendet wird.

Sollte keine Mail ankommen, kann in den Log-Dateien analysiert werden, wo der Fehler liegt.
Die „worker“-Logs sind hier zu finden:

 

Auf Servern mit der Version stable/xx:

/home/protonet/dashboard/current/log/services/worker1/current
/home/protonet/dashboard/current/log/services/worker2/current

Die interessanten Abschnitte sind jeweils diese

[invitation_mailer_worker] [inbox_notification_mailer_worker]

 

Auf Servern mit der Version soul3/xxxx:

docker logs -f soul-worker


Beispielfehler und wie diese im Log erscheinen:

1. Provider: Prosite + weitere
Fehlermeldung: [worker] [periodic] [invitation_mailer_worker] failed to send invitation #1: 554 5.7.1 <noreply@protonet.de>: Sender address rejected: illegal sender domain

oder:

> #18: 550 5.7.1 Client does not have permissions to send as this sender“

Ursache:
Manche SMTP-Server akzeptieren den Absender noreply@protonet.de nicht bzw. können diesen nicht ändern.

Behebung:
Wird in SOUL 2.8 behoben sein.

 

2. Provider: web.de

Fehlermeldung:
/usr/local/rvm/rubies/ruby-1.9.3-p392/lib/ruby/1.9.1/net/smtp.rb:960:in `check_auth_response‘: 535 Authentication credentials invalid (Net::SMTPAuthenticationError)

Ursache:
externen Zugriff auf das web.de Konto deaktiviert.

Behebung:
Unter den Einstellungen im web.de Postfach den externen Zugriff aktivieren.

 

3. Provider: web.de

Fehlermeldung:
/usr/local/rvm/rubies/ruby-1.9.3-p392/lib/ruby/1.9.1/net/smtp.rb:948:in `check_response‘: 550-Requested action not taken: mailbox unavailable (Net::SMTPFatalError)

Ursache:
Web.de-Aussage: Der angegebene Empfänger ist in unserem System nicht existent oder der Empfänger hat sein Postfach zu lange nicht mehr genutzt und dieses wurde aufgrund von Inaktivität temporär deaktiviert. Bitte überprüfen Sie die Schreibweise dieser E-Mail-Adresse.

 

4. Provider: google

Hier unbedingt folgende Einstellung beachten: https://support.google.com/accounts/answer/6010255?hl=de