M2-ESECURE Rezo TP3: LDAP - Mail



Documents pareils
M2-ESECURE Rezo TP3: LDAP - Mail

CASE-LINUX MAIL. Introduction. CHARLES ARNAUD Linux MAIL

Mise en place d un Webmail

Installation d un Serveur de Messagerie

Installation du DNS (Bind9)

INSTALLATION ET CONFIGURATION DE OPENLDAP

Installation GLPI-OCSNG-SSL Linux Debian Sarge

Outils Logiciels Libres

Mise en place d un serveur de messagerie

Migration de sendmail vers postfix dans le laboratoire Paul Painlevé à Lille. Mars

DNS et Mail. LDN 15 octobre DNS et Mail. Benjamin Bayart, Fédération FDN. DNS - fichier de zone. DNS - configuration

Serveur de messagerie sous Debian 5.0

Serveur Mail Postfix - Dovecot - LDAP - MDS Debian GNU/Linux

Déploiement d'un serveur ENT

LDAP et carnet d'adresses mail

Documentation technique Nagios

Serveur de partage de documents. Étude et proposition d'une solution afin de mettre en place un serveur de partage de documents.

Installer un serveur de messagerie sous Linux

RAPPORT DE STAGE OUVRARD VALENTIN. «Assistance et Conseils en Informatique». LYCEE DU GRAND NOUMEA DU 04/11 AU 29/

OpenLDAP, un outil d administration Réseau. Une implémentation d OpenLDAP

BONY Simon IR1. Services Réseaux TP3. BONY Simon

Messagerie. Dominique MARANT CRI Lille 1. Octobre 2006

Serveur Linux : FTP. Mise en place d un service FTP sous Linux. Bouron Dimitri 20/04/2014

1 Configuration des Fichiers Hosts, Hostname, Resolv.conf

Installation d OwnCloud 8.0 sous Debian Avec connexion des utilisateurs active directory et mise en place de HTTPS

Description de la maquette fonctionnelle. Nombre de pages :

SOMMAIRE ÉTAPES OBLIGATOIRES. Récupérer le connecteur... 3

sommaire ÉTAPES OBLIGATOIRES Récupérer le connecteur... 3

PROCÉDURE D AIDE AU PARAMÉTRAGE

Utiliser Améliorer Prêcher. Introduction à LDAP

Installation de la plate-forme Liberacces 2.0 «Intégrale» avec LiberInstall

Couche application. La couche application est la plus élevée du modèle de référence.

SUJET DES FINALES NATIONALES Sujet jour 1 version 1

Imprimantes et partage réseau sous Samba avec authentification Active Directory

Configuration avancée de Postfix

Compte rendu d'activité PTI n 2

Phase 1 : Introduction 1 jour : 31/10/13

Architecture PKI en Java

Installation et utilisation d'un certificat

Installation. du serveur SCRIBE virtuel d'amonecole

TP Protocoles SMTP et POP3 avec Pratiquer l algorithmique

Annuaire LDAP, SSO-CAS, ESUP Portail...

IUP GMI Avignon. Projet - IUPBox II. Tuteur : Rachid Elazouzi

L auto-hébergement. Sébastien Dufromentel, Clément Février ALDIL, Conférence jeudi du libre. 7 février 2013

CASE-LINUX MAIL - ROUNDCUBE

Le courriel sous linux avec Postfix. Association LOLITA

Configuration des logiciels de messagerie

Compte rendu serveur Postfix

Tuto 2 : Configuration Virtual box, Configuration et installation du serveur XiBO

Configuration d'un annuaire LDAP

IUT Charlemagne, NANCY. Serveur Mail Sécurisé. CROUVEZIER Thibaut, FOLTZ Guillaume, HENRIOT François, VOISINET Florian

Installation d un serveur de messagerie en local. Télécommunications & réseaux. Nom-prénom: Fiche contrat

L3 informatique TP n o 2 : Les applications réseau

FTP & SMTP. Deux applications fondamentales pour le réseau Internet.

L installation du module Webmail nécessite également quelques prérequis, à savoir :

L installation a quelque peu changée depuis les derniers tutos, voici une actualisation.

Dossier d analyse et de comparaison 2012

SSL. Secure Socket Layer. R. Kobylanski janvier version 1.1 FC INPG. Protocole SSL Application avec stunnel

IceWarp serveur sur Linux : Guide d'installation

