TP SMTP et POP - GIPSA-lab

Transcription

TP SMTP et POP - GIPSA-lab
Université Pierre Mendès France
U.F.R. Sciences de l’Homme et de la Société
Master IC²A
TP SMTP et POP
TP SMTP et POP – Master IC2A – 2015/2016 – Christian Bulfone / Jean-Michel Adam
1/11
Câblage et configuration du réseau
1) Lancez Marionnet et créez le réseau tel que représenté sur le schéma ci-dessous.
Vous utiliserez un commutateur S1 configuré avec 6 ports, ainsi qu’une passerelle G1 pour
l’accès Internet. Vous utiliserez le réseau 192.168.1.0/24, avec pour chaque hôte et la passerelle
les adresses IP suivantes :
• m1 : 192.168.1.10
• m2 : 192.168.1.11
• ns1 : 192.168.1.100
• ns2 : 192.168.1.101
• mail : 192.168.1.110
• G1 : 192.168.1.2
2) Démarrez et configurez l’ensemble des hôtes. Testez le bon fonctionnement de votre réseau
avec la commande ping
3) Editez le fichier /etc/resolv.conf de chacun des hôtes et remplacez son contenu par :
domain imss.org
search imss.org
nameserver 192.168.1.100
nameserver 192.168.1.101
TP SMTP et POP – Master IC2A – 2015/2016 – Christian Bulfone / Jean-Michel Adam
2/11
Configuration du service DNS
Configuration du serveur de noms primaire ns1
1) Le domaine de votre réseau géré par ns1 sera imss.org. Editez le fichier de configuration du
service DNS (bind) /etc/bind/named.conf et ajoutez la gestion des deux zones :
• imss.org pour la résolution directe
• 1.168.192.in-addr.arpa pour résolution inverse
zone "imss.org" {
type master;
file "/etc/bind/db.imss.org";
};
zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.imss.org.rev";
};
2) Créez le fichier /etc/bind/db.imss.org gérant la zone directe. Utilisez comme modèle le
fichier /etc/bind/db.empty (cp /etc/bind/db.empty /etc/bind/db.imss.org).
Ajoutez les enregistrements de type NS pour les serveurs de noms du domaine (ns1 et ns2), de
type MX1 pour le serveur de messagerie du domaine (mail), de type A pour tous les hôtes, et de
type CNAME pour les deux alias (smtp et pop).
; BIND reverse data file for empty rfc1918 zone
;
; DO NOT EDIT THIS FILE - it is used for multiple zones.
; Instead, copy it, edit named.conf, and use that copy.
;
$TTL
86400
@
IN
SOA
ns1. root.ns1. (
2016030901
; Serial
604800
; Refresh
86400
; Retry
2419200
; Expire
86400 )
; Negative Cache TTL
ns1
ns2
mail
smtp
pop
m1
m2
1
IN
IN
IN
NS
NS
MX
ns1.imss.org.
ns2.imss.org.
10
mail.imss.org.
IN
IN
IN
IN
IN
IN
IN
A
A
A
CNAME
CNAME
A
A
192.168.1.100
192.168.1.101
192.168.1.110
mail
mail
192.168.1.10
192.168.1.11
La valeur numérique – ici 10 – correspond à la priorité. Dans le cas d’un domaine avec plusieurs serveurs MX, les
serveurs relais de messagerie contactent le serveur avec la priorité la plus faible, avant de passer au suivant dans l’ordre
des priorités en cas d’échec
TP SMTP et POP – Master IC2A – 2015/2016 – Christian Bulfone / Jean-Michel Adam
3/11
Le numéro de série (champ Serial) est de la forme AAAAMMJJNN. A chaque modification, le
numéro de série doit être mis à jour (numéro de révision NN incrémenté dans la journée).
3) Créez le fichier /etc/bind/db.imss.org.rev gérant la zone reverse. Utilisez également
comme modèle le fichier /etc/bind/db.empty
; BIND reverse data file for empty rfc1918 zone
;
; DO NOT EDIT THIS FILE - it is used for multiple zones.
; Instead, copy it, edit named.conf, and use that copy.
;
$TTL
86400
@
IN
SOA
ns1. root.ns1. (
2016030901
; Serial
604800
; Refresh
86400
; Retry
2419200
; Expire
86400 )
; Negative Cache TTL
100
101
110
10
11
IN
IN
NS
NS
ns1.imss.org.
ns2.imss.org.
IN
IN
IN
IN
IN
PTR
PTR
PTR
PTR
PTR
ns1.imss.org.
ns1.imss.org.
mail.imss.org.
m1.imss.org.
m2.imss.org.
4) Lancez le service DNS avec la commande
/etc/init.d/bind9 start
Configuration du serveur de noms secondaire ns2
1) Sur ns1 autorisez le transfert de zones vers ns2 en éditant le fichier /etc/bind/named.conf
et en ajoutant la ligne allow-transfer { 192.168.1.101;}; pour la zone directe et la
zone inverse.
zone "imss.org" {
type master;
file "/etc/bind/db.imss.org";
allow-transfer { 192.168.1.101;};
};
zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.imss.org.rev";
allow-transfer { 192.168.1.101;};
};
TP SMTP et POP – Master IC2A – 2015/2016 – Christian Bulfone / Jean-Michel Adam
4/11
2) Sur ns2, changez les permissions du répertoire de bind avec la commande chmod
ns2:~# chmod g+w /etc/bind
3) Sur ns2, éditez le fichier /etc/bind/named.conf
zone "imss.org" {
type slave;
file "/etc/bind/db.imss.org";
masters { 192.168.1.100; };
};
zone "1.168.192.in-addr.arpa" {
type slave;
file "/etc/bind/db.imss.org.rev";
masters { 192.168.1.100; };
};
4) Démarrez le service DNS par la commande /etc/init.d/bind9 start
Le transfert de zone devrait s’effectuer, les fichiers .db de ns1 devraient se retrouver créés sur
ns2.
5) Modifiez le numéro de série dans les fichiers .db de ns1 et relancez le service
ns1:~# /etc/init.d/bind9 restart
Vérifiez que le numéro de série a bien changé et correspond à celui de ns1 dans les fichiers .db
de ns2
6) Depuis m1, testez le bon fonctionnement de la résolution de noms avec les commandes
nslookup et dig sur ns1 et ns2
m1:~# nslookup smtp.imss.org
Server:
192.168.1.100
Address:
192.168.1.100#53
smtp.imss.org
canonical name = mail.imss.org.
Name:
mail.imss.org
Address: 192.168.1.110
m1:~# dig @ns1.imss.org pop.imss.org
; <<>> DiG 9.4.2 <<>> @ns1.imss.org pop.imss.org
; (1 server found)
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11623
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 2
;; QUESTION SECTION:
;pop.imss.org.
IN
A
;; ANSWER SECTION:
pop.imss.org.
mail.imss.org.
86400
86400
IN
IN
CNAME
A
mail.imss.org.
192.168.1.110
;; AUTHORITY SECTION:
imss.org.
imss.org.
86400
86400
IN
IN
NS
NS
ns2.imss.org.
ns1.imss.org.
;; ADDITIONAL SECTION:
ns1.imss.org.
ns2.imss.org.
86400
86400
IN
IN
A
A
192.168.1.100
192.168.1.101
;;
;;
;;
;;
Query time: 9 msec
SERVER: 192.168.1.100#53(192.168.1.100)
WHEN: Wed Mar 09 00:05:57 2016
MSG SIZE rcvd: 133
TP SMTP et POP – Master IC2A – 2015/2016 – Christian Bulfone / Jean-Michel Adam
5/11
m1:~# dig -t MX ims.org
; <<>> DiG 9.4.2 <<>> -t MX imss.org
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41903
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3
;; QUESTION SECTION:
;imss.org.
IN
MX
;; ANSWER SECTION:
imss.org.
86400
IN
MX
10 mail.imss.org.
;; AUTHORITY SECTION:
imss.org.
imss.org.
86400
86400
IN
IN
NS
NS
ns1.imss.org.
ns2.imss.org.
;; ADDITIONAL SECTION:
mail.imss.org.
ns1.imss.org.
ns2.imss.org.
86400
86400
86400
IN
IN
IN
A
A
A
192.168.1.110
192.168.1.100
192.168.1.101
;;
;;
;;
;;
Query time: 6 msec
SERVER: 192.168.1.100#53(192.168.1.100)
WHEN: Wed Mar 09 00:01:59 2016
MSG SIZE rcvd: 131
TP SMTP et POP – Master IC2A – 2015/2016 – Christian Bulfone / Jean-Michel Adam
6/11
Configuration du service SMTP
1) Sur mail, lancez la configuration du service de messagerie Postfix
mail:~# dpkg-reconfigure postfix
Un assistant s’affiche dans la fenêtre. Répondez aux questions avec les informations suivantes :
Type de configuration : Internet Site
System mail name : imss.org
Root and postmaster mail recipient: vide
Other destinations to accept mail for: imss.org, mail, localhost.localdomain, localhost
Force synchronous updates on mail queue: No
Local networks: 192.168.1.0/24
Mailbox size limit (bytes): 0
Local address extension character: +
Internet protocols to use: ipv4
2) Créez deux comptes utilisateurs (useradd login)
useradd bulfonec
passwd bulfonec (secret)
useradd adamjm
passwd adamjm (secret)
3) Testez le bon fonctionnement du service SMTP en reproduisant le dialogue du protocole depuis
m1 avec la commande telnet
m1:~# telnet smtp.imss.org 25
Trying 192.168.1.110...
Connected to mail.imss.org.
Escape character is '^]'.
220 mail ESMTP Postfix (Debian/GNU)
MAIL FROM: <[email protected]>
250 2.1.0 Ok
RCPT TO: <[email protected]>
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
Hello world
.
250 2.0.0 Ok: queued as 749E82424C
QUIT
221 2.0.0 Bye
Connection closed by foreign host.
TP SMTP et POP – Master IC2A – 2015/2016 – Christian Bulfone / Jean-Michel Adam
7/11
4) Vérifiez la connexion et la délivrance du message dans les logs de mail :
mail:~# tail -50 /var/log/mail.log
Mar 20 00:32:48 mail postfix/smtpd[2634]: connect from m1.imss.org[192.168.1.10]
Mar 20 00:32:59 mail postfix/smtpd[2634]: 749E82424C:
client=m1.imss.org[192.168.1.10]
Mar 20 00:33:13 mail postfix/cleanup[2637]: 749E82424C: messageid=<20130319233259.749E82424C@mail>
Mar 20 00:33:13 mail postfix/qmgr[2619]: 749E82424C: from=<[email protected]>,
size=325, nrcpt=1 (queue active)
Mar 20 00:33:13 mail postfix/local[2642]: 749E82424C: to=<[email protected]>,
relay=local, delay=14, delays=14/0.03/0/0.07, dsn=2.0.0, status=sent (delivered to
mailbox)
Mar 20 00:33:13 mail postfix/qmgr[2619]: 749E82424C: removed
Mar 20 00:33:17 mail postfix/smtpd[2634]: disconnect from
m1.imss.org[192.168.1.10]
5) Mappez les adresses de la forme prenom.nom
/etc/postfix/virtual contenant :
christian.bulfone
jean-michel.adam
login. Créez un fichier
bulfonec
adamjm
6) Compilez le fichier avec la commande postmap virtual ; un fichier virtual.db devrait
apparaître dans /etc/postfix. Editez /etc/postfix/main.cf, ajoutez la ligne
virtual_alias_maps = hash:/etc/postfix/virtual
puis rechargez la configuration de postfix
mail:/etc/postfix# /etc/init.d/postfix reload
Reloading Postfix configuration...done.
7) Refaites le même test depuis m1 en utilisant les adresses de la forme [email protected] au
lieu de [email protected]
m1:~# telnet smtp.imss.org 25
Trying 192.168.1.110...
Connected to mail.imss.org.
Escape character is '^]'.
220 mail ESMTP Postfix (Debian/GNU)
MAIL FROM: <[email protected]>
250 2.1.0 Ok
RCPT TO:<[email protected]>
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
Hello world
.
250 2.0.0 Ok: queued as 1D4FB2424C
QUIT
221 2.0.0 Bye
Connection closed by foreign host.
8) Vérifiez la connexion et la délivrance du message dans les logs de mail :
mail:/etc/postfix# tail -50 /var/log/mail.log
Mar 20 00:40:08 mail postfix/smtpd[2677]: connect from m1.imss.org[192.168.1.10]
Mar 20 00:40:33 mail postfix/smtpd[2677]: 1D4FB2424C:
client=m1.imss.org[192.168.1.10]
Mar 20 00:40:44 mail postfix/cleanup[2684]: 1D4FB2424C: messageid=<20130319234033.1D4FB2424C@mail>
Mar 20 00:40:44 mail postfix/qmgr[2693]: 1D4FB2424C: from=<[email protected]>, size=344, nrcpt=1 (queue active)
Mar 20 00:40:44 mail postfix/local[2694]: 1D4FB2424C: to=<[email protected]>,
orig_to=<[email protected]>, relay=local, delay=14,
delays=14/0.04/0/0.04, dsn=2.0.0, status=sent (delivered to mailbox)
Mar 20 00:40:44 mail postfix/qmgr[2693]: 1D4FB2424C: removed
Mar 20 00:40:46 mail postfix/smtpd[2677]: disconnect from
m1.imss.org[192.168.1.10]
TP SMTP et POP – Master IC2A – 2015/2016 – Christian Bulfone / Jean-Michel Adam
8/11
Configuration du service POP
1) Ajoutez à la fin du fichier /etc/resolv.conf de mail une ligne contenant l’adresse du
serveur de noms de l’UPMF
nameserver 195.221.39.239
2) Récupérez les sources du programme Qpopper (service POP) depuis Internet dans le répertoire
/tmp
mail:~# cd /tmp
mail:/tmp# wget www.gipsa-lab.fr/~christian.bulfone/IC2A-DCISS/qpopper4.1.0.tar.gz
--00:48:03-- http://www.gipsa-lab.fr/~christian.bulfone/IC2ADCISS/qpopper4.1.0.tar.gz
=> `qpopper4.1.0.tar.gz'
Resolving www.gipsa-lab.fr... 147.171.64.197
Connecting to www.gipsa-lab.fr|147.171.64.197|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1,239,530 (1.2M) [application/x-gzip]
100%[==============================================================================
========================================>] 1,239,530
575.83K/s
00:48:19 (574.67 KB/s) - `qpopper4.1.0.tar.gz' saved [1239530/1239530]
3) Extraire l'archive
mail:/tmp#
tar zxvf qpopper4.1.0.tar.gz
4) Compilez les sources et installez l’exécutable :
mail:/tmp# cd qpopper4.1.0
mail:/tmp/qpopper4.1.0# ./configure --prefix=/usr --enable-standalone && make
mail:/tmp/qpopper4.1.0# make install
5) Créez le fichier de configuration de Qpopper /etc/qpopper.conf
set debug = false
set spool-dir = /var/spool/mail/
set temp-dir = /var/spool/mail/
set downcase-user = true
set trim-domain = true
set statistics = true
6) Démarrez le service POP :
mail:/etc#
/usr/sbin/popper
Vérifier que le service tourne correctement en consultant les journaux :
mail:/etc#
tail -f /var/log/mail.log
[...]
Mar 20 00:56:04 mail popper[8840]: popper: Server: listening on [::]:110
Mar 20 00:56:04 mail popper[8840]: popper: Server: listening on 0.0.0.0:110
TP SMTP et POP – Master IC2A – 2015/2016 – Christian Bulfone / Jean-Michel Adam
9/11
Test du fonctionnement du service de
messagerie
Installation du client de messagerie
2) Ajoutez à la fin du fichier /etc/resolv.conf de m1 une ligne contenant l’adresse du serveur
de noms de l’UPMF
nameserver 195.221.39.239
3) Editez le fichier /etc/apt/sources.list de m1 en commentant toutes les lignes (en les
préfixant du caractère « # ») et en ajoutant à la fin la ligne :
deb http://archive.debian.org/debian/ lenny contrib main non-free
4) Exécutez la commande aptitude update pour recharger la base des paquetages du serveur
de dépôt
m1:/etc/apt# aptitude update
Writing extended state information... Done
Get:1 http://archive.debian.org lenny Release.gpg [1034B]
Ign http://archive.debian.org lenny/contrib Translation-en_US
Ign http://archive.debian.org lenny/main Translation-en_US
Ign http://archive.debian.org lenny/non-free Translation-en_US
Get:2 http://archive.debian.org lenny Release [99.6kB]
Ign http://archive.debian.org lenny Release
Get:3 http://archive.debian.org lenny/contrib Packages [76.2kB]
Get:4 http://archive.debian.org lenny/main Packages [5191kB]
Get:5 http://archive.debian.org lenny/non-free Packages [100kB]
Get:6 http://archive.debian.org lenny/non-free Packages [100kB]
Fetched 5446kB in 2min14s (40.4kB/s)
Reading package lists... Done
W: GPG error: http://archive.debian.org lenny Release: The following
signatures couldn't be verified because the public key is not
available: NO_PUBKEY AED4B06F473041FA NO_PUBKEY 4D270D06F42584E6
W: You may want to run apt-get update to correct these problems
There are now 543 updates [+543], 22307 new [+22255].
5) Installez le logiciel icedove (thunderbird) avec la commande
aptitude install icedove. Répondez « y » ou « yes » à toutes les questions posées.
Attention, l’installation prend quelques minutes.
m1:/etc/apt# aptitude install icedove
Reading package lists... Done
[...]
The following NEW packages will be installed:
icedove libhunspell-1.2-0{a} libpixman-1-0{a} libxcb-render-util0{a}
libxcb-render0{a} libxcb1{a}
[...]
Upgrade the following packages:
libglib2.0-dev [2.14.6-1 (now) -> 2.16.6-3 (oldstable)]
[...]
Accept this solution? [Y/n/q/?] y
[...]
Need to get 17.7MB of archives. After unpacking 37.1MB will be freed.
Do you want to continue? [Y/n/?] y
[...]
Untrusted packages could compromise your system's security.
You should only proceed with the installation if you are certain that
TP SMTP et POP – Master IC2A – 2015/2016 – Christian Bulfone / Jean-Michel Adam
10/11
this is what you want to do.
[...]
Do you want to ignore this warning and proceed anyway?
To continue, enter "Yes"; to abort, enter "No": Yes
[...]
6) Répétez la même opération sur m2.
Relève et envoi de courriels
1) Sur m1 lancer icedove
2) Créez un compte correspondant à un des deux utilisateurs créés sur le serveur de messagerie en
suivant l’assistant. Indiquez les informations suivantes :
Your Name : Prénom Nom (Christian Bulfone)
Email Address : [email protected] ([email protected])
Type of incoming server: POP
Incoming server : pop.imss.org
Outgoing server : smtp.imss.org
Incoming User Name : login (bulfonec)
Outgoing User Name : login (bulfonec)
Account Name : [email protected] ([email protected])
3) Vérifiez que la relève du courrier fonctionne correctement et que vous avez récupéré les deux
messages de tests précédents. Testez l’envoi des messages en écrivant un message à l’autre
adresse ([email protected])
TP SMTP et POP – Master IC2A – 2015/2016 – Christian Bulfone / Jean-Michel Adam
11/11

Documents pareils