Pagina 1 di 1

[Risolto] Mandare mail via bash

Inviato: sabato 23 gennaio 2021, 14:20
da korda
Vorrei fare uno scriptino che mi manda via mail un file di log.

Ho installato ssmtp e ho configurato il file /etc/ssmtp/ssmtp.conf nel seguente modo:

Codice: Seleziona tutto

#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=mionome@gmail.com

# The place where the mail goes. The actual machine name is required no 
# MX records are consulted. Commonly mailhosts are named mail.domain.com
mailhub=smtp.gmail.com:587

# Where will the mail seem to come from?
#rewriteDomain=

# The full hostname
hostname=ananas

# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
FromLineOverride=YES

# Authentication
UseSTARTTLS=YES
AuthUser=mionome@gmail.com
AuthPass=miapassword
A questo punto provo a mandarmi una mail, ma ottengo solo questo output e non ricevo nessuna mail...

Codice: Seleziona tutto

root@ananas:DiskCheck$ sendmail mionome@gmail.com < ./DiskCheck.log
sendmail:  (ananas)
Dove sbaglio??? :cry:

Re: Mandare mail via bash

Inviato: sabato 23 gennaio 2021, 16:51
da rai
Ciao
prova ad aggiungere nel file di configurazione la riga

Codice: Seleziona tutto

UseTLS=YES
PS
se esegui il comando

Codice: Seleziona tutto

hostname 
l'output è ananas ? :lol:

PPS
wiki.debian.org/it/sSMTP ha scritto:Pacchetto attualmente non mantenuto

Questo pacchetto è orfano a partire dal 2019-03-19. Come alternativa si può usare msmtp.

Re: Mandare mail via bash

Inviato: sabato 23 gennaio 2021, 17:02
da korda
rai ha scritto:
sabato 23 gennaio 2021, 16:51
Ciao
prova ad aggiungere nel file di configurazione la riga

Codice: Seleziona tutto

UseTLS=YES
Ho trovato una wiki e ho aggiornato il conf file come segue

Codice: Seleziona tutto

#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=myname@gmail.com

# The place where the mail goes. The actual machine name is required no 
# MX records are consulted. Commonly mailhosts are named mail.domain.com
mailhub=smtp.gmail.com:587

# The address where the mail appears to come from for user authentication.
rewriteDomain=gmail.com

# The full hostname.  Must be correctly formed, fully qualified domain name or GMail will reject connection.
hostname=ananas

# Use SSL/TLS before starting negotiation
TLS_CA_FILE=/etc/ssl/certs/ca-certificates.crt
UseTLS=Yes
UseSTARTTLS=Yes

# Username/Password
AuthUser=myname@gmail.com
AuthPass=mypassword
AuthMethod=LOGIN

# Email 'From header's can override the default domain?
FromLineOverride=yes
Ora mi esce un output piu' esteso, ma la mail non la ricevo lo stesso

Codice: Seleziona tutto

user@ananas:~$ echo -e 'Subject: test\n\nTesting ssmtp' | sendmail -v myname@gmail.com
[<-] 220 smtp.gmail.com ESMTP v20sm16357528wra.19 - gsmtp
[->] EHLO ananas
[<-] 250 SMTPUTF8
[->] STARTTLS
[<-] 220 2.0.0 Ready to start TLS
[->] EHLO ananas
[<-]
sendmail:  (ananas)

rai ha scritto:
sabato 23 gennaio 2021, 16:51
PS
se esegui il comando

Codice: Seleziona tutto

hostname 
l'output è ananas ? :lol:
Si, e' il nome del mio Raspberry :shy:


rai ha scritto:
sabato 23 gennaio 2021, 16:51
PPS
wiki.debian.org/it/sSMTP ha scritto:Pacchetto attualmente non mantenuto

Questo pacchetto è orfano a partire dal 2019-03-19. Come alternativa si può usare msmtp.
Puo' essere, su Raspbian pero' ssmtp si scarica e installa tranquillamente. In ogni caso, come si configurerebbe msmtp?

Re: Mandare mail via bash

Inviato: sabato 23 gennaio 2021, 17:32
da rai
Puo' essere, su Raspbian pero' ssmtp si scarica e installa tranquillamente.
Sì, solo ti avvisavo del fatto che non essendo attivamente sviluppato potrebbero esserci dei buchi di sicurezza
In ogni caso, come si configurerebbe msmtp?
non l'ho mai usato. Ad essere sinceri è da molto che non installo più nemmeno ssmtp e faccio tutto da python.

Magari oggi è cambiato qualcosa dal lato gmail, ma quelle che seguono sono le uniche righe che mettevo in ssmtp.conf per spedire mail da script bash

Codice: Seleziona tutto

root=<iltuonome>@gmail.com
mailhub=smtp.gmail.com:587

UseTLS=YES
UseSTARTTLS=YES

rewriteDomain=gmail.com

hostname=<iltuohostname>

AuthUser=<iltuonome>@gmail.com
AuthPass=<password>

Re: [Risolto] Mandare mail via bash

Inviato: sabato 23 gennaio 2021, 18:41
da korda
Risolto... effettivamente il pacchetto msmtp al posto di ssmtp funziona. Qui di seguito una wiki che ho trovato per la sua configurazione:

https://wiki.archlinux.org/index.php/Msmtp

Re: [Risolto] Mandare mail via bash

Inviato: sabato 23 gennaio 2021, 19:07
da rai
Mi era venuto in mente che potesse essere un problema di accesso con oauth2 o legato alle cosídette "app meno sicure" ma a quanto capisco non hai dovuto usare credenziali speciali.
Bene :ciao:

PS
Ho segnalato per spostare in una sezione più appropriata

Re: [Risolto] Mandare mail via bash

Inviato: sabato 23 gennaio 2021, 19:18
da korda
rai ha scritto:
sabato 23 gennaio 2021, 19:07
Mi era venuto in mente che potesse essere un problema di accesso con oauth2 o legato alle cosídette "app meno sicure" ma a quanto capisco non hai dovuto usare credenziali speciali.
Bene :ciao:

PS
Ho segnalato per spostare in una sezione più appropriata
Si, certo... In ogni caso sull'account Google bisogna comunque flaggare l'accesso per le "app meno sicure".
Inoltre consigliano pure di disabilitare l'autenticazione a due fattori.

Re: [Risolto] Mandare mail via bash

Inviato: sabato 23 gennaio 2021, 20:40
da giulux
Sposto in applicazioni.
Dilemmi non è per problemi tecnici.
Leggere per favore la descrizione delle varie sezioni prima di postare, grazie.