PARAMETRER LA MESSAGERIE SOUS THUNDERBIRD

Installation et configuration de Vulture Lundi 2 février 2009

Installation et configuration d OCS/GLPI sur un Serveur Debian

S E C U R I N E T S C l u b d e l a s é c u r i t é i n f o r m a t i q u e I N S A T. Tutoriel Postfix

Devoir Surveillé de Sécurité des Réseaux

SEN-TR Asterisk - page 1 /18

MANUEL D INSTALLATION D UN PROXY

Comment utiliser mon compte alumni?

07/03/2014 SECURISATION DMZ

Protocoles Applicatifs

Zimbra. S I A T. T é l : ( ) F a x : ( )

Ubuntu Linux Création, configuration et gestion d'un réseau local d'entreprise (3ième édition)

TP LINUX : MISE EN PLACE DU SERVEUR DE MESSAGERIE QMAIL

Rapport de stage. Lycée Bahuet. Brive-la-Gaillarde. BTS Services informatiques aux organisations

USERGATE MAIL SERVER. Le serveur de messagerie pour les petites et moyennes entreprises :

NOTE: Pour une meilleure sécurisation, nous vous recommandons de faire l installation des outils web à l intérieur d un serveur virtuel.

Présentation, mise en place, et administration d'ocs Inventory et de GLPI

LDAP : pour quels besoins?

Amiens Métier 39 : Gestion des réseaux informatiques. Jour 2, première partie. Durée : 3 heures

Procédure d'installation

INSTALLATION NG V2.1 D OCS INVENTORY. Procédure d utilisation. Auteur : GALLEGO Cédric 23/10/2014 N version : v1

Accès à la messagerie électronique HES

Guide d installation et de configuration du serveur de messagerie MDaemon

Guide de configuration. Logiciel de courriel

Synchronisation d'annuaire Active Directory et de base LDAP

Pratique et administration des systèmes

Installation d'un serveur FTP géré par une base de données MySQL

Créer son propre serveur Mail.

Guide de démarrage rapide

Ex Nihilo Denis Ensminger

Le spam introduction. Sommaire

Documentation FOG. 3. Choisir le nom de la machine, le nom d utilisateur et le mot de passe correspondant (par exemple : fog, password)

0.1 Mail & News : Thunderbird

Installation UpdatEngine serveur (CentOs apache2 / MySQL)

Installer un serveur de messagerie avec Postfix

Hébergement WeboCube. Un système performant et sécurisé. Hébergement géré par une équipe de techniciens

InstallatIon et configuration d une Infrastructure réseau sans-fil. Avec. Interface de gestion utilisateurs

OFFICE OUTLOOK QUICK START GUIDE

Transcription:

M2-ESECURE Rezo TP3: LDAP - Mail Pierre Blondeau Pierre.Blondeau@unicaen.fr 03/11/2014 1 Introduction L objectif de ce TP est de vous faire construire une infrastructure de messagerie basée sur un annuaire LDAP. ATTENTION 1 : Au cours de ce tp lorsque vous rencontrerez le caractère "\" dans un fichier de configuration ou une ligne de commande, il s agit uniquement d un symbole signifiant que la "phrase" est trop longue pour être mise sur une seul ligne dans ce sujet. ATTENTION 2 : Après chaque modification des fichiers de configuration, il faudra redémarrer ou recharger la configuration des services modifiés. Par exemple pour dovecot /etc/init.d/dovecot restart. 2 Domaine Pour ce TP, nous allons inventer des noms de domaine. Nous allons utiliser le TLD 1 ".test". Nous allons utiliser votre nom, votre prénom ou un pseudo comme SLD 2. Ce qui donnerai par exemple "blondeau.test" pour le domaine. 3 Marionnet Pour ce TP, nous allons utiliser un réseau très simple avec une machine et un bridge. Configurez votre machines en DHCP. Modifier le fichier /etc/hosts en ajoutant toutes les correspondances IP <-> Nom de votre machine et celle de vos camarades ( exemple : 192.168.128.120 blondeau.test ). 4 Annuaire LDAP 4.1 Installation et Configuration Pour l installation, rien de plus simple : slapd pour le serveur ldap et ldap-utils pour les outils. apt-get install slapd ldap-utils Lors de l installation debian configure le serveur ldap avec les informations du système. Pour modifier cette configuration nous utiliserons les outils de debian : dpkg-reconfigure slapd Prennez bien soin de répondre au question suivante. L interface va vous proposer de configurer le serveur slapd : Voulez vous omettre la configuration d OpenLDAP -> non Nom de domaine -> SLD.test Nom d entité -> SLD.test 2 x Mot de passe ->... Format de base de données -> HDB Faut-il supprimer la base de données à la purge du paquets -> non Faut il déplacer l ancienne base de données -> oui Faut il autoriser le protocle LdapV2 -> non 1. Top Level Domain http://fr.wikipedia.org/wiki/domaine_de_premier_niveau 2. Second Level Domain http://fr.wikipedia.org/wiki/domaine_de_deuxiãĺme_niveau 1

