JavaScript is required to for searching.
Ignorer les liens de navigation
Quitter l'aperu
Gestion des services sendmail dans Oracle Solaris 11.1     Oracle Solaris 11.1 Information Library (Français)
search filter icon
search icon

Informations document

Préface

1.  Services de messagerie (présentation)

2.  Services de messagerie (tâches)

Liste des tâches pour les services de messagerie

Planification de votre système de messagerie

Courrier local uniquement

Courrier local et connexion à distance

Configuration des services de messagerie (liste des tâches)

Configuration des services de messagerie

Configuration d'un serveur de courrier

Configuration d'un client de messagerie

Configuration d'un hôte de messagerie

Configuration d'une passerelle de messagerie

Utilisation de DNS avec sendmail

Modification de la configuration sendmail (liste des tâches)

Modification de la configuration sendmail

Création d'un fichier sendmail.cf

Configuration d'un hôte virtuel

Reconstruction automatique d'un fichier de configuration

Utilisation de sendmail en mode ouvert

Configuration de SMTP pour utiliser le protocole TLS

Gestion de la distribution du courrier à l'aide d'une autre configuration de sendmail.cf

Administration des fichiers d'alias de messagerie (liste des tâches)

Administration des fichiers d'alias de messagerie

Configuration d'une carte mail.alias NIS

Configuration d'un fichier d'alias de messagerie locale

Création d'un fichier de configuration à clé

Gestion de l'alias postmaster

Création d'un alias postmaster dans chaque fichier /etc/mail/aliases local

Création d'une autre boîte à lettres pour postmaster

Ajout de la boîte à lettres postmaster aux alias dans le fichier /etc/mail/aliases

Administration des répertoires de file d'attente (liste des tâches)

Administration des répertoires de file d'attente

Affichage du contenu de la file d'attente de messages, /var/spool/mqueue

Traitement forcé de la file d'attente de messages, /var/spool/mqueue

Exécution d'un sous-ensemble de la file d'attente de messages, /var/spool/mqueue

Déplacement de la file d'attente de messages, /var/spool/mqueue

Exécution de l'ancienne file d'attente de messages, /var/spool/omqueue

Administration des fichiers .forward (liste des tâches)

Administration des fichiers .forward

Désactivation de fichiers .forward

Modification du chemin de recherche de fichier .forward

Création et renseignement du fichier /etc/shells

Procédures de dépannage et conseils pour les services de messagerie (liste des tâches)

Procédures de dépannage et conseils pour les services de messagerie

Test de la configuration de la messagerie

Vérification d'alias de messagerie

Test des ensembles de règles sendmail

Vérification des connexions à d'autres systèmes

Consignation des messages d'erreur

Autres sources d'informations de diagnostic pour la messagerie

Résolution des messages d'erreur

3.  Services de messagerie (référence)

Index

Modification de la configuration sendmail

La section Création d'un fichier sendmail.cf vous montre comment créer le fichier de configuration. Bien que vous puissiez toujours utiliser des versions plus anciennes des fichiers sendmail.cf, il est recommandé d'utiliser le nouveau format.

Pour plus de détails, reportez-vous à la documentation suivante.

Création d'un fichier sendmail.cf

La procédure suivante vous montre comment créer un fichier de configuration.


