Software">
Serveur Messagerie Sous Linux: en Master Génie Logiciel Pour Cloud Module J2E
Serveur Messagerie Sous Linux: en Master Génie Logiciel Pour Cloud Module J2E
Serveur Messagerie Sous Linux: en Master Génie Logiciel Pour Cloud Module J2E
zone "1.168.192.in-
addr.arpa" IN { type
master;
file "masters/etrs.lan.inverse";
};
Les rubriques zone contiennent les configurations des zones de résolution de
nom, inverses ou directes :
type : Définit le type de serveur pour cette zone :
o maître : possède la base de données en écriture
o esclave : possède la base en lecture seule
o forwarder : fait office de proxy-cache pour cette zone.
file : Définit le chemin du fichier de zone.
allow-update : Définit les hôtes ayant l’autorisation de mettre à jour les
enregistrements
DNS.
Les fichiers de zone inverse sont nommés en prenant l’adresse réseau de la
zone (en inversant les
octets) suivi du domaine in-
addr.arpa. Les rôles
Un serveur peut avoir le rôle de maître pour la zone, c’est-à-dire qu’il possède
la zone en écriture.
[root]# less
/etc/named.conf zone
"etrs.lan" IN {
type master;
file
"masters/etrs.lan.direct"
; allow-update {
192.168.1.0/24; };
};
Seuls les clients figurant dans la variable allow-update pourront mettre à
jour la base de données du DNS.
Un serveur peut également être un serveur secondaire (slave) pour la zone,
c’est-à-dire qu’il
possède la zone en lecture.
[root]# less
/etc/named.conf zone
"etrs.lan" IN {
type slave;
file "slaves/etrs.lan.direct";
};
Un serveur peut enfin être expéditeur (forwarder) pour la zone, c’est-à-dire
qu’il a connaissance
de cette zone, et relaie les informations pour celle-ci.
[root]# less
/etc/named.conf zone
"unautredomaine.fr" IN
{
type forwarder;
forwarders
{221.10.12.1};
};
Vous retrouverez cette notion sous
Windows en tant que « redirecteur
Fichiers de ».
zone
Les fichiers présents dans le
répertoire
/var/named doivent appartenir à
l’utilisateur
système named.
SELinux ne permettra pas
l’enregistrement des
fichiers de zone en dehors de ce
répertoire.
Ces fichiers contiennent des enregistrements (RR : Resource Records) DNS de
différents types. Ils permettent la résolution directe de noms (du nom vers
l’adresse IP), ou la résolution inverse (de l’adresse IP vers le nom).
En plus de contenir les adresses IP et les noms des machines, les fichiers
contiennent les paramètres de durée de vie des enregistrements (Time To
Live, TTL).
Lorsqu’un enregistrement DNS est mis en cache, le temps restant sur
son TTL est également conservé. À la fin du TTL, l’enregistrement est
supprimé des caches.
Un TTL plus long réduit les échanges DNS.
Un TTL plus court permet une reconfiguration du réseau plus rapide.
Les types d’enregistrements
Table 1. Les types d’enregistrements
Typ Descripti
e on
A Nom attribué à une adresse de type
IP V4
AAAA Nom attribué à une adresse de type
IP V6
Alias d’un enregistrement A déjà
CNAME
défini Éviter de faire un alias vers
un alias
MX Serveur de messagerie destinataire
pour la
zone concernée
NS Le ou les serveurs de noms de la zone
(type A)
Enregistrement pointeur pour
PTR une zone inverse
SOA Démarre la configuration (cf: diapos
suivantes)
SVR Service (protocole jabber,… )
TXT Informations
Champ MX : Le numéro précise la priorité, la plus faible étant la
plus prioritaire. Ceci permet de définir un ou plusieurs serveurs
de secours qui stockeront les mails en attendant le retour du
serveur principal.
Champ de type A : Enregistrement standard. Attribue un nom à une
adresse IP. Plusieurs enregistrements identiques de type A vers des
adresses différentes permet de faire de l’équilibrage de charge par round-
robin (RR).
Exemple :
mail A192.168.1.10
A 192.168.1.11
Champ AAAA : On utilise quatre A pour symboliser IPv6 car une adresse
IPv6 est codée sur
16 octets, soit 4 fois plus qu’une adresse IPv4.
CNAME : Permet d’attribuer un ou plusieurs alias à un enregistrement A
déjà défini.
Plusieurs enregistrements du même alias permettent également de
faire de l’équilibrage
de charge type RR.
On trouvera des enregistrements
typiques, comme autoconfig, qui
permet le mécanisme de
configuration automatique d’un
client de messagerie.
Fichier de zone directe
Ce fichier est nécessaire au fonctionnement du système DNS. C’est par lui
que se fait la résolution d’un nom en adresse IP.
[root]# less /var/named/etrs.lan.direct
$ORIGIN .
$TTL 3600
etrs.lan. SOA npinf-mcsnlz01v.etrs.lan. contact.etrs.lan.
(123; 14400;
3600; 604800; 3600; )
@ IN NS npinf-mcsnlz01v.etrs.lan.
poste1 IN A 192.168.1.10
npinf-mcsnlz01v IN A 192.168.1.200
etrs.lan. MX 10192.168.1.201
npinf-mcsnlw01v IN A 192.168.1.202
www IN CNAME npinf-mcsnlw01v.etrs.lan.
$ORIGIN : Définit la valeur par défaut du domaine courant pour les
renseignements du fichier. Un . signifie la racine.
$TTL : Durée de vie par défaut des enregistrements de la zone dans
le cache, exprimée en secondes. Le TTL peut également être précisé
enregistrement par enregistrement.
SOA : Start Of Authority. La ligne démarre la configuration d’une zone.
Définit :
o le nom du serveur maître principal,
o l’email de l’administrateur de la zone (un . remplace le @ de
l’adresse mail).
o Entre parenthèses, le numéro de série du fichier (incrémenté
à chaque mise à jour) et les délais de mise à jour ou de
rafraîchissement, exprimés en secondes.
Numéro de zone : Numéro incrémental (voir le paragraphe
suivant)
Rafraîchissement : Durée en secondes avant
une tentative de synchronisation avec le
serveur maître
Réitération : Intervalle de temps avant réitération si l’essai
précédent n’a
pas fonctionné
Expiration : Durée en secondes avant l’expiration car le
serveur maître est
injoignable
Cache négatif (TTL) : Durée de vie en secondes des
enregistrements
Le @ a une signification particulière
pour Bind. Il se représente lui
même, raison pour laquelle le @ de
l’adresse courriel d’administration
est
remplacée par un .
Le numéro de la zone sert à identifier la dernière modification du DNS maître.
Tous les serveurs
secondaires utilisent ce numéro pour savoir s’ils doivent
se synchroniser. Il existe deux méthodes
d’incrémentation du numéro de zone :
Incrémentale : 1, puis 2, puis 3 (pourquoi pas ?)
Basée sur la date : AAAAMMJJXX, qui nous donne par
exemple, pour la première modification du jour : 2017210101
(méthode à privilégier)
Le fichier de zone inverse
Bien que non obligatoire, ce fichier est fortement conseillé pour un
fonctionnement optimal du
système DNS. C’est par lui que se fait la résolution d’une adresse IP en nom.
Des services comme SSH s’appuie sur
la
résolution inverse.
[root]# more /var/named/etrs.lan.inverse
$ORIGIN 1.168.192.in-addr.arpa.
$TTL 259200
@ SOA npinf-mcsnlz01v.etrs.lan.
contact.etrs.lan. (
123; 14400; 3600; 604800; 3600; )
@ NS npinf-mcsnlz01v.etrs.lan.
1 0 PTR poste1.etrs.lan.
200 PTR npinf-mcsnlz01v.etrs.lan.
La commande nsupdate
L’usage de la commande
nsupdate est exclusive. Il ne faut
plus modifier les fichiers de zone
manuellement, sous peine de
pertes
d’informations.
Syntaxe :
nsupdate
Exemple:
[root]# nsupdate
> server 192.168.1.200
> zone etrs.lan
> update add poste2.etrs.lan 3600 A 192.168.1.11
> update delete poste1
> send
La commande nsupdate est interactive.
À la saisie, elle ouvre un prompt dans lequel il faut saisir les requêtes de mise
à jour du fichier de zone.
Ces requêtes peuvent être :
server : Précise le serveur BIND pour lequel les requêtes seront
envoyées.
zone : Précise la zone de résolution pour laquelle les requêtes seront
envoyées.
prereq yxdomain nom : L’existence de l’enregistrement nom est une
condition de mise à
jour.
update add nom TTL type @IP : Ajoute l’enregistrement nom, en
précisant son type, son
adresse IP et son TTL.
update delete nom : Supprime l’enregistrement nom.
send : Valide et envoie les
requêtes. La commande rndc
La commande rndc permet de manipuler le serveur DNS à chaud.
Syntaxe de la commande rndc
rndc reload
rndc querylog on|off
reload : Prend en compte les modifications apportées sans devoir
relancer le service
querylog : Active ou non la journalisation
Après modification d’un fichier de zone, il est nécessaire de faire prendre
en compte les modifications au service. Les fichiers étant lus au
démarrage du service, cela permet de prendre en compte les
modifications, mais résulte en la perte des statistiques. Il faut donc
privilégier la méthode reload.
Le suivi des logs
La fonction d’enregistrement des fichiers journaux est activée ou désactivée
par la commande
rndc.
Le fichier de logs est par défaut
/var/named/data/named.run Exemple :
[root]# rndc querylog on
[root]# tail –f /var/named/data/named.run
Bind propose dans son fichier de configuration des options pour journaliser les
informations :
de transferts,
de requêtes clients,
d’erreurs,
…
Configuration du client
NetworkManager est un outil de gestion du réseau. Sur un serveur dont
le réseau est défini par cet outil, la configuration cliente de Bind est
décrite dans le fichier de l’interface. [root]#less
/etc/sysconfig/network-scripts/ifcfg-ethX
DOMAIN="etrs.lan"
DNS1=192.168.1
.200
DNS2=192.168.1
.201
NetworkManager modifiera lui-même le fichier /etc/resolv.conf à
chaque relance du service réseau.
Avant de lancer une recherche DNS, le logiciel client vérifiera si la requête
porte sur un FQDN ou non. Si le nom n’est pas pleinement qualifié, le
client suffixera la requête avec le premier suffixe DNS fourni.
Si la résolution est impossible, le client émettra une nouvelle requête avec le
suffixe suivant, ainsi
de suite jusqu’à l’obtention d’une réponse.
Par exemple, il est possible de fournir deux suffixes :
dr-
cpt.intradef.gouv.fr
intradef.gouv.fr
Lors d’une requête DNS portant sur, par exemple, portail-etrs, une
première requête portail- etrs.dr-cpt.intradef.gouv.fr sera faite. En
l’absence de réponse positive, une seconde requête sera effectuée portant
sur portail-etrs.intradef.gouv.fr. Pour éviter ce phénomène d’interrogation
multiple, il est préférable de fournir une adresse pleinement qualifiée.
Veiller à spécifier au moins deux
serveurs DNS pour assurer une
redondance en cas de panne
du serveur principal.
Sans outil de gestion du réseau, la configuration cliente de Bind est décrite
dans le fichier
/etc/resolv.conf.
[root]# less
/etc/resolv.conf search
"etrs.lan"
nameserver 192.168.1.200
nameserver 192.168.1.201
NetworkManager, si actif, écrasera
les valeurs
entrées manuellement dans ce
fichier.
L’utilitaire system-config-network-tui (nmtui sous CentOS 7) permet une
configuration graphique correcte du réseau par une interface ncurse.
La commande dig
La commande dig (Domain Information Groper) permet d’interroger des
serveurs DNS.
Dig doit être privilégié par rapport à
NSLookup
qui n’est plus maintenue.
Syntaxe de la commande dig
dig [name] [type] [options]
Exemple :
[root]# dig centos65.etrs.lan A
…
;; QUESTION SECTION:
; centos65.etrs.lan. IN A
;; ANSWER SECTION:
centos65.etrs.lan. 86400 IN A 192.168.253.131
;; AUTHORITY SECTION:
etrs.lan. 86400 IN NS centos65.etrs.lan.
…
[root]# dig –t MX
linux.fr [root]# dig
linux.fr MX +short Mise en
cache côté client
Le service NSCD est responsable de la mise en cache des requêtes
réseaux type LDAP ou DNS. Pour profiter de la mise en cache local, il
faudra veiller à ce que le service NSCD soit démarré.
[root]# service nscd
start [root]# chkconfig
nscd on
Nscd n’est pas installé par défaut sur les RHEL 6.
Mise à jour dynamique
Les clients peuvent s’enregistrer dynamiquement sur le serveur DNS, ce qui
est intéressant dans le cadre d’une attribution de l’adressage IP dynamique
avec DHCP.
Configuration du pare-feu serveur
Les règles iptables a configurer en tcp et udp sont les suivantes :
[root]# vi
/etc/sysconfig/iptables #
Autoriser DNS
iptables –t filter –A INPUT –p tcp –dport 53 –j ACCEPT
iptables –t filter –A INPUT –p udp –dport 53 –j ACCEPT
system-config-firewall-tui est l’outil
graphique
permettant de configurer le pare-
feu.
Les parts de marché perdues par Apache sont prises par son plus grand
challenger : le serveur nginx. Ce dernier, plus rapide pour délivrer les
pagesweb, et moins complets fonctionnellement parlant que le géant
Apache.
Le protocole HTTP
Le protocole HTTP (HyperText Transfer Protocol) est le protocole le
plusutilisé sur Internet depuis 1990.
Ce protocole permet un transfert de fichiers (essentiellement au format
HTML, mais aussi au format CSS, JS, AVI…) localisés grâce à une chaîne
decaractères appelée URL entre un navigateur (le client) et un serveur
Web (appelé d’ailleurs httpd sur les machines UNIX).
HTTP est un protocole “requête - réponse” opérant au dessus de TCP
(Transmission Control Protocol).
7. Le client ouvre une connexion TCP vers le serveur et envoie
unerequête.
8. Le serveur analyse la requête et répond en fonction de
sa configuration.
Le protocole HTTP est en lui même dit “STATELESS” : il ne conserve pas
d’information sur l’état du client d’une requête à l’autre. Ce sont les
langagesdynamiques comme le php, le python ou le java qui vont
permettre la conservation en mémoire des informations de session d’un
client (comme dans le cadre d’un site de e-commerce par exemple).
Le protocole HTTP est en version 1.1. La version 2 est en cours
dedéploiement.
Une réponse HTTP est un ensemble de lignes envoyées au navigateur par
leserveur. Elle comprend :
Une ligne de statut : c’est une ligne précisant la version du protocole
utilisé et l’état du traitement de la requête à l’aide d’un code et
d’un texte explicatif. La ligne comprend trois éléments devant être
séparéspar un espace :
o La version du protocole utilisé ;
o Le code de statut ;
o La signification du code .
Les champs d’en-tête de la réponse : il s’agit d’un ensemble de
lignesfacultatives permettant de donner des informations
supplémentairessur la réponse et/ou le serveur. Chacune de ces
lignes est composée d’un nom qualifiant le type d’en-tête, suivi de
deux points (:) et de la valeur de l’en-tête.
Le corps de la réponse : il contient le document
demandé.Voici un exemple de réponse HTTP :
Exemple de réponse HTTP
HTTP/1.1 200 OK
Date : Sat, 15 Jan 2016 14:37:12 GMT Server : Apache/2.17
Content-Type : text/HTML
Content-Length : 1245
Last-Modified : Fri, 14 Jan 2016 08:25:13 GMT
Le rôle du serveur web consiste à traduire une URL en ressource locale.
Consulter la page http://www.free.fr/, revient à envoyez une requête HTTP
à cette machine. Le service DNS joue donc un rôle essentiel.
Les URL
Une URL (Uniform Ressource Locator - littéralement “identifiant uniforme
de ressources”) est une chaîne de caractères ASCII utilisée pour désigner
lesressources sur Internet. Elle est informellement appelée adresse web.
Une URL est divisée en trois parties :
Composition d’une URL
<protocole>://<hôte>:<port>/<chemin>
Le nom du protocole : il s’agit du langage utilisé pour communiquer
sur le réseau. Le protocole le plus utilisé est le protocole HTTP
(HyperText TransferProtocol), le protocole permettant d’échanger
despages Web au format HTML. De nombreux autres protocoles
sont toutefois utilisables.
Identifiant et mot de passe : permet de spécifier les paramètres
d’accès à un serveur sécurisé. Cette option est déconseillée car le mot
de passe est visible dans l’URL (dans le cadre de la sécurité).
L’hôte : Il s’agit du nom de l’ordinateur hébergeant la ressource
demandée. Notez qu’il est possible d’utiliser l’adresse IP du serveur,
cequi rend par contre l’URL moins lisible.
Le numéro de port : il s’agit d’un numéro associé à un service
permettant au serveur de savoir quel type de ressource est demandé.
Le port associé par défaut au protocole est le port numéro 80. Ainsi,
lorsque le service Web du serveur est associé au numéro de port 80,
lenuméro de port est facultatif.
Le chemin d’accès à la ressource : Cette dernière partie permet au
serveur de connaître l’emplacement auquel la ressource est située,
c’est-à-dire de manière généralel’emplacement (répertoire) et le nom
du fichier demandé. Si non renseignée, indique la première page de
l’hôte. Sinon indique le chemin de la page à afficher.
Les ports
Une requête HTTP arrivera sur le port 80 (port par défaut pour http)
du serveur fonctionnant sur l’hôte. L’administrateur peut toutefois
choisirlibrement le port d’écoute du serveur.
Le protocole http se décline en une version sécurisée: le protocole https
(port 443). Ce protocole chiffré s’implémente à partir du module mod-ssl.
D’autres ports peuvent être utilisés, comme le port 8080 (serveurs
d’applications Java EE) ou le port 10 000 (Serveur webmin).
Installation du serveur
Apache est multiplateforme. Il peut être utilisé sur Linux, Windows,
Mac…L’administrateur devra choisir entre deux méthodes d’installation :
Installation par paquets : l’éditeur de la distribution fourni des
versions stables et soutenues (mais parfois anciennes) ;
Installation depuis les sources : le logiciel apache est compilé,
l’administrateur peut spécifier les options qui l’intéressent ce qui
permet l’optimisation du service. Apache fournissant une
architecture modulaire, la re-compilation du logiciel apache n’est
généralement pasnécessaire pour ajouter ou supprimer des
fonctionnalités complémentaires (ajout/suppression de modules).
Le choix de la méthode d’installation par paquets est fortement conseillé.
Des dépots complémentaires permettent d’installer des versions plus
récentes d’apache sur des versions de distributions anciennes mais, en
casde problème, RedHat n’apportera pas son soutien.
Exemples de modules et de leurs rôles respectifs :
mod_access : filtre l’accès des clients par leur nom d’hôte, adresse IP
ou autre caractéristique
mod_alias : permet la création d’alias ou répertoires virtuels
mod_auth : authentifie les clients
mod_cgi : exécute les scripts CGI
mod_info : fournit des informations sur l’état du serveur
mod_mime : associe les types de fichiers avec l’action correspondante
mod_proxy : propose un serveur proxy (serveur mandataire)
mod_rewrite : réécrit les URL
…
Installation par rpm
Interroger la base de données des “rpm”
[root]# rpm –qa "http*"
Installez à partir de paquets liés à la distribution
[root]# rpm –ivh httpd-xxx.rpm
Installer si nécessaire les dépendances demandées.
Installation par yum
Si vous avez à disposition un dépôt yum :
[root]# yum install httpd
Lancer Apache au démarrage du serveur :
[root]# chkconfig httpd on
Avant de se lancer dans une installation, il est important de savoir si une
version du serveur Apache est installée :
rpm –qa "http*"
Lors de l’installation, un groupe apache et un utilisateur apache sont créés.
[root]# grep apache /etc/group
apache:x:48
[root]# grep apache /etc/passwd
apache:x:48:48:Apache:/var/www:/sbin/nologin
<IfModule worker.c>
StartServers 4
MaxClients 300
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>
Le module Prefork, activé par défaut, s’appuie sur des processus. Il est donc
plus stable mais nécessite plus de mémoire pour fonctionner. Le
moduleWorker, quand à lui, s’appuie sur des threads, ce qui le rend
plus performant, mais des modules comme le Php ne sont pas
compatible.
Choisir un module plutôt qu’un autre est donc une tâche complexe,
tout autant que l’optimisation du module MPM retenu (nombre de
client, derequêtes, etc.).
Par défaut Apache est configuré pour un service moyennement sollicité
(256 clients max).
La configuration minimal d’un serveur apache ressemble à ceci :
Configuration d’apache minimal dans /etc/httpd/conf/httpd.conf
ServerRoot /etc/httpd
KeepAlive On
Listen 80
Listen 160.210.150.50:1981
LoadModule ...
Include conf.d/*.conf
User apache
Group apache
SELinux
Attention par défaut la sécurité via SELinux est active. Elle empêche la
lecture d’un site sur un autre répertoire que “/var/www/”.
Le répertoire contenant le site doit posséder le contexte de
sécuritéhttpd_sys_content_t.
Le contexte actuel se vérifie par la commande :
[root]# ls –Z /rep
Rajouter le contexte via la commande :
[root]# chcon -vR --type=httpd_sys_content_t /rep
Elle empêche également l’ouverture d’un port non standard. Il faut
ouvrir manuellement le port désiré à l’aide de la commande semanage
(non installée par défaut).
[root]# semanage port -a -t http_port_t -p tcp 1664
Directives User et Group
Définir un compte et un groupe de gestion d’Apache
Historiquement, apache était lancé par root, ce qui posait des problèmes
desécurité. Apache est toujours lancé par root mais change ensuite son
identité. Généralement User Apache et Group Apache.
Attention jamais ROOT !!!
Le serveur Apache (processus httpd) est lancé par le compte de super-
utilisateur root. Chaque requête d’un client déclenche la création d’un
processus “fils”. Pour limiter les risques, il faut lancer ces processus enfants
avec un compte moins privilégié.
Les directives User et Group servent à déclarer le compte et le
groupeutilisés pour la création des processus enfants.
User apache
Group apache
Ce compte et ce groupe doivent avoir été créés dans le système (par défaut
cela est fait à l’installation). Par mesure de précaution supplémentaire,
s’assurer que le compte n’est pas interactif (ne peut pas ouvrir de session).
<Location /server-info>
SetHandler server-info
Order allow,deny
Allow from 127.0.0.1
Allow from 172.16.96.105
</Location>
La page /server-status :
La page /server-info :
11.
12.
13.Le chemin smtpd_sasl_path est un chemin relatif au répertoire de la
file d'attente (queue) de Postfix.
14.
15.
16.Ensuite, générez ou obtenez un certificat numérique pour TLS. Voir
Certificats pour plus de détails. Cet exemple utilise également une
autorité de certification (CA). Pour plus d'informations sur la
génération d'un certificat, voir Autorité de certification.
17.
18.MUAs connecting to your mail server via TLS will need to recognize
the certificate used for TLS. This can either be done using a certificate
from a commercial CA or with a self-signed certificate that users
manually install/accept. For MTA to MTA TLS certficates are never
validated without advance agreement from the affected
organizations. For MTA to MTA TLS, unless local policy requires it,
there is no reason not to use a self-signed certificate. Refer to
Création d'un certificat auto-signé (Self-Signed
Certificate ou SSC) for more details.
19.
20.Une fois que vous avez un certificat, configurez Postfix pour fournir
l'encryptage à l'aide du protocole TLS des e-mails entrants et
sortants :
21. sudo postconf -e
'smtp_tls_security_level = may' sudo
postconf -e 'smtpd_tls_security_level =
may' sudo postconf -e
'smtp_tls_note_starttls_offer = yes' sudo
postconf -e 'smtpd_tls_key_file =
/etc/ssl/private/server.key'
sudo postconf -e 'smtpd_tls_cert_file =
/etc/ssl/certs/server.crt' sudo postconf -e
'smtpd_tls_loglevel = 1'
sudo postconf -e
'smtpd_tls_received_header = yes' sudo
postconf -e 'myhostname =
mail.example.com'
22.
23.Si vous utilisez votre propre autorité de certification, saisissez ce
qui suit pour signer le certificat :
24. sudo postconf -e 'smtpd_tls_CAfile =
/etc/ssl/certs/cacert.pem'
25.De nouveau, pour plus de détails sur les certificats, consultez Certificats.
Après avoir exécuté toutes les commandes, Postfix est configuré pour
SMTP-AUTH et un certificat autosigné a été créé pour le cryptage TLS.
Maintenant, le fichier /etc/postfix/main.cf devrait ressembler à ceci :
# See /usr/share/postfix/main.cf.dist for a
commented, more complete # version
myhostname =
server1.example.com
alias_maps =
hash:/etc/aliases
alias_database =
hash:/etc/aliases myorigin
= /etc/mailname
mydestination = server1.example.com, localhost.example.com,
localhost relayhost =
mynetworks = 127.0.0.0/8
mailbox_command = procmail -a
"$EXTENSION" mailbox_size_limit =
0
recipient_delimiter =
+ inet_interfaces =
all
smtpd_sasl_local_domai
n =
smtpd_sasl_auth_enable
= yes
smtpd_sasl_security_options =
noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions =
permit_sasl_authenticated,permit_mynetworks,reject
_unauth_destination smtpd_tls_auth_only = no
smtp_tls_security_level = may
smtpd_tls_security_level = may
smtp_tls_note_starttls_offer = yes
smtpd_tls_key_file =
/etc/ssl/private/smtpd.key
smtpd_tls_cert_file =
/etc/ssl/certs/smtpd.crt
smtpd_tls_CAfile =
/etc/ssl/certs/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout =
3600s tls_random_source =
dev:/dev/urandom
# Postfix smtp-auth
unix_listener
/var/spool/postfix/private/auth { mode
= 0660
user =
postfix
group =
postfix
}
En ceci :
auth_mechanisms = plain login
Une fois que vous avez configuré Dovecot, faites le redémarrer avec :
sudo systemctl restart dovecot.service
Mail-Stack Delivery
Une autre option de configuration de Postfix pour SMTP-AUTH est
l'utilisation du paquet mail- stack-delivery (nommé auparavant dovecot-
postfix). Ce paquet installera Dovecot et configurera Postfix afin d'utiliser
Dovecot pour l'authentification SASL et en tant qu'agent distributeur de
courriel. Le paquet configure également Dovecot pour les protocoles
IMAP, IMAPS, POP3, et POP3S.
You may or may not want to run IMAP, IMAPS, POP3, or POP3S on your
mail server. For example, if you are configuring your server to be a mail
gateway, spam/virus filter, etc. If this is the case it may be easier to use
the above commands to configure Postfix for SMTP-AUTH.
Pour installer le paquet, saisissez dans un terminal :
sudo apt install mail-stack-delivery
Votre serveur de courriel devrait être opérationnel, mais vous voudrez sans
doute configurer certaines options. Par exemple, le paquet utilise le
certificat et la clé du paquet ssl-cert, mais dans un environnement de
production, vous devriez utiliser un certificat et une clef créée pour l'hôte.
Consultez Certificats pour de plus amples informations.
Changez les options suivantes dans /etc/postfix/main.cf une fois que vous
avez personnalisé un certificat et une clé pour l'hôte :
smtpd_tls_cert_file = /etc/ssl/certs/ssl-
mail.pem smtpd_tls_key_file =
/etc/ssl/private/ssl-mail.key
Tests
La configuration de SMTP-AUTH est terminée. Il est maintenant temps de
tester la configuration. Pour vérifier que SMTP-AUTH et TLS fonctionnent
correctement, exécutez la commande suivante : telnet
mail.example.com 25
Si vous voyez, entre autres, les lignes suivantes, alors tout fonctionne
parfaitement. Tapez quit pour sortir.
250-STARTTLS
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN
250 8BITMIME
Dépannage
Cette section introduit les méthodes de base pour déterminer les causes d'un
éventuel problème. Échappement du chroot
Le paquet postfix d'Ubuntu s'installera par défaut dans un environnement
chroot par mesure de
sécurité. Ceci peut accroître la complexité de la résolution de problèmes.
Pour désactiver l'opération chroot essayez de trouver la ligne
suivante dans le fichier de configuration /etc/postfix/master.cf :
smtp inet n ---- smtpd
et la modifier ainsi :
smtp inet n - n - - smtpd
30.Configurez Auto-Expunge et
Folder Settings. Détails du serveur IMAP
Zoho Mail
Vous pouvez configurer votre compte Zoho Mail sur n'importe quel client
IMAP standard avec les
informations de configuration indiquées ci-dessous.
Paramètres du serveur entrant (utilisateurs personnels avec une
adresse e-mail, nom- utilisateur@zoho.com) :
Nom du serveur entrant :
imap.zoho.com Port : 993
SSL requis : Oui
Nom d'utilisateur : nom-utilisateur@zoho.com
Paramètres du serveur entrant (utilisateurs de l'organisation avec
une adresse e-mail personnalisée basée sur
domaine,vous@votredomaine.com) :
Nom du serveur entrant :
imappro.zoho.com Port : 993
SSL requis : Oui
Nom d'utilisateur :
vous@votredomaine.com
Paramètres du serveur sortant :
Nom du serveur sortant :
smtp.zoho.com Port : 465 avec
SSL ou
Port : 587 avec TLS
Authentification requise :
Oui
Nom d'utilisateur : saisissez votre nom d'utilisateur ou votre adresse Zoho
Mail complète. Si votre domaine est hébergé par Zoho, votre adresse e-mail
se présente au format vous@votredomaine.com.
Adresse e-mail : saisissez votre adresse Zoho Mail. Si votre domaine est
hébergé par Zoho, votreadresse e-mail se présente au format
vous@votredomaine.com.
Mot de passe : saisissez le mot de passe de votre compte Zoho. (Vous aurez
peut-être besoin d'un mot de passe spécifique à l'application si
l'authentification à deux facteurs est activée.) Paramètres d'affichage des
dossiers pour IMAP
Lorsque la boîte aux lettres est très volumineuse et contient de nombreux
dossiers, la
visualisation et la synchronisation des e-mails dans les clients IMAP
peuvent être difficiles. Pour optimiser les performances de votre client
IMAP, vous pouvez choisir les dossiers que vous souhaitez synchroniser
avec IMAP comme suit :
31.Connectez-vous à Zoho Mail.
32.Accédez à Settings .
33.Accédez à Mail Accounts >> IMAP Access.
34.Sous la section IMAP Access, cliquez sur Launch folder settings now.
35.Sélectionnez les dossiers que vous souhaitez afficher dans le client
IMAP.
Remarque :
36.Seuls les dossiers sélectionnés ici seront disponibles dans le client IMAP
que vous utilisez.
37.Vous pouvez afficher les dossiers qui ont été partagés avec vous
depuis les clients IMAP sur le bureau ou un téléphone mobile.
38.Le client Thunderbird prend en charge les options de partage de
dossiers Read et Write dans Zoho Mail. En savoir plus.
Options IMAP Expunge
Lorsque vous supprimez un e-mail ou que vous le déplacez vers un autre
dossier sur votre client IMAP, le message est supprimé ou déplacé vers un
autre dossier en fonction de vos paramètres IMAP. Pour effectuer ces
changements immédiatement dans votre compte IMAP, vous pouvez
activer l'option « Expunge Immediately » comme suit.
39.Connectez-vous à Zoho Mail.
40.Accédez à Settings .
41.Accédez à Mail Accounts >> Configure IMAP.
42.Dans la section IMAP, sélectionnez votre option Expunge favorite pour
IMAP.
o Cochez Auto-Expunge Mails pour supprimer les messages du
serveur Zoho Mail lorsque vous supprimez / déplacez des e-
mails dans le client IMAP.
o Décochez Auto-Expunge Mails pour conserver les
messages. Ils devront être effacés manuellement du client
IMAP.
Résolution des problèmes de
configuration IMAP Connexion
impossible depuis les clients IMAP
Si vous avez activé l'authentification à deux facteurs pour votre compte, vous
devez générer et
utiliser le mot de passe spécifique à l'application dans le client IMAP que vous
utilisez.
Si vous utilisez une connexion fédérée (connexion à l'aide de Google Apps,
Gmail, Facebook, etc.), il est possible que vous n'ayez pas de mot de passe
exclusif dans Zoho pour votre compte de messagerie. Cliquez ici pour
obtenir des instructions détaillées sur la création d'un mot de passe pour
votre compte. Vous ne pouvez pas vous connecter en utilisant votre compte
externe pour POP / IMAP / Active Sync.
Accès IMAP non activé
Assurez-vous que l'accès IMAP est activé pour votre compte avant de
configurer IMAP dans les autres clients de messagerie. Reportez-vous à
cette section pour obtenir des instructions.
Si vous êtes un utilisateur de l'organisation, demandez à votre
administrateur si l'accès IMAP est autorisé pour votre compte,
conformément aux politiques de messagerie.
Remarque :
Pour les utilisateurs nouvellement inscrits (forfait Gratuit), la fonction
d'accès POP n'est pas disponible. Cliquez ici pour plus d'informations.
LES DIAGRAMES
Partie 5: Interface graphiques
Figure 1: Se connecter User
Figure 2: Inscription Utilisateur