Dans des conditions réelles d utilisation, pour plus de sécurité, il faudrait créer différents utilisateurs et ajouter des acl qui leurs permettent de lire ou d écrire dans certains champs en fonction de leurs besoins. Par exemple, si on utilise un cms, il est intéressant de lui permettre de modifier le mot de passe de connexion sans pour autant lui donner tous les privilèges du compte admin. 4.2 Création d utilisateurs Nous allons maintenant créer les utilisateurs de notre annuaire. Pour cela, nous allons utiliser un fichier au format ldif et la commande ldapadd, exemple : dn: ou=people,dc=sld,dc=test ou: People objectclass: organizationalunit dn: uid=pierre,ou=people,dc=sld,dc=test uid: pierre cn: Pierre BLONDEAU sn: BLONDEAU mail: pierre@sld.test userpassword: pierrepassword telephonenumber: 0000 roomnumber: 0000 initials: PB objectclass: inetorgperson dn: uid=nom,ou=people,dc=sld,dc=test uid: NOM cn: Prenom NOM sn: NOM mail: NOM@SLD.test userpassword: NOMpassword telephonenumber: 0000 roomnumber: 0000 initials: IT objectclass: inetorgperson Ajoutez votre propre compte et celui de quelque un de vos camarades en modifiant les "NOM"s et "Prenom"s. ldapadd -h localhost -x -D "cn=admin,dc=sld,dc=test" \ -w password -f utilisateur.ldiff Vérifiez le résultat avec ldapsearch. Vous pourriez également le faire avec des outils graphiques comme luma, JXplorer ou GQ. ldapsearch -h localhost -x -D "cn=admin,dc=sld,dc=test" \ -b "dc=sld,dc=test" -w password -LLL 4.3 Modification des utilisateurs Nous allons maintenant découvrir l outil ldapmodify. Voici la structure d un fichier : dn: uid=pierre,ou=people,dc=sld,dc=test changetype: modify replace: telephonenumber telephonenumber: 7343 - replace: roomnumber roomnumber: 406 - add: title title: ASR - delete: initials 2

Modifiez les numéros de téléphone par des numéros aléatoires et les numéros de salle par la salle de TP. Ajoutez vous le titre d "ETUDIANT" et supprimez les initiales de tous les utilisateurs. ldapmodify -h localhost -x -D "cn=admin,dc=sld,dc=test" \ -w password -f utilisateur.lmodif Vérifiez le résultat. 5 Installation du logiciel IMAP et POP3 Vous utiliserez le logiciel dovecot comme Mail Delivery Agent. Nous allons commencer par créer un nouvel utilisateur : groupadd -g 5000 vmail useradd -g vmail -u 5000 vmail -d /home/vmail -m Puis installer dovecot avec le support de IMAP et de POP : apt-get install dovecot-imapd dovecot-pop3d 5.1 Configuration de Dovecot Nous allons maintenant configurer dovecot. On commence par modifier le fichier /etc/dovecot/dovecot.conf. Attention aux "\". protocols = imap pop3 listen = * disable_plaintext_auth = no log_timestamp = "%Y-%m-%d %H:%M:%S " login_greeting = SLD Mail Serveur. mail_location = maildir:/home/vmail/%d/%n/maildir:\ INBOX=/home/vmail/%d/%n/Maildir:\ INDEX=/home/vmail/%d/%n/Maildir/tmp/index mail_uid = vmail mail_gid = vmail mail_privileged_group = vmail protocol imap { imap_client_workarounds = outlook-idle delay-newmail protocol pop3 { pop3_uidl_format = %08Xu%08Xv pop3_client_workarounds = outlook-no-nuls protocol lda { postmaster_address = NOM@SLD.test auth_socket_path = /var/run/dovecot/auth-master auth default { mechanisms = plain login passdb ldap { args = /etc/dovecot/dovecot-ldap.conf userdb ldap { args = /etc/dovecot/dovecot-ldap.conf user = root socket listen { master { path = /var/run/dovecot/auth-master mode = 0600 user = vmail 3

