Questo tutorial ti mostrerà come installare e utilizzare rss2email su Ubuntu. Rss2email è un programma open source in grado di inviare aggiornamenti feed RSS al tuo indirizzo email. Il feed RSS è un ottimo modo per tenersi aggiornati con blog e siti Web, ma alcuni proprietari di siti consentono una certa quantità di articoli nel feed RSS e altri fissano un limite di tempo. I lettori di feed RSS non salvano gli articoli sul tuo computer, quindi di tanto in tanto ti perderai alcuni articoli. Non sarebbe bello se potessi archiviare tutti gli articoli in una casella di posta in modo da non perdere mai un post del blog? È qui che entra in gioco rss2email. Preferisco anche leggere i post del blog nel mio client di posta elettronica piuttosto che leggere l'articolo su un sito web.
Nota :questo tutorial funziona su tutte le versioni correnti di Ubuntu, incluso Ubuntu 18.04, 20.04 e 20.10.
Installa e configura rss2email su Ubuntu
Rss2email è nel repository del software Ubuntu predefinito, quindi puoi installarlo facilmente eseguendo il comando seguente in una finestra di terminale.
sudo apt install rss2email
Il binario verrà installato come /usr/bin/r2e
. Una volta installato, devi creare un nuovo database di feed con il comando seguente, che imposterà un indirizzo email predefinito a cui vengono inviate le email. Ti consigliamo di utilizzare un indirizzo email dedicato per i tuoi feed RSS.
r2e new [email protected]
Successivamente, puoi esportare le tue iscrizioni ai feed RSS dal tuo lettore di feed in un file OPML e importarlo nel database dei feed r2e.
r2e opmlimport file.opml
Alcuni lettori di feed basati sul Web potrebbero fornire un file XML. Puoi anche importarlo.
r2e opmlimport file.xml
Quindi puoi elencare i tuoi feed con:
r2e list
Per aggiungere un nuovo feed, esegui
r2e add feedname http://feed.url/somewhere.rss
Se vuoi inviare il feed a un indirizzo email diverso da quello predefinito, esegui
r2e add feedname http://feed.url/somehwere.rss [email protected]
Ora puoi modificare il file di configurazione. Userò l'editor di testo della riga di comando Nano.
nano ~/.config/rss2email.cfg
L'indirizzo predefinito è [email protected]
, probabilmente vorrai cambiarlo.
from = [email protected]
Per impostazione predefinita, rss2email utilizzerà l'indirizzo e-mail trovato nel feed come indirizzo da quando è presente un indirizzo e-mail nel feed. Ciò provoca il rimbalzo dell'e-mail inviata all'indirizzo e-mail nel feed, creando di fatto il problema del backscatter. Per disabilitare questo comportamento, usa force-from = True
.
force-from = True
Successivamente, devi aggiungere un indirizzo email di destinazione.
to = [email protected]
Se desideri ricevere email in formato HTML, modifica i seguenti valori in True
.
html-mail = False use-css = False
Salva e chiudi questo file. Per salvare un file nell'editor di testo Nano, premi Ctrl+O
, quindi premere Invio per confermare. Per chiudere il file, premi Ctrl+X
.
Configura SMTP
Quindi dobbiamo configurare come rss2email invia e-mail. Per impostazione predefinita, r2e utilizza sendmail
binario per inviare e-mail se esiste nel sistema. Se hai installato rss2email sul tuo server di posta Postfix, puoi saltare questa parte. Se hai installato rss2email sul tuo computer locale, puoi utilizzare SMTP per inviare e-mail. Sebbene rss2email ti consenta di configurare SMTP in ~/.config/rss2mail.cfg
file, l'implementazione è piuttosto buggata in realtà.
Invece, possiamo usare sSMTP per configurare SMTP. sSMTP è un server SMTP molto semplice. Innanzitutto, installa ssmtp
su Ubuntu.
sudo apt install ssmtp
Quindi apri il file di configurazione.
sudo nano /etc/ssmtp/ssmtp.conf
Modifica il file come di seguito.
root=[email protected] mailhub=smtp.gmail.com:587 AuthUser=[email protected] AuthPass=YourGmailPassword UseTLS=YES UseSTARTTLS=YES
Tieni presente che se hai abilitato la verifica in due passaggi per il tuo account Gmail, dovrai utilizzare una password per l'app anziché la normale password.
Uso il server SMTP di Gmail per r2e per inviare e-mail in questo esempio. Puoi utilizzare anche altri servizi di posta elettronica.
Salva e chiudi il file. Ora puoi eseguire il seguente comando per testare le configurazioni SMTP.
echo "hello" | sendmail [email protected]
Se le configurazioni SMTP sono corrette, riceverai un'email dal tuo account Gmail.
Se vedi questo seguente errore durante l'esecuzione del comando precedente.
sendmail: Server didn't like our AUTH LOGIN (535 5.7.8 Error: authentication failed: Invalid authentication mechanism)
È perché il tuo server SMTP non supporta il meccanismo di autenticazione LOGIN.
Utilizzo di Postfix per inoltrare email
Postfix è un server SMTP completo e molto popolare. Puoi utilizzare Postfix per inoltrare e-mail tramite Gmail invece di utilizzare sSMTP. Se hai già installato sSMTP, rimuovilo.
sudo apt purge ssmtp
Quindi installa Postfix su Ubuntu.
sudo apt install postfix
Quando viene visualizzato il seguente messaggio, premere il tasto Tab e premere Invio.
Quindi scegli la terza opzione:Internet with smarthost
, perché vogliamo che Postfix invii e-mail tramite un altro server SMTP come Gmail.
Quindi, imposta il nome della posta di sistema. Uso solo il valore predefinito perché non importa.
Infine, inserisci l'indirizzo del server SMTP. Se utilizzi Gmail, inserisci smtp.gmail.com:587
.
Dopo aver installato Postfix, apri il file di configurazione.
sudo nano /etc/postfix/main.cf
Aggiungi le seguenti righe alla fine di questo file.
# outbound relay configurations smtp_sasl_auth_enable = yes smtp_sasl_password_maps = static:[email protected]:YourPassword smtp_sasl_security_options = noanonymous smtp_tls_security_level = may header_size_limit = 4096000
Salva e chiudi il file. Quindi riavvia Postfix per rendere effettive le modifiche.
sudo systemctl restart postfix
Ora puoi eseguire il seguente comando per testare le configurazioni SMTP.
echo "hello" | sendmail [email protected]
Se le configurazioni SMTP sono corrette, riceverai un'email dal tuo account Gmail.
Feed RSS di polling
Dopo aver configurato SMTP, puoi eseguire il polling di tutti i tuoi feed eseguendo i seguenti comandi.
r2e run --no-send
Questo comando viene eseguito solo una volta perché rss2email eseguirà il polling di tutti gli articoli nel database dei feed. Probabilmente non vuoi ricevere articoli che hai già letto, da qui il --no-send
opzione. Se hai molti feed nel database, questo processo può richiedere del tempo. Dopo che questo comando ha completato la sua attività, devi eseguire il comando seguente per ricevere nuovi articoli dai tuoi feed RSS.
r2e run
Creazione di un lavoro Cron
Invece di eseguire manualmente r2e run
ogni volta, puoi utilizzare Cron per automatizzare questa attività. Apri il tuo file crontab.
crontab -e
Inserisci la seguente riga in questo file.
*/20 * * * * /usr/bin/r2e run > /dev/null 2>&1
Questo eseguirà r2e
ogni 20 minuti. Per eseguire r2e
ogni 30 minuti, cambia solo da 20 a 30.
*/30 * * * * /usr/bin/r2e run > /dev/null 2>&1
Salva e chiudi il file.
Più utilizzo
Per esportare i feed RSS dal database, esegui
r2e opmlexport > file.opml
Per sospendere temporaneamente un feed, esegui
r2e pause feed-index
Per riattivare l'esecuzione di un feed
r2e unpause feed-index
Per ottenere il numero di indice del feed, esegui
r2e list
Ad esempio, per mettere in pausa il feed n. 10, esegui
r2e pause 10
Come trovare l'URL del feed di un sito Web in Firefox
Google Chrome ha smesso di supportare i feed RSS molto tempo fa. Alcuni siti non mostrano l'URL del feed RSS ai visitatori. Puoi premere Ctrl + I
in Firefox per trovarli.
Risoluzione dei problemi
Se rss2email non funziona correttamente, puoi utilizzare il flag -VVV per mostrare le informazioni di debug.
r2e -VVV run
Ad esempio, r2e mi mostra il seguente messaggio di errore.
2021-07-04 10:40:25,973 [ERROR] error while running time limited function: generator raised StopIteration 2021-07-04 10:40:25,973 [ERROR] cause: generator raised StopIteration
Si scopre che questo errore si verifica solo quando sta recuperando feed RSS da un URL FeedBurner.
Spero che questo tutorial ti abbia aiutato a installare e utilizzare rss2email su Ubuntu. Abbi cura di te.