Inoltrare mail a più destinatari con Fetchmail
Inoltrare mail a più indirizzi (senza segnarle come lette)
Hai la necessità di smistare le mail in arrivo su una casella verso più collaboratori, ma vuoi che sulla Webmail originale i messaggi rimangano “Non Letti”?
In questa guida vedremo come usare Fetchmail per creare un sistema di inoltro intelligente che non “spamma” i tuoi colleghi con i messaggi vecchi e mantiene tutto pulito sul server remoto.
🛠 STEP 1: Creazione dell’utente dedicato
Per mantenere il sistema sicuro ed evitare conflitti di permessi, creiamo un utente di sistema che si occuperà esclusivamente di questa attività.
# Crea l'utente senza password (solo per uso interno)
useradd -m inoltromail
📝 STEP 2: Configurazione del file .fetchmailrc
Ora dobbiamo dire a Fetchmail come collegarsi al server. Creiamo il file di configurazione nella home del nuovo utente.
nano /home/inoltromail/.fetchmailrc
Copia e incolla il seguente contenuto (sostituisci le credenziali e gli indirizzi email):
set logfile /home/inoltromail/fetchmail.log
poll pop3.esempio.it with proto POP3 port 995
uidl # Fondamentale per ricordare le mail già viste
user "utente@esempio.it" there with password "TuaPassword"
is "inoltromail" here
keep # Lascia la mail originale sul server
ssl
sslproto "TLS1.2"
mda "/usr/sbin/sendmail -i mail1@azienda.it mail2@azienda.it mail3@azienda.it"
⚠️ ATTENZIONE: I permessi devono essere blindati, altrimenti Fetchmail non partirà:
chmod 600 /home/inoltromail/.fetchmailrc
chown inoltromail:inoltromail /home/inoltromail/.fetchmailrc
🛑 STEP 3: Allineamento Storico (Evitiamo il disastro!)
Se la tua casella ha già centinaia o migliaia di messaggi, Fetchmail proverebbe a inoltrarli tutti al primo avvio. Segui questi passi per “marcare” le mail vecchie come già viste senza inviarle.
-
Finto MDA: Modifica
.fetchmailrce cambia temporaneamente la rigamdain:mda "/bin/true" -
Sincronizzazione ID: Esegui il comando per scaricare solo gli ID:
su -s /bin/bash -c "fetchmail -v" inoltromailAttendi che finisca. Questo creerà il file
/home/inoltromail/.fetchids. -
Ripristino: Torna nel file
.fetchmailrce scrivi nuovamente la rigamdaoriginale con i tuoi indirizzi email reali.
⏰ STEP 4: Automazione con Cron
Ora dobbiamo dire al sistema di controllare la mail ogni 5 minuti. Modifichiamo il Crontab di root:
crontab -e
Aggiungi questa riga alla fine:
*/5 * * * * su -s /bin/bash -c "/usr/bin/fetchmail -s" inoltromail > /dev/null 2>&1
🔍 STEP 5: Troubleshooting (Cosa fare se…)
Errore: “Another foreground fetchmail is running” Capita se il processo viene interrotto male. Risolvi così:
killall fetchmail
rm -f /home/inoltromail/.fetchmail.pid
Come vedo se sta lavorando correttamente? Monitora il log in tempo reale:
tail -f /home/inoltromail/fetchmail.log
Se vedi X messages (X seen), il sistema è allineato e aspetta solo l’arrivo della prossima mail!
Tip: Usando POP3 invece di IMAP, i messaggi rimangono “Non Letti” sul server (bustina chiusa), permettendo al titolare di vedere la notifica sulla webmail.