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