Remarque - Le fichier /usr/lib/mail/cf/main-v7sun.mc est désormais /etc/mail/cf/cf/sendmail.mc.


  1. Connectez-vous en tant qu'administrateur.

    Pour plus d'informations, reportez-vous à la section Utilisation de vos droits d’administration du manuel Administration d’Oracle Solaris 11.1 : Services de sécurité.

  2. Arrêtez sendmail.
    # svcadm disable -t network/smtp:sendmail
  3. Faites une copie des fichiers de configuration que vous modifiez.
    # cd /etc/mail/cf/cf
    # cp sendmail.mc myhost.mc
    myhost

    Sélectionnez un nouveau nom pour votre fichier .mc.

  4. Modifiez les nouveaux fichiers de configuration (par exemple, myhost.mc), si nécessaire.

    Par exemple, ajoutez la ligne de commande suivante pour activer le masquerading du domaine.

    # cat myhost.mc
    ..
    MASQUERADE_AS(`host.domain')
    host.domain

    Utilisez le nom d'hôte et le nom de domaine souhaités.

    Dans cet exemple, la commande MASQUERADE_AS entraîne l'étiquetage du courrier envoyé pour indiquer sa provenance de host.domain, plutôt que de $j.

  5. Créez le fichier de configuration en utilisant m4.
    # make myhost.cf
  6. Testez le nouveau fichier de configuration en utilisant l'option -C pour spécifier le nouveau fichier.
    # /usr/lib/sendmail -C myhost.cf -v testaddr </dev/null

    Bien que cette commande affiche des messages, elle envoie un message à testaddr. Seul le courrier sortant peut être testé sans redémarrer le service sendmail sur le système. Pour les systèmes qui ne gèrent pas encore le courrier, utilisez la procédure de test complet de la section Test de la configuration de la messagerie.

  7. Installez le nouveau fichier de configuration après avoir fait une copie de l'original.
    # cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.save
    # cp myhost.cf /etc/mail/sendmail.cf
  8. Redémarrez le service sendmail.
    # svcadm enable network/smtp:sendmail

Configuration d'un hôte virtuel

Si vous devez assigner plusieurs adresses IP à un hôte, reportez-vous au site Web : http://www.sendmail.org/tips/virtualHosting. Ce site fournit des instructions complètes sur la façon d'utiliser sendmail pour configurer un hôte virtuel. Cependant, à la section “Sendmail Configuration”, n'effectuez pas l'étape 3b, comme présenté ci-dessous.

# cd sendmail-VERSION/cf/cf
# ./Build mailserver.cf
# cp mailserver.cf /etc/mail/sendmail.cf

Effectuez plutôt les étapes suivantes pour le système d'exploitation Oracle Solaris.

# cd /etc/mail/cf/cf
# make mailserver.cf
# cp mailserver.cf /etc/mail/sendmail.cf
mailserver

Utilisez le nom du fichier .cf.

La section Modification de la configuration sendmail présente les trois mêmes étapes dans le cadre du processus de création.

Une fois que vous avez généré votre fichier /etc/mail/sendmail.cf, vous pouvez passer aux étapes suivantes pour créer une table d'utilisateurs virtuels.

Reconstruction automatique d'un fichier de configuration

Si vous avez créé votre propre copie de sendmail.cf ou submit.cf, le fichier de configuration n'est pas remplacé pendant le processus de mise à niveau. La procédure suivante présente la configuration des propriétés du service sendmail pour que le fichier sendmail.cf soit automatiquement reconstruit. Pour obtenir des instructions sur la création automatique du fichier de configuration submit.cf, reportez-vous à l'Exemple 2-1. Vous pouvez combiner ces procédures si vous avez besoin de construire les deux fichiers.

  1. Connectez-vous en tant qu'administrateur.

    Pour plus d'informations, reportez-vous à la section Utilisation de vos droits d’administration du manuel Administration d’Oracle Solaris 11.1 : Services de sécurité.

  2. Définissez les propriétés sendmail.
    # svccfg -s sendmail
    svc:/network/smtp:sendmail> setprop config/path_to_sendmail_mc=/etc/mail/cf/cf/myhost.mc 
    svc:/network/smtp:sendmail> quit
  3. Actualisez et redémarrez le service sendmail.

    La première commande transmet les modifications dans l'instantané en cours d'exécution. La deuxième commande redémarre le service sendmail à l'aide des nouvelles options.

    # svcadm refresh svc:/network/smtp:sendmail 
    # svcadm restart svc:/network/smtp:sendmail

Exemple 2-1 Etablissement d'une reconstruction automatique de submit.cf

Cette procédure permet de configurer le service sendmail, de manière à ce que le fichier de configuration submit.mc soit reconstruit automatiquement.

# svccfg -s sendmail-client:default
svc:/network/smtp:sendmail> setprop config/path_to_submit_mc=/etc/mail/cf/cf/submit-myhost.mc 
svc:/network/smtp:sendmail> exit
# svcadm refresh svc:/network/sendmail-client 
# svcadm restart svc:/network/sendmail-client

Utilisation de sendmail en mode ouvert

Le service sendmail a été modifié de manière à s'exécuter par défaut en mode local uniquement. Le mode local uniquement signifie que seul le courrier issu de l'hôte local est accepté. Les messages provenant de n'importe quel autre système sont rejetés. Les versions antérieures étaient configurées pour accepter le courrier entrant provenant de tous les systèmes distants, cette configuration étant connue comme étant le mode ouvert. Pour utiliser le mode ouvert, utilisez la procédure suivante.


Attention

Attention - L'exécution de sendmail en mode local uniquement est beaucoup plus sûre que son exécution en mode ouvert. Assurez-vous que vous connaissez les risques de sécurité potentiels si vous suivez cette procédure.


  1. Connectez-vous en tant qu'administrateur.

    Pour plus d'informations, reportez-vous à la section Utilisation de vos droits d’administration du manuel Administration d’Oracle Solaris 11.1 : Services de sécurité.

  2. Définissez les propriétés sendmail.
    # svccfg -s sendmail
    svc:/network/smtp:sendmail> setprop config/local_only = false 
    svc:/network/smtp:sendmail> quit
  3. Actualisez et redémarrez le service sendmail.
    # svcadm refresh svc:/network/smtp:sendmail 
    # svcadm restart svc:/network/smtp:sendmail

Configuration de SMTP pour utiliser le protocole TLS

SMTP peut utiliser le protocole TLS (Transport Layer Security) dans la version 8.13 de sendmail. Ce service aux serveurs et clients SMTP fournit des communications privées et authentifiées sur Internet, ainsi qu'une protection contre les écoutes clandestines et les pirates. Notez que ce service n'est pas activé par défaut.

La procédure suivante utilise des données d'exemple pour vous montrer comment configurer les certificats qui permettent à sendmail d'utiliser TLS. Pour plus d'informations, reportez-vous à la section Prise en charge de l'exécution de SMTP avec TLS dans la version 8.13 de sendmail.

  1. Connectez-vous en tant qu'administrateur.

    Pour plus d'informations, reportez-vous à la section Utilisation de vos droits d’administration du manuel Administration d’Oracle Solaris 11.1 : Services de sécurité.

  2. Arrêtez sendmail.
    # svcadm disable -t network/smtp:sendmail
  3. Configurez les certificats qui permettent à sendmail d'utiliser TLS.
    1. Exécutez ce qui suit :
      # cd /etc/mail
      # mkdir -p certs/CA
      # cd certs/CA
      # mkdir certs crl newcerts private
      # echo "01" > serial
      # cp /dev/null index.txt
      # cp /etc/openssl/openssl.cnf .
    2. Utilisez l'éditeur de texte de votre choix pour faire passer la valeur dir située dans le fichier openssl.cnf de /etc/openssl à /etc/mail/certs/CA.
    3. Utilisez l'outil de ligne de commande openssl pour mettre en oeuvre TLS.

      Notez que la ligne de commande suivante génère du texte interactif.

      # openssl req -new -x509 -keyout private/cakey.pem -out cacert.pem -days 365 \
      -config openssl.cnf
      Generating a 1024 bit RSA private key
      .....................................++++++
      .....................................++++++
      writing new private key to 'private/cakey.pem'
      Enter PEM pass phrase:
      Verifying - Enter PEM pass phrase:
      -----
      You are about to be asked to enter information that will be incorporated
      into your certificate request.
      What you are about to enter is what is called a Distinguished Name or a DN.
      There are quite a few fields but you can leave some blank
      For some fields there will be a default value,
      If you enter '.', the field will be left blank.
      -----
      Country Name (2 letter code) []:US
      State or Province Name (full name) []:California
      Locality Name (eg, city) []:Menlo Park
      Organization Name (eg, company) [Unconfigured OpenSSL Installation]:Oracle
      Organizational Unit Name (eg, section) []:Solaris
      Common Name (eg, YOUR name) []:somehost.somedomain.example.com
      Email Address []:someuser@example.com
      req

      Cette commande crée et traite des demandes de certificats.

      -new

      Cette option de req génère une nouvelle demande de certificat.

      -x509

      Cette option de req crée un certificat autosigné.

      -keyout private/cakey.pem

      Cette option de req vous permet d'assigner private/fichier.pem en tant que nom de fichier pour la clé privée que vous venez de créer.

      -out cacert.pem

      Cette option de req vous permet d'assigner cacert.pem en tant que fichier de sortie.

      -days 365

      Cette option de req vous permet d'obtenir le certificat pour 365 jours. La valeur par défaut est 30.

      -config openssl.cnf

      Cette option de req vous permet de spécifier openssl.cnf en tant que fichier de configuration.

      Notez que cette commande requiert que vous fournissiez les informations suivantes :

      • Country Name (nom du pays), comme US.

      • State or Province Name (nom de l'Etat ou de la province), comme California.

      • Locality Name (nom de la localité), comme Menlo Park.

      • Organization Name (nom de l'organisation), comme Oracle.

      • Organizational Unit Name (nom du service dans l'organisation), comme Solaris .

      • Common Name (nom commun), qui correspond au nom d'hôte complet de la machine. Pour plus d'informations, reportez-vous à la page de manuel check-hostname(1M).

      • Email Address (adresse e-mail), comme someuser@example.com.

  4. (Facultatif) Si vous avez besoin d'une nouvelle connexion sécurisée, créez un nouveau certificat et signez-le avec l'autorité de certification.
    1. Créez un certificat.
      # cd /etc/mail/certs/CA
      # openssl req -nodes -new -x509 -keyout newreq.pem -out newreq.pem -days 365 \
      -config openssl.cnf
      Generating a 1024 bit RSA private key
      ..............++++++
      ..............++++++
      writing new private key to 'newreq.pem'
      -----
      You are about to be asked to enter information that will be incorporated
      into your certificate request.
      What you are about to enter is what is called a Distinguished Name or a DN.
      There are quite a few fields but you can leave some blank
      For some fields there will be a default value,
      If you enter '.', the field will be left blank.
      -----
      Country Name (2 letter code) []:US
      State or Province Name (full name) []:California
      Locality Name (eg, city) []:Menlo Park
      Organization Name (eg, company) [Unconfigured OpenSSL Installation]:Oracle
      Organizational Unit Name (eg, section) []:Solaris
      Common Name (eg, YOUR name) []:somehost.somedomain.example.com
      Email Address []:someuser@example.com

      Cette commande requiert que vous fournissiez les mêmes informations que vous avez fournies à l'étape 3c.

      Notez que dans cet exemple, le certificat et la clé privée se trouvent dans le fichier newreq.pem.

    2. Signez le certificat avec l'autorité de certification.
      # cd /etc/mail/certs/CA
      # openssl x509 -x509toreq -in newreq.pem -signkey newreq.pem -out tmp.pem
      Getting request Private Key
      Generating certificate request
      # openssl ca -config openssl.cnf -policy policy_anything -out newcert.pem -infiles tmp.pem
      Using configuration from openssl.cnf
      Enter pass phrase for /etc/mail/certs/CA/private/cakey.pem:
      Check that the request matches the signature
      Signature ok
      Certificate Details:
              Serial Number: 1 (0x1)
              Validity
                  Not Before: Jun 23 18:44:38 2005 GMT
                  Not After : Jun 23 18:44:38 2006 GMT
              Subject:
                  countryName               = US
                  stateOrProvinceName       = California
                  localityName              = Menlo Park
                  organizationName          = Oracle
                  organizationalUnitName    = Solaris
                  commonName                = somehost.somedomain.example.com
                  emailAddress              = someuser@example.com
              X509v3 extensions:
                  X509v3 Basic Constraints: 
                      CA:FALSE
                  Netscape Comment: 
                      OpenSSL Generated Certificate
                  X509v3 Subject Key Identifier: 
                      93:D4:1F:C3:36:50:C5:97:D7:5E:01:E4:E3:4B:5D:0B:1F:96:9C:E2
                  X509v3 Authority Key Identifier: 
                      keyid:99:47:F7:17:CF:52:2A:74:A2:C0:13:38:20:6B:F1:B3:89:84:CC:68
                      DirName:/C=US/ST=California/L=Menlo Park/O=Oracle/OU=Solaris/\
                      CN=someuser@example.com/emailAddress=someuser@example.com
                      serial:00
      
      Certificate is to be certified until Jun 23 18:44:38 2006 GMT (365 days)
      Sign the certificate? [y/n]:y
      
      
      1 out of 1 certificate requests certified, commit? [y/n]y
      Write out database with 1 new entries
      Data Base Updated
      # rm -f tmp.pem

      Dans cet exemple, le fichier newreq.pem contient le certificat et la clé privée non signés. Le fichier newcert.pem contient le certificat signé.

      Utilitaire x509

      Affiche les informations sur les certificats, convertit les certificats sous différentes formes et signe les demandes de certificats.

      Application ca

      Utilisée pour signer les demandes de certificats sous différentes formes et générer des listes de révocation de certificats (LRC).

  5. Activez sendmail pour utiliser les certificats en ajoutant les lignes suivantes à votre fichier .mc.
    define(`confCACERT_PATH', `/etc/mail/certs')dnl
    define(`confCACERT', `/etc/mail/certs/CAcert.pem')dnl
    define(`confSERVER_CERT', `/etc/mail/certs/MYcert.pem')dnl
    define(`confSERVER_KEY', `/etc/mail/certs/MYkey.pem')dnl
    define(`confCLIENT_CERT', `/etc/mail/certs/MYcert.pem')dnl
    define(`confCLIENT_KEY', `/etc/mail/certs/MYkey.pem')dnl

    Pour plus d'informations, reportez-vous à la section Options du fichier de configuration pour l'exécution de SMTP avec TLS.

  6. Recréez et installez le fichier sendmail.cf dans le répertoire /etc/mail.

    Pour obtenir des instructions détaillées, reportez-vous à la section Modification de la configuration sendmail.

  7. Créez des liens symboliques à partir des fichiers que vous avez créés avec openssl vers les fichiers que vous avez définis dans votre fichier .mc.
    # cd /etc/mail/certs
    # ln -s CA/cacert.pem CAcert.pem
    # ln -s CA/newcert.pem MYcert.pem
    # ln -s CA/newreq.pem MYkey.pem
  8. Pour plus de sécurité, refusez les autorisations en lecture aux groupes (et autres) pour MYkey.pem.
    # chmod go-r MYkey.pem
  9. Utilisez un lien symbolique pour installer des certificats de CA dans le répertoire assigné à confCACERT_PATH.
    # C=CAcert.pem
    # ln -s $C `openssl x509 -noout -hash < $C`.0
  10. Pour un système de messagerie sécurisé avec d'autres hôtes, installez leurs certificats d'hôte.
    1. Copiez le fichier défini par l'option confCACERT de l'autre hôte dans /etc/mail/certs/host.domain.cert.pem.

      Remplacez host.domain par le nom d'hôte complet de l'autre hôte.

    2. Utilisez un lien symbolique pour installer des certificats de CA dans le répertoire assigné à confCACERT_PATH.
      # C=host.domain.cert.pem
      # ln -s $C `openssl x509 -noout -hash < $C`.0

      Remplacez host.domain par le nom d'hôte complet de l'autre hôte.

  11. Redémarrez sendmail.
    # svcadm enable network/smtp:sendmail

Exemple 2-2 En-tête de courrier Received:

Ce qui suit est un exemple de l'en-tête Received: pour le courrier sécurisé avec TLS.

Received: from his.example.com ([IPv6:2001:db8:3c4d:15::1a2f:1a2b])
        by her.example.com (8.13.4+Sun/8.13.4) with ESMTP id j2TNUB8i242496
        (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK)
        for <janepc@her.example.com>; Tue, 29 Mar 2005 15:30:11 -0800 (PST)
Received: from her.example.com (her.city.example.com [192.168.0.0])
        by his.example.com (8.13.4+Sun/8.13.4) with ESMTP id j2TNU7cl571102
        version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK)
        for <janepc@her.example.com>; Tue, 29 Mar 2005 15:30:07 -0800 (PST)

Notez que la valeur de verify est OK, ce qui signifie que l'authentification a réussi. Pour plus d'informations, reportez-vous à la section Macros pour l'exécution de SMTP avec TLS.

Voir aussi

Les pages de manuel OpenSSL suivantes :

Gestion de la distribution du courrier à l'aide d'une autre configuration de sendmail.cf

Pour faciliter le transport du courrier entrant et sortant, la nouvelle configuration par défaut de sendmail utilise un démon et un programme d'exécution de file d'attente client. Ce programme doit être en mesure de soumettre le courrier au démon sur le port SMTP local. Si le démon n'écoute pas sur le port SMTP, le courrier reste dans la file d'attente. Pour éviter ce problème, effectuez la tâche suivante. Pour plus d'informations sur le démon et le programme d'exécution de file d'attente client, et pour comprendre pourquoi vous devrez peut-être utiliser cette configuration alternative, reportez-vous à la section Fichier de configuration submit.cf à partir de la version 8.12 de sendmail.

Cette procédure permet de s'assurer que le démon s'exécute uniquement pour accepter les connexions de l'hôte local.

  1. Connectez-vous en tant qu'administrateur.

    Pour plus d'informations, reportez-vous à la section Utilisation de vos droits d’administration du manuel Administration d’Oracle Solaris 11.1 : Services de sécurité.

  2. Arrêtez le service client sendmail.
    # svcadm disable -t sendmail-client
  3. Faites une copie du fichier de configuration que vous modifiez.
    # cd /etc/mail/cf/cf
    # cp submit.mc submit-myhost.mc
    myhost

    Sélectionnez un nouveau nom pour votre fichier .mc.

  4. Modifiez le nouveau fichier de configuration (par exemple, submit- myhost.mc).

    Modifiez l'adresse IP de l'hôte d'écoute dans la définition msp.

    # grep msp submit-myhost.mc
    FEATURE(`msp', `[#.#.#.#]')dnl
  5. Créez le fichier de configuration en utilisant m4.
    # make submit-myhost.cf
  6. Installez le nouveau fichier de configuration après avoir fait une copie de l'original.
    # cp /etc/mail/submit.cf /etc/mail/submit.cf.save
    # cp submit-myhost.cf /etc/mail/submit.cf
  7. Redémarrez le service client sendmail.
    # svcadm enable sendmail-client