ssmtp: Empfänger ändern für cron

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
suleiman
Beiträge: 193
Registriert: 21.12.2016 04:09:41

ssmtp: Empfänger ändern für cron

Beitrag von suleiman » 24.04.2017 14:26:56

Howdy,

ich lasse ein paar Skripte über cron laufen und musste feststellen das cron mir Mails sendet wenn Fehler auftauchen.
Aber sowas machen meine Skripte auch selber.
Des weiteren ist der Empfänger von den cron Mails eigenltich mein Absender.

Wie kann ich cron verbieten Mails zu schicken, oder noch besser wäre den Empfänger zu ändern ?

/etc/ssmtp/revaliases

Code: Alles auswählen

# sSMTP aliases
# 
# Format:	local_account:outgoing_address:mailhub
#
# Example: root:your_login@your.domain:mailhub.your.domain[:port]
# where [:port] is an optional port number that defaults to 25.
root:xxx@gmx.de:mail.gmx.net:465
/etc/crontab

Code: Alles auswählen

# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user	command
17 *	* * *	root    cd / && run-parts --report /etc/cron.hourly
25 6	* * *	root	test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6	* * 7	root	test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6	1 * *	root	test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#
Irgendwie habe ich nicht verstanden wie und wo das System seine Mails verschickt.

Benutzeravatar
Meillo
Moderator
Beiträge: 8813
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: ssmtp: Empfänger ändern für cron

Beitrag von Meillo » 24.04.2017 14:43:00

Aus der Manpage cron(8):
When executing commands, any
output is mailed to the owner of the crontab (or to the
user named in the MAILTO environment variable in the
crontab, if such exists).
Wenn du keine Mails bekommen willst, dann sorge dafuer, dass deine Scripte keine Ausgaben erzeugen, notfalls per:

Code: Alles auswählen

( ... )>/dev/null 2>&1
Use ed once in a while!

suleiman
Beiträge: 193
Registriert: 21.12.2016 04:09:41

Re: ssmtp: Empfänger ändern für cron

Beitrag von suleiman » 24.04.2017 18:46:20

Ich habe probiert MAILTO zu bestimmen und eine Testdatei erstellt.
Irgendwie bekomme ich jetzt gar keine Mail mehr.

Code: Alles auswählen

root@Lian-Li:~# cat /etc/crontab 
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
MAILTO='xxx@web.de'

# m h dom mon dow user	command
17 *	* * *	root    cd / && run-parts --report /etc/cron.hourly
25 6	* * *	root	test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6	* * 7	root	test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6	1 * *	root	test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#

Code: Alles auswählen

root@Lian-Li:~# cat /etc/cron.hourly/error_test.sh 
#!/bin/bash
mkdir /this/directory/does/not/exist
exit "$?"

root@Lian-Li:~# ls -l /etc/cron.hourly/error_test.sh 
-rwxr-xr-x 1 root root 61 Apr 24 15:20 /etc/cron.hourly/error_test.sh

TomL

Re: ssmtp: Empfänger ändern für cron

Beitrag von TomL » 24.04.2017 21:39:01

suleiman hat geschrieben:Ich habe probiert MAILTO zu bestimmen und eine Testdatei erstellt.
Irgendwie bekomme ich jetzt gar keine Mail mehr.
Gibts im Journal Einträge über den smtp-relay-server? Für Empfängeradressen bei Web.de oder GMX.de brauchts ja einen richtig eingestellten Relay-Server.

suleiman
Beiträge: 193
Registriert: 21.12.2016 04:09:41

Re: ssmtp: Empfänger ändern für cron

Beitrag von suleiman » 24.04.2017 22:10:53

Heute Morgen ging noch alles.
Nachdem ich die MAILTO deklariert hatte, ging nix mehr.

Code: Alles auswählen

root@Lian-Li:~# journalctl | grep -i mail
Apr 23 13:17:05 Lian-Li sSMTP[959]: Sent mail for xyz@gmx.de (221 gmx.com Service closing transmission channel) uid=0 username=root outbytes=814
Apr 24 06:25:07 Lian-Li sSMTP[17804]: Sent mail for xyz@gmx.de (221 gmx.com Service closing transmission channel) uid=0 username=root outbytes=1058
Apr 24 06:25:10 Lian-Li sSMTP[17986]: Sent mail for xyz@gmx.de (221 gmx.com Service closing transmission channel) uid=0 username=root outbytes=1450
Apr 24 07:17:04 Lian-Li sSMTP[18012]: Sent mail for xyz@gmx.de (221 gmx.com Service closing transmission channel) uid=0 username=root outbytes=1073
Dies ist alles was ich gefunden habe.

Ich werde die Variable wieder löschen und hoffen das es wieder funktioniert wie vorher.
Oder wo kann man $MAILTO deklarieren ?

suleiman
Beiträge: 193
Registriert: 21.12.2016 04:09:41

Re: ssmtp: Empfänger ändern für cron

Beitrag von suleiman » 25.04.2017 14:08:44

Komisch, nachdem ich die Variable gelöscht hatte ging es wieder und es wurde sogar die Mail an den richtigen Empfänger gesendet.
Irgendwie versteh ich nur Bahnhof und es läuft alles verkehrt.

Benutzeravatar
Meillo
Moderator
Beiträge: 8813
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: ssmtp: Empfänger ändern für cron

Beitrag von Meillo » 25.04.2017 14:16:22

suleiman hat geschrieben: Irgendwie versteh ich nur Bahnhof und es läuft alles verkehrt.
Formuliere doch bitte nochmal genau was du haben willst.

Oder beschreibe was deiner Meinung nach verkehrt laeuft, dann koennen wir dir erklaeren warum das so ist.
Use ed once in a while!

suleiman
Beiträge: 193
Registriert: 21.12.2016 04:09:41

Re: ssmtp: Empfänger ändern für cron

Beitrag von suleiman » 25.04.2017 16:42:04

Ich wollte einen anderen Empfänger für die Mails welche Cron verschickt, weil sonst die Mails zum Absender versendet werden.
Oben habe ich schon /etc/crontab gepostet mit dem MAILTO Eintrag.
Ich habe seid dem keine Mails mehr erhalten.
Nachdem ich den Eintrag wieder gelöscht hatte ging es wieder und sogar der Empfänger war richtig, obwohl ich nirgends den Empfänger angegeben habe.
Cron hab ich zwischen zeitig neu gestartet und werde mal abwarten was ich heute Nacht für Mails bekomme.

Konkret:
Wenn ich einen Empfänger bestimmen will dann funktioniert es nicht, weil ich bestimmt was falsch mache.
Wenn ich aber den Eintrag wieder lösche dann geht es und cron sendet an den gewünschten Empfänger ?!

Klingt sehr komisch für mich, ich glaube cron übernimmt keine Variablen on the fly, so steht es aber in der Datei.

Code: Alles auswählen

root@Lian-Li:~# cat /etc/crontab
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
MAILTO='xxx@web.de'

# m h dom mon dow user   command
17 *   * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6   * * *   root   test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6   * * 7   root   test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6   1 * *   root   test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#
Ich habe natürlich die Mail-Adresse durch xxx ersetzt.

Konfiguration zum Mail.Server funktioniert auch. Es ist nur cron wo rum zickt.
Darf ich vieleicht keine ' & " nutzen für Variablen ?

Antworten