Sendmail est un Agent de Transport de Courrier (ATC) utilisant le protocole SMTP (Simple Mail Transport Protocol) pour distribuer des messages électroniques entre d'autres ATC et les livrer à des clients de messagerie ou des agents de distribution. Bien que de nombreux ATC soient en mesure de crypter le trafic passant entre eux, la plupart ne le font pas. Dans de telles circonstances, l'envoi de courrier électronique sur tout réseau public est considéré comme une forme de communication non-sécurisée par nature.
Pour obtenir davantage d'informations sur la manière dont les messages électroniques fonctionnent ou pour un aperçu des paramètres de configuration courants, consultez le chapitre intitulé Courrier électronique du Guide de référence de Red Hat Enterprise Linux. Cette section suppose que le lecteur dispose de connaissances élémentaires concernant la manière de créer un fichier /etc/mail/sendmail.cf valide en éditant le fichier /etc/mail/sendmail.mc et en exécutant la commande m4, comme l'explique le Guide de référence de Red Hat Enterprise Linux.
Il est recommandé à toute personne envisageant d'implémenter un serveur Sendmail, d'examiner préalablement les points suivants :
En raison de la nature même des messages électroniques, il est relativement facile pour un agresseur déterminé de submerger le serveur de messages électroniques et d'entraîner ainsi un déni de service. En donnant certaines limites aux directives suivantes dans /etc/mail/sendmail.mc, il est possible de limiter l'efficacité de telles agressions.
confCONNECTION_RATE_THROTTLE — Le nombre de connexions que le serveur peut recevoir par seconde. Par défaut, Sendmail ne limite pas le nombre de connexions. Si une limite est fixée et atteinte, les connexions suivantes sont retardées.
confMAX_DAEMON_CHILDREN — Le nombre maximum de processus enfants pouvant être engendrés par le serveur. Par défaut, Sendmail n'assigne pas de limite au nombre de processus enfants. Si une limite est fixée et atteinte, les connexions suivantes sont retardées.
confMIN_FREE_BLOCKS — Le nombre minimum de blocs non-utilisés devant être disponibles pour que le serveur puisse accepter du courrier. La valeur par défaut est de 100 blocs.
confMAX_HEADERS_LENGTH — La taille minimale acceptable (en octets) pour un en-tête de message.
confMAX_MESSAGE_SIZE — La taille maximale acceptable (en octets) pour tout message individuel.
Ne jamais placer le répertoire du spool de courrier, /var/spool/mail/, sur un volume partagé NFS.
Étant donné que NFSv2 et NFSv3 n'exercent pas de contrôle sur les ID des utilisateurs et groupes, plusieurs utilisateurs peuvent avoir la même UID et donc recevoir et lire le courrier de l'un et de l'autre. Ce n'est pas le cas avec NFSv4 utilisant Kerberos. En effet, le module de noyau SECRPC_GSS n'utilise pas l'authentification basée sur UID.
Afin d'essayer d'empêcher les exploits des utilisateurs locaux sur le serveur Sendmail, il est préférable que les utilisateurs de courrier accèdent au serveur Sendmail seulement avec un programme de messagerie. Les comptes shell sur le serveur de messagerie ne devraient pas être autorisés et tous les shells utilisateurs dans le fichier /etc/passwd devraient avoir comme valeur /sbin/nologin (à l'exception près du super-utilisateur si nécessaire).
Précédent | Sommaire | Suivant |
Sécurisation de FTP | Niveau supérieur | Vérification de l'identité des ports en attente de requêtes |