Sandmail è un Mail Transport Agent (MTA) che usa il Simple Mail Transport Protocol (SMTP) per la consegna di messaggi elettronici tra altri MTA, per client email o per la consegna degli agent. Sebbene molti MTA sono capaci di cifrare il traffico presente tra di essi, molti non effettuano questa operazione, in questo modo l'invio di email attraverso qualsiasi rete pubblica, viene considerata una forma insicura di comunicazione.
Per maggiori informazioni sul funzionamento delle email e su di una panoramica sulle impostazioni di configurazione, consultate il capitolo Email nella Red Hat Enterprise Linux Reference Guide. Questa sezione presuppone una conoscenza di base su come generare un valido /etc/mail/sendmail.cf, modificando /etc/mail/sendmail.mc ed eseguendo il comando m4 come spiegato nella Red Hat Enterprise Linux Reference Guide.
È consigliato che chiunque desideri implementare un server Sendmail, indirizzi le seguenti problematiche.
A causa della natura delle email, un aggressore è in grado di inondare facilmente il server causando il verificarsi di un attaco di tipo denial of service. Impostando dei limiti alle seguenti direttive su /etc/mail/sendmail.mc, si potrà limitare l'afficacia di questo attacco.
confCONNECTION_RATE_THROTTLE — Il numero di collegamenti che il server può ricevere al secondo. Per default, Sendmail non limita il numero dei suddetti collegamenti. Se viene impostato un limite e successivamente raggiunto, i successivi collegamenti verranno cancellati.
confMAX_DAEMON_CHILDREN — Il numero massimo di processi figlio effettuati da un server. Per default, Sendmail non assegna un limite al numero di processi figlio. Se viene impostato un limite e successivamente raggiunto, i collegamenti successivi verranno cancellati.
confMIN_FREE_BLOCKS — Il numero minimo di bloccchi liberi che devono essere dosponibili per permettere as un server di ricevere mail. Li default è 100.
confMAX_HEADERS_LENGTH — La misura massima accettabile (in byte) per un messaggio di testo.
confMAX_MESSAGE_SIZE — La misura massima accettabile (in byte) per ciascun messaggio.
Non mettere mai la directory spool mail /var/spool/mail/, su di un volume condiviso NFS.
Dato che NFS non ha un controllo sull'ID di un utente e del gruppo, due o più utenti possono avere lo stesso UID, potendo così ricevere e leggere le reciproche mail.
Per prevenire il verificarsi di exploit ai danni dell'utente locale su di un server Sendmail, è consigliabile per gli utenti mail, accedere il server Sendmail usando un programma email. Gli account della shell sul server mail, non dovrebbero essere abilitati e tutte le shell dell'utente nel file /etc/passwd dovrebbero essere impostate su /sbin/nologin (con la sola eccezione dell'utente root).