group = vmail client { path = /var/spool/postfix/private/auth mode = 0660 user = postfix group = postfix ATTENTION : Respectez les espaces devant les "{" ATTENTION : Vous spécifiez à dovecot qu il propose une socket client pour l authentification SMTP de postfix. Seulement, postfix n est pas encore installé. Pour que votre serveur dovecot démarre correctement, installez postfix comme indiqué en début de partie 5 et revenez pour la suite. 5.2 Couplage avec l annuaire LDAP On indique ensuite à dovecot comment il doit utiliser le serveur LDAP en éditant le fichier /etc/dovecot/dovecotldap.conf hosts = 127.0.0.1 auth_bind = yes ldap_version = 3 base = ou=people,dc=sld,dc=test user_filter = (&(objectclass=inetorgperson)(mail=%u)) pass_attrs = mail=user,userpassword=password pass_filter = (&(objectclass=inetorgperson)(mail=%u)) 5.3 Savez vous parler IMAP? Vous pouvez tester le comportement de votre logiciel IMAP en vous connectant directement dessus depuis une console du serveur ou depuis le poste client : telnet localhost 143 ou telnet 192.168.56.2 143... a00 LOGIN username password... a01 LIST * *... a02 LOGOUT 6 Installation du logiciel SMTP Vous avez des boîtes, vous pouvez vous connecter dessus. Maintenant, il faut pouvoir leur transférer des messages. C est le rôle du Mail Transport Agent. L un des plus utilisé est postfix : apt-get install postfix postfix-ldap L interface devrait vous proposer de configurer le serveur postfix : Configuration type du serveur de messagerie Nom de courrier -> Site internet -> SLD.test Seulement postfix est déjà installé, il va donc falloir reconfigurer le paquet : dpkg-reconfigure -p high postfix Si vous êtes en train de configurer dovecot, vous pouvez y retourner. 4

6.1 Configuration de Postfix Nous allons maintenant configurer Postfix. On commence avec le fichier /etc/postfix/main.cf smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU) biff = no append_dot_mydomain = no readme_directory = no smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key smtpd_use_tls=yes smtpd_tls_session_cache_database = btree:${data_directory/smtpd_scache smtp_tls_session_cache_database = btree:${data_directory/smtp_scache myhostname = SLD.test alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases myorigin = /etc/mailname mydestination = localhost relayhost = mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all virtual_mailbox_domains = SLD.test virtual_mailbox_maps = ldap:/etc/postfix/ldap-accounts.cf virtual_alias_maps = ldap:/etc/postfix/ldap-accounts.cf virtual_mailbox_base = /home/vmail dovecot_destination_recipient_limit = 1 virtual_transport = dovecot virtual_uid_maps = static:vmail virtual_gid_maps = static:vmail 6.2 Couplage avec le logiciel IMAP C est dovecot qui va faire le Mail Delivery Agent pour postfix. C est à dire déposer les messages dans la boîte des destinataires de messages locaux. Il faut donc ajouter à la fin du fichier /etc/postfix/master.cf la ligne : # Dovecot LDA dovecot unix - n n - - pipe flags=drhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -d $recipient Attention aux espaces devant flags. Ils indiquent à posfix que c est une ligne d argument pour dovecot. 6.3 Couplage avec l annuaire LDAP Pour que le serveur puisse tester que les adresses existent vraiment, il doit pouvoir faire des requêtes dans LDAP. Il faut créer le fichier /etc/postfix/ldap-accounts.cf server_host = localhost port = 389 version = 3 search_base = ou=people,dc=sld,dc=test query_filter = (mail=%s) result_attribute = mail 6.4 Savez vous parler SMTP? Comme pour IMAP, vous pouvez tester votre logiciel de transport de courrier en vous connectant directement dessus depuis une console du serveur. Les commandes suivantes devraient vous aider à comprendre le protocole et à le parler partiellement. Les réponses du serveur SMTP ne sont pas toutes transcrites ici. Si vous ne respectez pas le protocole, le code de retour vous l indiquera par un numéro et un commentaire. 5

$ telnet localhost 25 Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is ^]. 220 server ESMTP EHLO SLD.test MAIL FROM: <NOM@SLD.test> RCPT TO: <NOM@SLD.test> DATA From: NOM@SLD.test To: NOM@SLD.test Subject: un sujet Date: une date La ligne vide est obligatoire. Pour terminer la session, on met un point "." seul.. 7 Avec un client de messagerie Sur le poste client, configurer un Mail User Agent comme Thunderbird ou Evolution pour vous connecter sur le serveur de mail et faire des tests. Il faut pour cela utiliser l adresse IP de l interface eth42 dans marionnet. Pour pouvoir utiliser le smtp sans authentification, il faut rajouter le réseau 172.23.0.0/16 à la directive mynetworks de Postfix. Attention si vous deffinisser un mauvais réseau ( réseau publique ) ou un réseau trop large ( mauvais masque ), votre serveur SMTP pourrai servir d "Open Relay" pour les spammeurs. 8 Installation d un webmail Pour utiliser un webmail, il faut installer un serveur web et une base de données. apt-get install apache2 php5 mysql-server php5-mysql Il faut ensuite télécharger l application du webmail. Nous installerons Roundcube. Téléchargez le dans /usr/src, décompressez le avec tar zxvf et lisez le fichier INSTALL pour l installer. Vérifiez que vous pouvez envoyer et recevoir des mails après l installation. 9 Entre vos serveurs SMTP Vous devez avoir configurer les noms de domaine de vos camarades dans le fichier /etc/hosts. Ensuite, il faut mettre la directive disable_dns_lookups à yes dans postfix. Essayez ensuite d envoyer un mail à vos camarades. 10 Sécurisation du serveur 10.1 Chiffrement des mots de passe Lorsque vous consultez le serveur LDAP avec le compte admin, vous pouvez voir les mots de passe en claire. Utiliser l outil slappasswd pour chiffrer votre mot de passe, puis l outil ldapmodify pour modifier votre mot de passe dans l annuaire. Comment dovecot fait il pour se connecter une fois le mot de passe chiffré? 10.2 Configuration SSL L utilisation du transport SSL permet d obtenir 2 choses : La sécurisation de la phase d authentification 6

La protection des messages Évidemment, la protection des messages n est valable que pour ceux échangés entre les utilisateurs du même serveur. Ce n est pas valable pour les messages qui sont reçu ou émis vers des serveurs tiers. 10.2.1 Génération d un certificat Nous allons maintenant générer des certificats serveurs auto-signés. openssl req -new -x509 -days 3650 -nodes -out /etc/ssl/certs/tp.cert -keyout /etc/ssl/private/tp.key 10.2.2 Utilisation du certificat généré Configurez dovecot pour fait du IMAPS et du POPS, postfix pour faire du SMTPS et apache pour faire du HTTPS 10.2.3 Test des logiciels Comme pour les parties «en clair» des protocoles HTTP, IMAP et SMTP, vous pouvez tester vos serveurs sécurisés «à la main». La seule différence c est que vous n utilisez pas la commande telnet pour vous connecter mais la commande openssl. openssl s_client -host localhost -port 443 # HTTPS openssl s_client -host localhost -port 465 # SMTPS openssl s_client -host localhost -port 993 # IMAPS openssl s_client -host localhost -port 995 # POPS 10.3 Système de limitation de spam (facultatif) Mettez en place de systèmes comme SPF ou DKIM. 10.4 Acl LDAP (facultatif) Interdisez l accès anonyme à votre annuaire. Créez un utilisateur qui permet à dovecot, postfix et roundcube d authentifier les utilisateurs. 10.5 Antivirus et Antispam (facultatif) Pour ceux qui ont le temps, vous pourrez essayer de mettre en place un antivirus (ClamAV) et un antispam (SpamAssassin ou dspam). 10.5.1 Test de l installation Les logiciels antivirus et antispam sont normalement configurés pour répondre de manière positive en utilisant tous leurs tests lorsqu on leur envoie des messages contenant une chaîne particulière. Pour l antispam, cette chaîne est le GTUBE (Generic Test for Unsolicited Bulk Email). Envoyez un message contenant la chaîne de caractères suivante : XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X Pour l antivirus, il s agit du fichier EICAR 3 Standard Anti-Virus Test File qui peut aussi se présenter sous une simple chaîne de caractère dans votre message de test : X5O!P%@AP[4\PZX54(P^)7CC)7$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H* 3. European Institute for Computer Antivirus Research 7