Introduction à qmail | ||
---|---|---|
Précédent | Chapitre 1. Généralités | Suivant |
À la différence de sendmail, qmail n'est pas monolithique. Le système qmail se compose de plusieurs programmes tournant sous des UID/GID différents et presque tous non nuls rendant difficile toute tentative d'intrusion. De plus, la gestion des chaînes de caractères dans qmail a été traitée avec beaucoup de soin pour éviter les problèmes de débordement, souvent à l'origine des trous de sécurité. Un groupe d'utilisateurs offre même un prix de 1000$ à toute personne qui trouverait un trou de sécurité dans qmail !
Aucun binaire ne porte le nom qmail. Par contre, beaucoup de binaires ont un nom qui commence par qmail-.
qmail est en fait un ensemble de binaires, tous situés par défaut dans /var/qmail/bin/, comprenant une partie MTA avec ses «facettes» SMTP avec qmail-smtpd et QMTP avec qmail-qmtpd, qmail-inject et mailsubj pour l'injection dans la file d'attente et une partie MDA qmail-local ainsi qu'un petit wrapper pour sendmail.
Les binaires du système qmail ont tous leur page de manuel. L'aide comprend également des pages de manuel supplémentaires décrivant certains formats de fichiers ou d'entêtes par exemple. En voici quelques unes : qmail, qmail-limits, qmail-upgrade, qmail-header, addresses, envelopes.
Le POP3 est disponible via le triplet qmail-popup, checkpassword et qmail-pop3d. Il existe des patches pour les gestionnaires IMAP et POP3 habituels permettant de les utiliser avec qmail, voir la page de qmail http://www.qmail.org/ pour plus de détails. Les messages sont placés dans la file d'attente par qmail-queue. La gestion de la file d'attente est effectuée par differents programmes dont qmail-lspawn, qmail-clean et qmail-rspawn, tous fils du daemon qmail-send. Le traçage via syslog peut être effectué par splogger. Voici un schéma montrant la structure de qmail lorsqu'il est chargé en mémoire :
UTILISATEUR PROGRAMME FONCTION qmails qmail-send gestion sortie file d'attente qmaill \_ splogger qmail enregistrement via syslog qmailq \_ qmail-clean nettoyage de la file d'attente qmailr \_ qmail-rspawn gestionnaire messages distants root \_ qmail-lspawn ./Mailbox gestionnaire messages locaux |
Voici un petit schéma explicatif emprunté au fichier INTERNALS livré avec les sources qui contient une présentation de la structure de la file d'attente de qmail et sa gestion
qmail-smtpd --- qmail-queue -- qmail-send --- qmail-rspawn -- qmail-remote / | \ qmail-inject _/ qmail-clean \_ qmail-lspawn -- qmail-local |
qmail-send gère les messages placés dans la file d'attente par qmail-queue. Il fait appel à qmail-lspawn lui même invoquant qmail-local et qmail-rspawn lui même invoquant qmail-remote. Voir leur page de manuel respectives pour les détails. Un man qmail donne une présentation globale de qmail.
Bien entendu, ces pages de manuel ne seront disponibles que lorsque qmail sera installé. Cependant, une version HTML de ces pages existe à l'URL http://qmail-docs.surfdirect.com.au/docs/qmail-1.03-man/.
Avant de passer à la suite, voici la structure standard du répertoire qmail /var/qmail/
REPERTOIRE FONCTION /var/qmail répertoire principal \_ alias/ réceptacle des courriels «spéciaux» (root...) \_ bin/ binaires de la distribution qmail \_ control/ fichiers de configuration \_ man/ pages de manuel \_ queue/ la file d'attente \_ users/ plan d'adressage (super-fichier d'alias) |
Pour finir cette section, je vous signale l'existence de la «qmail big picture» à l'URL http://www.nrg4u.com/ qui donne une vue synthétique de l'achitecture de qmail.
Précédent | Page principale | Suivant |
Généralités | Niveau précédent | Principales différences avec la messagerie sendmail |
CULTe home page · Documentation CULTe · Translate this page using Babelfish |