Postfix + Telegram: guida passo passo per ricevere notifiche e allarmi su Ubuntu Server 24.04

da | Dic 2, 2025

 

 

Chi gestisce un server di posta sa bene quanto sia importante non perdere mai un allarme o una notifica di sistema.

Spesso gli alert vengono inviati via email ma quando si parla di monitoraggio in tempo reale, le email non bastano più: rischiano di passare inosservate o di finire sepolte in una casella piena.

In questo articolo vedremo come integrare Postfix con Telegram su Ubuntu Server 24.04, in modo da ricevere direttamente sullo smartphone tramite un bot dedicato tutti i messaggi e gli allarmi generati dal mail server o dai dispositivi che lo utilizzano come smarthost.

La soluzione è semplice, leggera e completamente autonoma: non richiede software esterni né servizi cloud aggiuntivi, ma sfrutta le funzionalità già presenti in Postfix (alias e sender_bcc_maps) insieme alle API ufficiali di Telegram.

Al termine della guida avrai un sistema capace di:

  • intercettare le email di allarme inviate tramite Postfix;
  • inoltrarle automaticamente su un canale o gruppo Telegram;
  • notificarti in tempo reale eventuali problemi di rete, backup o monitoraggio.

Un modo pratico per trasformare il tuo server di posta in un centro di allerta sempre in tasca, utile per sysadmin, devops e chiunque voglia avere sotto controllo lo stato della propria infrastruttura.

PREREQUISITI

Installazione del Mail Server Postfix su Ubuntu Server 16.04

 

CONFIGURAZIONE DI TELEGRAM

La prima cosa da fare è creare il bot con BotFather

Aprire Telegram o tramite app o via web quindi cercare l’utente @BotFather.

Selezionare @BotFather. Dovremmo visualizzare una schermata come quella sovrastante

Scrivere /start

Eseguire il comando /newbot

Inserire un nome da dare al Bot (es. Allarmi Rete)

Sceglire uno username univoco che termini con _bot (es. allarmi_rete_bot)

Se l’username non esiste il Bot BotFather dovrebbe rispondere qualcosa tipo:

Done! Congratulations on your new bot. You will find it at t.me/allarmi_rete_bot. You can now add a description, about section and profile picture for your bot, see /help for a list of commands. By the way, when you’ve finished creating your cool bot, ping our Bot Support if you want a better username for it. Just make sure the bot is fully operational before you do this.

Use this token to access the HTTP API:
123456789:AAAbbbCCCdddEEEfffGGGhhhIIIjjj
Keep your token secure and store it safely, it can be used by anyone to control your bot.

For a description of the Bot API, see this page: https://core.telegram.org/bots/api

Segnarsi il Token perchè lo utilizzeremo tra poco…

Per impostare un immagine al Bot appena creato digitare /setuserpic quindi cliccare sulla graffetta per caricare l’immagine

Verificare che l’immagine sia OK quindi cliccare Send

Se la foto è stata caricata con successo dovremmo visualizzare il messaggio:

Success! Profile photo updated. /help

A questo punto è arrivato il momento di ottenere il tuo chat_id

Cercare la chat con il bot che hai appena creato. (es. allarmi_rete_bot)

Premere Start o scrivere un messaggio qualunque (es. ciao), così c’è almeno un update.

Dovremmo visualizzare una schermata come quella sovrastante

A questo punto creare un gruppo su Telegram cliccando su New Group

Inserire il nome da dare al gruppo quindi cliccare Next

Cliccare Create

Cliccare sui tre pallini indicati dalla freccia

Seelzionare Manage Group

Selezionare Members

Cercare e Selezionare il bot creare poco fa quindi cliccare Add

Dovremmo visualizzare due utenti nel gruppo come mostrato nell’immagine sovrstante

Collegarsi al server Ubuntu dove gira Postfix e assicurarsi di avere curl installato.

Lanciare questo comando (sostituire il TOKEN 123456789:AAAbbbCCCdddEEEfffGGGhhhIIIjjj):

Dovremmo visualizzare un output simile al seguente:

Nell’output JSON cercare una parte tipo:

Il numero al posto di 123456789 è il tuo CHAT_ID personale.

Per verificare che token e chat_id funzionano eseguire il comando seguente:

Se si riceve il messaggio su Telegram è tutto configurato correttamante.

 

CONFIGURAZIONE DI POSTIFIX SU UBUNTU

Procedere con la creazione dello script che invia le mail a Telegram.

Creare uno script che Postfix potrà chiamare ogni volta che vogliamo duplicare una mail su Telegram.

Creare il file:

Inserire il seguente contenuto:

Salvare e chiudere il file di configurazione

ATTENZIONE: sostituire il TOKEN e la CHAT_ID

NOTA BENE: head -n 20 serve a non mandare messaggi troppo lunghi su Telegram. E’ possibile alzare e/o abbassare il numero se lo si ritiene opportuno.

Rendere lo script eseguibile con il comando:

A questo punto creare un finto indirizzo locale che in realtà lancia lo script.

Aprire il file alias con il comando:

Al fondo del file aggiungere la seguente riga:

Salvare e chiudere il file di configurazione

Aggiornare gli alias con il comando:

Ora qualsiasi mail inviata a allarmi-telegram@localhost verrà passata allo script e quindi verrà inviata a Telegram.

Procediamo nel duplicare automaticamente le mail in uscita da un mittente specifico.

Qui entra in gioco il fatto che il Postfix è configurato come smarthost.

Vogliamo che tutte le mail che Postfix invia con un certo mittente (es. [email protected]) vengano anche inoltrate a allarmi-telegram@localhost e quindi inviate a Telegram.

Lo facciamo con sender_bcc_maps.

Creare la mappa sender_bcc con il seguente comando:

Aggiungere ll’interno del file una riga del tipo:

Salvare e chiudere il file di configurazione.

[email protected] = mittente che usano i tuoi device/app

allarmi-telegram@localhost = alias che abbiamo creato

Salvare e chiudere il file di configurazione e poi generare la mappa con il comando:

Questo comando crea /etc/postfix/sender_bcc.db, che è il file binario letto da Postfix.

Se in futuro vuoi aggiungere altri mittenti, basta aggiungere altre righe nello stesso file e rifare postmap.

Abilitare sender_bcc_maps in Postfix editando il file /etc/postfix/main.cf con il comando:

Aggiungere (o modificare se è già presente) la riga:

Salvare il file e poi ricaricare Postfix con il comando:

 

CONFIGURAZIONE DELLO SCRIPT PER RICEVERE ANCHE GLI ALLEGATI SU TELEGRAM

La prima cosa da fare è installare lo strumento per estrarre gli allegati: ripmime

Su Ubuntu eseguire il comando:

Ripmime serve a prendere un file .eml (la mail grezza) e tirarne fuori gli allegati in una cartella.

Ora sostituire lo script con una versione “ibrida” che fa le seguenti cose:

  • Salva tutta la mail in un file temporaneo.
  • Estrae subject, from e qualche riga di body → messaggio Telegram.
  • Usa ripmime per estrarre gli allegati.
  • Invia ogni allegato come document a Telegram.
  • Cancella tutto dalla cartella /tmp.

Editare lo script con il comando:

Quindi incollare il seguente contenuto:

Salvare e chiudere il file di configurazione quindi renderlo eseguibile con il comando:

RIASSUNTO DEL FUNZIONAMENTO

Riassumendo, Un device/app invia una mail usando il tuo smarthost Postfix con mittente, ad esempio: MAIL FROM:<[email protected]>

Postfix: inoltra la mail normalmente verso il destinatario finale (Internet / relay). In automatico fa una BCC verso allarmi-telegram@localhost grazie a sender_bcc_maps.

L’indirizzo allarmi-telegram è un alias che esegue mail2telegram.sh.

Lo script legge la mail da stdin, estrae Subject/From/Body e manda tutto su Telegram tramite il bot.

 

CONSIDERAZIONI FINALI

Integrare Postfix con Telegram si rivela una soluzione semplice ma estremamente efficace per migliorare la visibilità degli allarmi e delle notifiche di sistema.

In pochi passaggi abbiamo trasformato un normale server di posta in un sistema di alert in tempo reale, capace di avvisare istantaneamente via chat ogni volta che si verifica un evento critico.

Dal punto di vista tecnico, il vantaggio principale è che questa configurazione:

  • non richiede software esterni né servizi a pagamento;
  • non altera il flusso di posta originale, perché utilizza una copia BCC gestita da Postfix;
  • è facilmente estendibile: puoi filtrare i messaggi per mittente, dominio o parola chiave, oppure instradare notifiche diverse verso gruppi Telegram differenti.

L’unico accorgimento da mantenere nel tempo è proteggere il token del bot Telegram (non deve mai essere pubblico) e, se necessario, monitorare che lo script di inoltro resti eseguibile e funzionante dopo aggiornamenti del sistema.

Nel complesso, questa integrazione rappresenta un ottimo equilibrio tra semplicità e utilità pratica: un piccolo accorgimento che può fare la differenza tra scoprire un problema in tempo o dopo ore di inattività.

Un esempio perfetto di come, con pochi comandi e un po’ di automazione, si possa portare un tocco “smart” anche nella gestione dei servizi più tradizionali come Postfix.

Articoli Recenti

Veeam Backup

Monitoring

Friends

  • My English Lab  English School
  • ChrSystem   Servizi ICT
  • Since 01  Kreative Graphics

Database

Networking

Autori

  • Raffaele Chiatto  Amministratore
  • Marco Valle  Autore
  • Angelo Lauria  Autore
  • Edoardo Prot  Autore
  • Davide D’Urso  Autore
Raffaele Chiatto

Raffaele Chiatto

Sono Raffaele Chiatto, un appassionato di informatica a 360 gradi. Tutto è iniziato nel 1996, quando ho scoperto il mondo dell'informatica grazie a Windows 95, e da quel momento non ho più smesso di esplorare e imparare. Ogni giorno mi dedico con curiosità e passione a scoprire le nuove frontiere di questo settore in continua evoluzione.
Categorie: Postfix | Telegram | Ubuntu

Related Post

0 commenti

Invia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Virtualizzazione

Linux

Microsoft

Apple

Backup

Database

Security

Automazione