71
L’Administration des Reseaux en Pratique Rapport de cour: Administration et Supervision des Réseaux Mise en œuvre d’un réseau comportant les services DNS, DHCP, Messagerie, SAMBA, LDAP, Radius, Kerberos et pour finir le Nat avec iptables Amadou Daouda Dia ESTM DICII TELEINFORMATIQUE

L’ Administration des Réseaux en Pratique

Embed Size (px)

Citation preview

Page 1: L’ Administration des Réseaux en Pratique

L’Administration des Re seaux en Pratique Rapport de cour: Administration et Supervision des Réseaux

Mise en œuvre d’un réseau comportant les services DNS, DHCP, Messagerie, SAMBA, LDAP, Radius,

Kerberos et pour finir le Nat avec iptables

Amadou Daouda Dia

ESTM DICII TELEINFORMATIQUE

Page 2: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

1

Tous les Travaux présentés dans ce rapport ont été réalisé sur un réseau virtuel comportant 4

machines (Un serveur nommé monserveur (Fédora11), un client nommé client1

(Fedora11), un client Windows XP et un client Windows 7) sous VMWARE. Pour Bien

comprendre le contenu de ce Rapport, je vous demande d’installer VMWARE ainsi que les 4

stations et de les mettre ensemble sur un même réseau pour que vous puissiez effectuer les

travaux en même temps que moi.

Page 3: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

2

I) Service de résolution de noms DNS

Le Fichier /etc/hosts

DNS : Domain Name System

Les Différents Types d’enregistrements

Mise en Œuvre du DNS

II) DHCP (Dynamic Host Configuration Protocol)

Introduction

Fonctionnement de DHCP

Attribution d’une adresse DHCP

Mise en Œuvre de DHCP

III) Messagerie Electronique

Introduction

Fonctionnement du Courrier Electronique

Format de Boite à Lettres

Mise en Œuvre de la Messagerie Electronique

Postfix,

Dovecot,

Squirrelmail et Thunderbird

Listes de Discussion

La Redirection Personnelle

IV) Serveur Web

Introduction

Les Différents types d’Hébergement

Mise en Œuvre

Un Site Principal

Les Sites Virtuels

Les Sites Personnels

Contrôle de L’accès à un Site (.htaccess)

V) Le Protocole FTP (File Tranfert Protocol)

Introduction

Mise en Œuvre

Confiner les Utilisateurs dans leurs Répertoires de Base

VI) LDAP (Lightweight Directory Access Protocol)

Introduction

Concepts de LDAP

Le Modèle de Données

Fonctionnement

LDIF

Mise en Œuvre de LDAP

Alimentation de l’annuaire

Page 4: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

3

Connexion au serveur LDAP

System-config-authentication

PAM et NSS

VII) Messagerie Instantanée

Introduction

Implémentation :

OPENFIRE + MYSQL + LDAP

VIII) SAMBA

Introduction

Mise en Œuvre

Intégration d’une machine Windows XP au domaine

Intégration d’une machine Windows 7 au domaine

Accès à un dossier partagé sous Windows depuis une machine Linux

Montage automatique (autofs)

SAMBA + LDAP

Mise en œuvre

Les smbldap-tools

Mise en Œuvre

Création d’un utilisateur SAMBA et LDAP avec smbldap

IX) RADIUS (Remote Authentication Dial-In User Service)

Introduction

Fonctionnement

EAP

Méthodes EAP

Authentification

Mise en Œuvre de Radius

X) KERBEROS

Introduction

Fonctionnement

Mise en Œuvre

XI) Le FILTRAGE: IPTABLES

Introduction

Fonctionnalités d’IPTABLES

Tables et Chaines

Traduction d’Adresse (NAT)

Mise en Œuvre de NAT

Conclusion

Page 5: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

4

I) Service de résolution de noms DNS Le fichier /etc/hosts

Les petites infrastructures réseau ne nécessitent pas toujours la configuration d’une architecture client/serveur pour transformer les noms symboliques en adresses IP. Les

systèmes UNIX disposent du fichier /etc/hosts. Ce fichier associe un ou plusieurs noms à une adresse IP. Lorsqu’un nom symbolique est employé, le système consulte, d’abord le contenu

de ce fichier dans un but de recherche d’une adresse IP correspondant au nom spécifié. Voici un exemple de fichier /etc/hosts :

Cette configuration n’est exploitable que sur la machine où réside le fichier. Cela ne

constitue donc pas une base de données distribuée, exploitable par d’autres hôtes du réseau. A petite échelle, il est envisageable de configurer plusieurs ordinateurs de cette manière. A plus

grande échelle, cette méthode présente le désavantage d’imposer la gestion de multiples copies rigoureusement identiques du même fichier, ce qui va conduire à la mise en œuvre d’un système client/serveur ou toutes les correspondances NOM-@IP seront effectuer sur le

serveur et l’on précisera aux clients l’adresse du serveur habilité à effectuer une résolution de noms.

DNS : Domain Name System

Le service de résolution de noms ou DNS, Domain Name System (DNS) en anglais, est une

base de données distribuée contenant les noms de machines connectées à Internet. Alors que les hommes préfèrent utiliser des noms intelligibles pour s’adresser à des machines où s’exécutent des services réseau, les machines font appel au service de résolution de noms pour

convertir ces noms en adresses IP afin de communiquer entre elles. Utilisé principalement pour faire cette correspondance nom de machine - adresse IP et réciproquement, le DNS est

également indispensable pour le bon fonctionnement de quelques services. En effet, il permet de déterminer quelle est la machine gérant le service (exemple : La messagerie) pour un domaine donné.

Les informations DNS sont regroupées par zones, correspondant chacune à un domaine ou à une plage d'adresses IP. Un serveur primaire fait autorité sur le contenu d'une zone; un serveur

secondaire, normalement hébergé sur une autre machine, se contente de proposer une copie de la zone primaire, qu'il met à jour régulièrement. Chaque zone peut contenir différents types d'enregistrements :

Les différents types d'enregistrements

A : attribution d'une adresse IPv4.

CNAME : d´e_nition d'un alias.

MX : définition d'un serveur de courrier électronique, information exploitée par les serveurs

de messagerie pour retrouver le serveur correspondant l'adresse de destination d'un courrier

Page 6: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

5

électronique. Chaque enregistrement MX a une priorité associée. Le serveur de plus haute

priorité (portant le nombre le plus petit) recevra les connexions SMTP. S'il ne répond pas, le deuxième serveur sera contacté, etc.

PTR : correspondance adresse IP vers nom. Elle est stockée dans une zone dédiée à la résolution inverse, nommée en fonction de la plage d'adresses IP: par exemple 2.168.192.in-addr.arpa pour toutes les adresses du réseau 192.168.2.0/24.

NS : correspondance nom vers serveur de noms. Chaque domaine doit compter au moins un enregistrement NS. Tous ces enregistrements pointent sur un serveur DNS capable de

répondre aux requêtes portant sur ce domaine; ils signaleront les serveurs primaires et secondaires du domaine concerné.

Les enregistrements SOA (Start Of Authority): Le premier enregistrement de chacun des

fichiers est l’enregistrement SOA. Il indique que le serveur de noms est la meilleure source d’informations pour les données de cette zone (Considère que le serveur de noms à l’autorité

sur la zone). Comporte Les paramètres suivants:

Serial : Numéro de la version de la base de données de la zone. Ce numéro doit être incrémenté à chaque modification de la base de données. Dans le cas général, ce numéro sera

composé de la date dans le format AAAAMMJJ suivi d’un nombre à deux chiffres.

Refresh : Temps d’attente avant une nouvelle demande de mise à jour de la part du serveur

secondaire de la zone. Avant l’expiration de ce temps, le serveur secondaire demande une copie de l’enregistrement SOA au serveur principal. Une comparaison du numéro de version avec son propre enregistrement SOA est faite pour voir s’il y a nécessité de transfert de zone.

Retry : Temps d’attente avant une nouvelle tentative de transfert de zone qui a échoué.

Expire : Temps de validité de la base de données pendant lequel aucune mise à jour n’a pu

être lancée (comprenant donc le refresh et plusieurs retry). Si ce délai expire, le serveur secondaire ne répond alors plus aux requêtes DNS car il considèrera que sa base de données n’est plus fiable.

TTL : Temps de validité appliqué aux enregistrements de ressource (correspond au temps de conservation dans le cache des données DNS).

Mise en Œuvre de DNS:

- Installation : o #yum install bind bind-utils

- Configuration du serveur :

1) Nous allons commencer par éditer le ficher /etc/named.conf o Mettre l’interface d’écoute à any pour écouter sur tous les ports Mettre allow-

query aussi à any pour accepter les requêtes de tous les hôtes

Page 7: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

6

2) Nous allons créer les Zones directes et inverses dans le fichier

/etc/named.rfc1912.zones

3) Création des fichiers de zone dans le répertoire /var/named

- Zone directe : Fichier boghe.direct

- Zone indirecte : Fichier boghe.inverse

Page 8: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

7

4) Faire de named le propriétaire et le groupe propriétaire des fichiers de zone créés :

#chown named:named /var/named/boghe.direct

#chown named:named /var/named/boghe.inverse

5) Editez le Fichier /etc/resolv.conf

Mettre : nameserver 127.0.0.1

6) Démarrer le service : #/etc/init.d/namd start

Configuration du Client :

Chez le Client on ne fait que modifier le fichier /etc/resolv.conf pour indiquer le

serveur DNS à consulter pour la résolution de nom-adresse IP et inversement

Test de fonctionnement : A partir de Client1

Page 9: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

8

II) DHCP (Dynamic Host Configuration

Protocol)

Introduction :

Le protocole DHCP (Dynamic Host Configuration Protocol) est un protocole réseau dont le rôle est d'assurer la configuration automatique des paramètres réseaux d'une station,

notamment en lui assignant automatiquement au minimum une adresse IP et un masque de sous-réseau. Le protocole DHCP est très souvent mis en œuvre par les administrateurs de parc de stations car il offre l'énorme avantage de centraliser la configuration des stations sur une

unique machine: le serveur DHCP. Un serveur DHCP fournit de nombreux paramètres réseaux, notamment une adresse IP, le masque et le réseau d'appartenance de la machine.

Mais il peut aussi indiquer d'autres informations, telles que les serveurs DNS, WINS, NTP, etc.

Il y a deux utilisations principales d'un serveur DHCP :

- attribuer une configuration fixe à certains postes (on les reconnait grâce à leur adresse MAC)

- et attribuer une configuration dynamique aux postes inconnus.

On peut par exemple donner une adresse IP fixe à certains serveurs, et attribuer des adresses variables aux autres postes. Le protocole est prévu pour qu'un poste qui revient sur le réseau

récupère la même adresse qu'il avait la première fois. Elle lui est réservée un certain temps (le lease time).

Fonctionnement de DHCP

Un client DHCP est un ordinateur qui demande une adresse IP à un serveur DHCP. Comment, alors, un client DHCP, qui utilise le protocole TCP/IP mais qui n'a pas encore

obtenu d'adresse IP par le serveur, peut-il communiquer sur le réseau ?

Attribution d'une adresse DHCP

Lorsqu'un client DHCP initialise un accès à un réseau TCP/IP, le processus d'obtention du

bail IP se déroule en 4 phases :

1) Le client émet un message de demande de bail IP (DHCPDISCOVER) qui est envoyé

sous forme d'une diffusion sur le réseau avec adresse IP source 0.0.0.0 et adresse IP destination 255.255.255.255 et adresse MAC.

2) Les serveurs DHCP répondent en proposant une adresse IP avec une durée de bail et

l'adresse IP du serveur DHCP (DHCOFFER) 3) Le client sélectionne la première adresse IP (s'il y a plusieurs serveurs DHCP) reçue et

envoie une demande d'utilisation de cette adresse au serveur DHCP (DHCPREQUEST). Son message envoyé par diffusion comporte l'identification du serveur sélectionné qui est informé que son offre a été retenue; tous les autres serveurs

DHCP retirent leur offre et les adresses proposées redeviennent disponibles. 4) Le serveur DHCP accuse réception de la demande et accorde l'adresse en bail

(DHCPACK), les autres serveurs retirent leur proposition.

Enfin le client utilise l'adresse pour se connecter au réseau.

Mise en Œuvre de DHCP

- Configuration :

Page 10: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

9

o Installation : #yum install dhcpd

- Copier le Fichier /usr/share/doc/dhcp-4.1.0p1/dhcp.conf.sample dans le répertoire

/etc/dhcp/ en dhcpd.conf o #cp /usr/share/doc/dhcp.4.x/dhcp.conf.sample

/etc/dhcp/dhcpd.conf

- Adresse dynamique

Pour configurer une plage d'adresses à attribuer dynamiquement aux adresses MAC inconnues, on utilise une section subnet dans dhcpd.conf. La section suivante attribuera par exemple des adresses comprises entre 192.168.2.3 et 192.168.2.15:

subnet 192.168.2.0 netmask 255.255.255.240 {

range 192.168.2.3 192.168.2.14;

}

- Adresse fixe

Pour donner une adresse fixe a un poste, il faut connaitre son adresse MAC et écrire une section host. Par exemple la section suivante attribue l'adresse 192.168.2.3 au poste

Client1 dont l'adresse MAC est 00:0C:29:7C:41:FA

host Client1 {

hardware ethernet 00:0C:29:7C:41:FA;

fixed-address 192.168.2.3;

}

- Options

Le serveur DHCP peut fournir d'autres informations que l'adresse IP. Ces options peuvent être définies de manière globale en les plaçant en dehors de toute section. Elles s'appliqueront alors à toutes les sections qui ne les redéfinissent pas. Si elles sont placées dans une section

particulière, elles ne s'appliquent qu'à celle-ci. L'option domain-name-servers permet par exemple d'indiquer au poste les adresses des serveurs DNS. L'option routers indique la

passerelle.

Exemple de Configuration :

Page 11: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

10

Démarrer le service : # /etc/init.d/dhcpd start

Remarque: Attribuer au serveur DHCP une adresse IP statique ne figurant pas dans la plage

d’adresse distribuée dynamiquement mais appartenant à un même réseau/sous-réseau des plages déclarées.

Page 12: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

11

III) Messagerie électronique

Introduction :

La messagerie électronique sert à un utilisateur connecté sur Internet pour envoyer des

messages. Elle fonctionne sur le même schéma que le courrier postal. Il suffit de connaître l’adresse du destinataire et le système s’occupe d’acheminer les messages (e-mail) à bon port de manière transparente. La messagerie est devenue un outil incontournable pour les relations

avec les clients et les fournisseurs ou même pour la communication interne. C’est un service nécessairement ouvert à l’extérieur, qu’il est impératif de rendre fiable, performant et

sécurisé.

Fonctionnement du courrier électronique

Le fonctionnement du courrier électronique est basé sur l'utilisation d'une boîte à lettres

électronique. Lors de l'envoi d'un email, le message est acheminé de serveur en serveur jusqu'au serveur de messagerie du destinataire. Plus exactement, le message est envoyé au

serveur de courrier électronique chargé du transport (nommé MTA pour Mail Transport Agent), jusqu'au MTA du destinataire. Sur internet, les MTA communiquent entre-eux grâce au protocole SMTP et sont logiquement appelés serveurs SMTP (parfois serveur de courrier

sortant).

Le serveur MTA du destinataire délivre alors le courrier au serveur de courrier électronique

entrant (nommé MDA pour Mail Delivery Agent), qui stocke alors le courrier en attendant que l'utilisateur vienne le relever. Il existe deux principaux protocoles permettant de relever le courrier sur un MDA :

Le protocole POP3 (Post Office Protocol), le plus ancien, permet aux utilisateurs de télécharger les courriers sur leur poste client.

Le protocole IMAP (Internet Message Access Protocol), permet aux utilisateurs

d’accéder à leurs mails sans pour autant les télécharger sur leurs postes clients.

Ainsi, les serveurs de courrier entrant sont appelés serveurs POP ou serveurs IMAP, selon

le protocole utilisé.

Par analogie avec le monde réel, les MTA font office de bureau de poste (centre de tri et facteur assurant le transport), tandis que les MDA font office de boîte à lettres, afin de stocker

les messages (dans la limite de leur capacité en volume), jusqu'à ce que les destinataires relèvent leur boîte. Ceci signifie notamment qu'il n'est pas nécessaire que le destinataire soit

connecté pour pouvoir lui envoyer du courrier.

Page 13: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

12

Pour éviter que chacun puisse consulter le courrier des autres utilisateurs, l'accès au MDA est

protégé par un nom d'utilisateur appelé identifiant (en anglais login) et par un mot de passe (en anglais password).

La relève du courrier se fait grâce à un logiciel appelé MUA (Mail User Agent).

Lorsque le MUA est un logiciel installé sur le système de l'utilisateur, on parle de client de

messagerie (par exemple Thunderbird, Microsoft Outlook, évolution, etc.).

Lorsqu'il s'agit d'une interface web permettant de s'interfacer au serveur de courrier entrant, on parle alors de webmail.

Format de Boite à Lettres :

- Mailbox :

o Traditionnellement, les serveurs UNIX utilisent mbox pour stocker les mails.

Pour mbox, chaque dossier de votre boîte mail (Reçu, Envoyés, Archive, Corbeille, etc.) est représenté par un fichier, ou tous les mails sont enregistrés et séparés par une ligne vide.

- Maildir :

o Avec Maildir, chaque mail est un fichier, et chaque dossier de la boîte mail, un

répertoire.

Mise en Œuvre de la Messagerie Electronique

- Configuration :

Pour la configuration d’un service de messagerie, nous allons utiliser :

1) Postefix comme MTA

2) Dovecot comme MDA

3) Squirrelmail et Thunderbird comme MUA

1) Postfix :

Le projet Postfix a été initié par Wietse Zweitze Venema (http://www.porcupine.org/wietse/) connu pour être aussi l'auteur du logiciel de protection contre les intrusions (TCP Wrappers). Employé par IBM au sein du département R&D Thomas J. Watson, son ambition était de

créer un serveur de messagerie rapide, sécurisé et compatible Sendmail, mais en plus simple à configurer et à administrer. Compte tenu de la large diffusion de ce serveur de messagerie, le

pari semble être réussi.

Installation : #yum install postfix

Configuration : Deux fichiers de configuration :

/etc/postfix/main.cf et /etc/postfix/master.cf

Fichier /etc/postfix/main.cf :

Page 14: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

13

Demarrer le Service : #/etc/inint.d/postfix start

2) Dovecot :

Dovecot est un logiciel libre de serveur IMAP et POP3 pour Linux / UNIX. Dovecot est un excellent choix pour les installations de petites et grandes tailles. C'est rapide, simple à

installer, ne nécessite pas d'administration extraordinaire et il utilise très peu de mémoire.

Installation : #yum install dovecot

Configuration : fichier /etc/dovecot.conf

- Authentification : Le module d'authentification de Dovecot est très complet et permet de la réaliser de nombreuses manières. Si vous souhaitez simplement utiliser l'authentification de vos utilisateurs sur le serveur, il suffit d'ajouter (ou modifier) la

ligne suivante dans le module auth

o mechanisms = plain login

- Emplacement des messages : Dovecot est capable d'accéder aux messages stockés au

format Maildir ou Mbox. Si votre serveur SMTP délivre les messages dans un

répertoire Maildir, on choisit alors le format Maildir pour

dovecot aussi.

o mail_location = maildir:~/Maildir

- Protocoles : Si vous souhaitez faire de l'IMAP, vous devrez indiquer la ligne protocols

suivante :

o protocols = imap

Si vous souhaitez utiliser IMAP et SSL, vous devrez indiquer le protocole

ainsi que l'emplacement de votre certificat et clé SSL :

o protocols = imaps

o ssl_cert_file = /chemin/vers/votre/certificat/ssl

o ssl_key_file = /chemin/vers/votre/clé/ssl

Demarrer le Service : #/etc/init.d/dovecot start

3) Squirrelmail

Squirrelmail est un webmail (c'est-à-dire une interface web pour consulter son courrier

électronique), inventé par Nathan et Luke Ehresman, écrit en PHP4. Il supporte les protocoles IMAP et SMTP, et toutes les pages créées le sont en pur HTML (sans aucun JavaScript), ceci

afin d'être compatible avec le maximum de navigateurs.

Installation : # yum install squirrelmail

Configuration : fichier de configuration /etc/squirrelmail/config.php

Page 15: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

14

Démarrer Le Service Web: #/etc/init.d/httpd start

Thunderbird:

Thunderbird est un programme de messagerie électronique Open-Source très élaboré. Il est

léger, extrêmement rapide, simple à utiliser

Installation : #yum install thunderbird

Configuration :

- Lancer Thunderbird avec #thunderbird

Cliquer sur Créer un nouveau compte :

Choisir Compte courrier électronique Changer Le nom et l’adresse de courrier

Page 16: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

15

Nom qui apparaitra sur le profil de votre compte Terminer pour finir la configuration

Test de Fonctionnement :

Root envoie un message a amadou

Amadou accède à son compte via le webmail :

Page 17: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

16

Amadou a reçu le mail envoyé par root

Accès à son compte de messagerie par Thunderbird:

Saisir le mot de passe du compte de messagerie:

Votre boite de réception:

Page 18: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

17

Listes de discussion :

Les listes de discussion nous permettent d’envoyer un mail à un groupe de personnes. Pour le

faire on utilise le fichier /etc/aliases dans lequel on ajoutera une ligne contenant le nom à

utiliser pour la liste de discussion et l’ensemble des destinataires qui doivent recevoir le mail.

Le format des entrées de ce fichier est :

Nom_alias: destinataire {,destinataire, … }

Chaque fois que le fichier des aliases est modifié, il faut générer une nouvelle base de données

afin que les modifications soient prises en compte par postfix. Pour le faire on utilise la commande :

#newaliases

La Redirection Personnelle :

En plus du mécanisme de renvoi de courrier électronique et de listes de diffusion par les alias, il est possible pour un utilisateur de définir lui même son propre renvoi de courrier. Il lui

suffit de créer un fichier .forward à la racine de son compte utilisateur. Le programme postfix consulte ce fichier après avoir utilisé le fichier des alias et avant d’effectuer la diffusion finale du courrier à l’utilisateur. Si le fichier .forward existe, postfix diffuse le message en fonction

du contenu de ce fichier.

Exemple :

Après avoir créé le fichier .forward dans le répertoire de base de amadou (/home/amadou/) et y ajouter la ligne [email protected], tous les mails envoyés à amadou seront redirigés vers thierno.

Page 19: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

18

IV) Serveur Web APACHE

Introduction :

Apache est le serveur web le plus répandu sur Internet (50% des serveurs en sont équipés

selon Netcraft en date de janvier 2008). Il s'agit d'un programme qui tourne sur une machine (un serveur ou sur un poste en local) qui permet à des clients d'accéder à des pages web, ou

tout autre fichier présent sur le serveur à partir d'un navigateur ou tout autre programme supportant le protocole HTTP. Apache dispose de nombreuses fonctionnalités, il permet l'utilisation de modules, la possibilité de définir une configuration spécifique pour chaque

répertoire partagé, des restrictions, ... Il est souvent utilisé avec des modules comme Perl et/ou PHP afin de rendre le contenu des pages dynamiques.

Les Différents Types d’Hébergement :

- Site Principal : Le contenu du site est placé dans le répertoire /var/www/html (Le DocumentRoot).

Accès : http://@IP_du_Site/ - Site Par Dossier : On crée dans le répertoire DocumentRoot (/var/www/html) un

répertoire pour chaque site et on y copie le contenu du site. Accès : http://@IP_du_Site/nom_repertoire

- Site Personnel : Permet aux utilisateurs crées dans le serveur http de créer chacun

un site personnel Accès : http://@IP_du_Site/~nom_utilisateur

Mise en Œuvre :

- Installation : #yum install httpd

- Configuration : Fichier de configuration : /etc/httpd/conf/httpd.conf Site Principal:

Section 1 :

Section 2 :

Page 20: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

19

Section 3 : Les Sites Virtuels

Lorsque l’on dispose d’une connexion Internet permanente, il est permis d’héberger

plusieurs sites Web sur le même ordinateur. Le serveur APACHE est capable d’effectuer cette gestion en se basant soit sur des adresses IP différentes, soit sur des URL différentes. La méthode basée sur l’adresse IP exige la configuration d’une carte réseau ayant plusieurs

adresses IP. Bien que cette technique de résolution donne de bons résultats, elle est à présent désuète et la méthode basée sur le nom lui est préférée. Le fonctionnement de la méthode

basée sur le nom repose sur la capacité des navigateurs actuels à envoyer le nom du site à atteindre en même temps que la requête qu’ils formulent. Cette méthode exige d’enregistrer plusieurs noms DNS pour une même adresse IP.

Modifier les enregistrements DNS :

Test :

- Accès au Site de amadou

Page 21: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

20

- Accès au site de thierno

Les Sites Personnels : Pour Créer son site personnel :

1) Charger le module userdir_module 2) Mettre le paramètre UserDir à public_html

3) Créer un répertoire public_html dans son répertoire de base 4) Donner à son répertoire personnel les droits 711 5) Donner au répertoire public_html les droits 755

6) Copier le contenu de son site dans public_html

Contrôle de L’accès à un Site :

Mettre le paramètre AllowOverride à All

Nom du fichier utilisé pour la sécutrité : .htacces

Page 22: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

21

Créer le fichier .htacces dans le répertoire du site sur lequel on veut restreindre l’accès. Ici

/var/www/html/amadou/ et y insérer les lignes suivantes

Créer le fichier contenant la liste des utilisateurs autorisés à accéder au site : Systaxe #htpasswd –c /etc/httpd/conf/etudiants nom_utilisateur

Ajouter des utilisateurs au fichier, on omet l’option -c:

Verification :

Page 23: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

22

V) Le Protocole FTP (File Tranfert Protocol) Introduction :

File Transfer Protocol (protocole de transfert de fichiers), ou FTP, est un protocole de communication destiné à l'échange informatique de fichiers sur un réseau TCP/IP. Il permet, depuis un ordinateur, de copier des fichiers vers un autre ordinateur du réseau, ou encore de

supprimer ou de modifier des fichiers sur cet ordinateur. Ce mécanisme de copie est souvent utilisé pour alimenter un site web hébergé chez un tiers.

- FTP obéit à un modèle client-serveur, c'est-à-dire qu'une des deux parties, le client, envoie des requêtes auxquelles réagit l'autre, appelé serveur. En pratique, le serveur est un ordinateur sur lequel fonctionne un logiciel lui-même appelé serveur FTP, qui

rend public une arborescence de fichiers similaire à un système de fichiers UNIX. Pour accéder à un serveur FTP, on utilise un logiciel client FTP (possédant une

interface graphique ou en ligne de commande).

- Deux ports sont standardisés pour les connexions FTP : le port 21 pour les commandes et le port 20 pour les données.

Mise en Œuvre :

- Installation :

o #yum install vsftpd

- Configuration : fichier de configuration /etc/vsftpd/vsftpd.conf

Remarque : Le Paramètre chroot_local_user=YES va permettre de limiter l’environnement de travail des utilisateurs FTP à leurs répertoire de Base.

- Démarrer le Service :

Exemple :

- Créons un utilisateur madidia avec comme répertoire d’accueil /var/www/html/thierno

- Accès au compte madidia depuis la station client1

Page 24: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

23

Remarque : Il indique que son répertoire de base est /

- Accès au répertoire de amadou : /var/www/html/amadou

L’accès au répertoire de amadou à échouer. Ce paramètre est très important en ce qui

concerne la sécurité dans un environnement partagés comme les serveurs web avec plusieurs sites virtuels car chaque administrateur de l’un des sites virtuels ne pourra se déplacer que

dans son répertoire de base et ne verra pas donc les autres répertoires du serveur.

Page 25: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

24

VI) LDAP (Lightweight Directory Access

Protocol) Introduction:

LDAP est l’abréviation de l’anglais Lightweight Directory Access Protocol. LDAP est aussi

et surtout un protocole standard de communication pour les services d’annuaires. Ces derniers sont en général utilisés pour stocker des informations sur les comptes utilisateur, mais peuvent également servir pour stocker tout autre type d’information. Les annuaires LDAP sont très

appréciés car simples à mettre en œuvre et optimisés et performants pour des requêtes de lecture. À l’instar de NIS, LDAP est utilisé dans le système d’authentification pour permettre

une gestion centralisée et un partage des comptes utilisateur. Sur le système Linux, OpenLDAP, implémentation libre d’un serveur LDAP, est utilisé pour répondre aux besoins de partage des informations de comptes entre machines. Son schéma de base de données peut

être étendu pour ajouter des types d’informations supplémentaires à la gestion traditionnelle des comptes Unix, comme des adresses électroniques, des numéros de téléphone, etc.

Concepts LDAP :

LDAP définit :

le protocole d’accès : comment accéder à l’information contenue dans l’annuaire,

un modèle d’information : le type d’informations contenues dans l’annuaire,

un modèle de nommage : comment l’information est organisée et référencée,

un modèle fonctionnel : comment on accède et met à jour l’information,

un modèle de sécurité : comment données et accès sont protégés,

un modèle de duplication : comment la base est répartie entre serveurs,

des API : pour développer des applications clientes,

LDIF : un format d’échange de données.

Le modèle de données LDAP :

- L'arborescence d'informations (DIT) : LDAP présente les informations sous forme d'une arborescence d'informations hiérarchique appelée DIT (Directory Information

Tree), dans laquelle les informations, appelées entrées (ou encore DSE, Directory Service Entry), sont représentées sous forme de branches. Une branche située à la

racine d'une ramification est appelée racine ou suffixe (en anglais root entry). Chaque entrée de l'annuaire LDAP correspond à un objet abstrait ou réel (par exemple une personne, un objet matériel, des paramètres, ...). Chaque entrée est constituée d'un

ensemble de paires clés/valeurs appelées attributs. - Le schéma : L'ensemble des définitions relatives aux objets que sait gérer un serveur

LDAP s'appelle le schéma. Le schéma décrit les classes d'objets, leurs types d'attributs et leurs syntaxes.

- Le Distinguish Name : Chaque entrée est référencée de manière unique dans le DIT

par son distinguished name (DN). Le DN représente le nom de l'entrée sous la forme du chemin d'accès à celle-ci depuis le sommet de l'arbre. On peut comparer le DN au

path d'un fichier Unix. Chaque composant du DN est appelé Relative Distinguished

Name (RDN). Le RDN est constitué d’un des attributs de l’entrée (et de sa valeur). Le choix de cet attribut doit assurer que deux entrées du DIT n’aient pas le même DN.

Page 26: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

25

- Schéma : Le Directory schema est l’ensemble des définitions relatives aux objets

qu’il sait gérer. Le schéma décrit les classes d’objets, les types des attributs et leur syntaxe. Chaque entrée de l’annuaire fait obligatoirement référence à une classe

d’objet du schéma et ne doit contenir que des attributs qui sont rattachés au type d’objet en question.

- Les OIDs : Les objets et leurs attributs sont normalisés par le RFC2256 de sorte à

assurer l'interopérabilité entre les logiciels. Ils sont tous référencés par un object

identifier (OID) unique dont la liste est tenue à jour par l'Internet Assigned Numbers

Authority (IANA).

Fonctionnement :

Dans le modèle proposé par OpenLDAP, un serveur principal détient la base de données

originelle des comptes utilisateur. La description des comptes utilisateur et des groupes répond alors à la norme Posix. Plus simplement, les informations contenues dans les fichiers

passwd, group et shadow retrouvent leur équivalent dans la structure de base de données LDAP, ce qu’on appelle communément le schéma. Des outils sont proposés pour convertir les fichiers plats dans leur équivalant LDAP. L’interrogation d’un serveur LDAP et la

modification des données qu’il gère sont possibles depuis n’importe quelle machine du réseau ayant satisfait aux règles d’accès imposées par le serveur. En utilisant une authentification

classique par mot de passe, une fois encore, l’utilisation de LDAP, est transparente aux applications du système.

LDIF (LDAP Data Interchange Format) :

LDAP Data Interchange Format (LDIF) permet de représenter les données LDAP sous format texte standardisé, il est utilisé pour afficher ou modifier les données de la base. Il a

vocation à donner une lisibilité des données pour le commun des mortels. LDIF est utilisé dans deux optiques :

- faire des imports/exports de base

- faire des modifications sur des entrées.

Mise en Œuvre de LDAP :

Configuration du Serveur LDAP :

- Installation :

o # yum install openldap openldap-servers

- Configuration : fichier de configuration /etc/openldap/slapd.conf

o Générer le mot de passe crypter :

Copier le mot de passe crypté et placer le devant le paramètre rootpw

Page 27: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

26

- Démarrer le service :

Configuration du Client (station client1):

- Installation :

o #yum install openldap-clients

- Configuration : fichiers de configuration /etc/ldap.conf et /etc/openldap/ldap.conf

o Fichier /etc/ldap.conf

o Fichier /etc/openldap/ldap.conf

Page 28: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

27

Alimentation de l’annuaire :

- Créer un fichier ldif, y ajouter les lignes suivantes: fichier /etc/openldap/feeding.ldif

Suite

Page 29: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

28

- Utiliser le fichier ldif pour alimenter l’annuaire :

- Rechercher l’utilisateur amadia

- La connexion à LDAP : (Première Méthode) L’outil system-config-authentication

o Commande : # system-config-authentication o Cocher la case LDAP

Page 30: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

29

o Cliquer sur configurer LDAP

o Aller à l’onglet authentification : Répéter les opérations précédentes. o Permettre à l’utilisateur de créer son répertoire de base lors de sa première

connexion sur une machine du réseau : Onglet options, cocher la dernière case.

Page 31: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

30

Accès au compte amadia crée dans l’annuaire depuis la station client1 : Il crée

automatiquement un répertoire pour amadia (/home/amadia)

- La connexion à LDAP : (Deuxième Méthode) Configuration de PAM et NSS

o Remarque : Cette Méthode diffère de la précédente du fait que nous devons modifier nous même le NSS et le PAM afin que la connexion au serveur

LDAP puisse avoir lieu alors qu’avec la méthode précédente c’est le system-

config-authentication qui le fait à notre place. Je propose ainsi les

modifications effectuées manuellement au cas où la commande system-config-

authentication serait absente pour que vous puissiez configurer votre client LDAP.

NSS (Name Service Switch) :

NSS est un ensemble de bibliothèques servant au système Linux pour interroger les

différents services de nommage, quelle qu’en soit leur source. Par exemple, la correspondance nom de machine et adresse IP peut être trouvée dans le fichier texte /etc/hosts sur le système Linux, mais également en procédant à une interrogation DNS. De même, la définition des

comptes utilisateur peut être locale dans les fichiers du répertoire /etc, mais il est possible de trouver la correspondance en interrogeant un service de gestion centralisé tel que NIS, LDAP,

etc.

Page 32: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

31

Renseigner la source des informations en modifiant le fichier /etc/nsswitch.conf :

Ces trois directives indiquent au système de chercher les informations de comptes d’abord

localement dans les fichiers plats, puis, en cas d’échec, d’interroger le serveur LDAP.

PAM (Pluggable Authentication Modules) :

PAM, qui est l’acronyme de Pluggable Authentication Modules, propose un mode de

fonctionnement très modulaire rendant transparent à l’application l’utilisation de tel ou tel système d’authentification. Par le biais d’un fichier de configuration qui sert d’aiguillage et de

bibliothèques dynamiques proposant une interface standard et normalisée, l’application sera rendue complètement indépendante de la manière dont seront gérées les informations relatives aux comptes utilisateur. Des modules PAM existent pour NIS, LDAP et Kerberos, rendant

ainsi les trois systèmes d’authentification interchangeables sans que cela nécessite une quelconque reconfiguration ou encore recompilation des services.

Format des fichiers de configuration PAM :

Chaque fichier de configuration PAM comprend un ensemble de directives établies selon

format suivant:

<interface-module> <indicateur-contrôle> <chemin-module> <argumentsmodule>

Interface du module :

Il existe quatre types d'interface pour les modules PAM, chacune correspondant à un aspect différent du processus d'autorisation:

- auth : Ces modules sont utilisés pour authentifier l'utilisateur, par exemple en lui demandant son mot de passe et en le vérifiant.

Page 33: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

32

- account : Ces modules sont utilisés pour vérifier que l'accès est bien autorisé. Peuvent

vérifier si un compte a expiré ou non, ou bien si un utilisateur est autorisé à se connecter à un moment donné de la journée.

- password : Ces modules sont utilisés pour définir les mots de passe (Le changement). - session : Ces modules sont utilisés pour configurer et gérer des sessions d'utilisateurs.

Indicateurs de contrôle :

Lorsqu'ils sont appelés, tous les modules PAM donnent un résultat indiquant soit la réussite, soit l'échec. Les indicateurs de contrôle indiquent aux PAM comment traiter ce résultat.

Il existe quatre types d'indicateurs de contrôle prédéfinis, à savoir:

- required : le module doit être vérifié avec succès pour que l'authentification puise se poursuivre. Si la vérification d'un module portant l'indication required échoue,

l'utilisateur n'en est pas averti tant que tous les modules associés à cette interface n'ont pas été vérifiés.

- requisite : le module doit être vérifié avec succès pour que l'authentification puisse se poursuivre. Cependant, si la vérification d'un module requisite échoue, l'utilisateur en est averti immédiatement par le biais d'un message lui indiquant l'échec du premier

module required ou requisite. - sufficient : en cas d'échec, les vérifications de modules sont ignorées. Toutefois, si la

vérification d'un module portant l'indication sufficient est réussie et qu'aucun module précédent portant l'indicateur required n'a échoué, aucun autre module de ce type n'est nécessaire et l'utilisateur sera authentifié auprès du service.

- optional : en cas d'échec, les vérifications de modules sont ignorées. En revanche, si la vérification des modules est réussie, le résultat ne joue aucun rôle dans la réussite

ou l'échec global de l'interface de ce module.

Chemins d'accès aux modules :

Les chemins d'accès aux modules indiquent à PAM où trouver les modules à utiliser avec

l'interface de module spécifiée. Normalement, le chemin d'accès complet du module est indiqué, comme par exemple, /lib/security/pam_stack.so. Cependant si ce n'est pas le cas, le

système suppose que le module spécifié se trouve dans le répertoire /lib/security/, l'emplacement par défaut des modules PAM.

Configuration : fichier de configuration : /etc/pam.d/system.auth

Ajouter Les modules pam_ldap.so en respectant le format du fichier.

Page 34: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

33

Page 35: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

34

VII) Messagerie Instantanée : Introduction :

Permet :

- Tchat - Transfert de fichiers en temps réel

- Envoi d’écran à son correspondant - L’audio et la vidéo

- , etc.

Le Protocole Standard utilisé pour le Tchat :

o JABBER : nom Standard : XMPP

Implémentation de JABBER :

o Pour la mise en place d’un système de messagerie nous allons utiliser :

OPENFIRE comme serveur de messagerie instantanée (station :

monserveur (192.168.2.2)), LDAP pour l’authentification des utilisateurs (station : monserveur

(192.168.2.2)), Serveur MYSQL pour le stockage des informations (station : client1

(192.168.2.3)). - Serveur MYSQL

o Installation : # yum install mysql-server

o Configuration :

Démarrer le service :

Créer la base de données openfire et donner à l’utilisateur dia tous les privilèges à partir de la station 192.168.2.2 (Le serveur)

Page 36: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

35

Faire en sorte que mysql écoute sur le réseau : fichier /etc/my.conf :

- LDAP : Nous utiliserons le serveur LDAP configuré Précédemment.

- OPENFIRE :

o Démarrer le serveur openfire : Télécharger le fichier Tar à l’adresse :

http://download.igniterealtime.org/openfire/openfire_3_7_1.tar.gz et

Désarchiver le fichier tar avec :

Démarrer Openfire :

o Configuration : Ouvrir Firefox et tapez : http://@IP_du_serveur:9090

Choisir la langue à utiliser

Page 37: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

36

Les paramètres du serveur (nom ou adresse IP du serveur)

Choisir une base de données externe

Page 38: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

37

Choisir MySQL comme base de données et saisir le nom et le mot de passe de l’utilisateur avec lequel on se connecte à la base de données ainsi que l’adresse IP du serveur de base de données et la base de

données à utiliser.

Choisir un serveur LDAP pour l’authentification

Page 39: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

38

Serveur Openldap, l’adresse du serveur LDAP et DN de la racine ainsi

que le DN de l’administrateur du serveur LDAP

Pour la suite on garde les paramètres par défaut. Arrivé à la fenêtre

suivante, on définit le compte ldap qui sera utilisé pour

l’administration d’openfire et on lui dit ajouter

Page 40: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

39

Fin de la configuration d’Openfire

Connexion à la console d’openfire

Page 41: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

40

Test de fonctionnement :

Pour effectuer le test, nous allons utiliser le client de messagerie Spark installé sur deux stations : l’un Windows XP l’autre Windows 7.

1) Lancer Spark, donner le nom et le mot de passe de l’utilisateur ldap avec lequel vous voulez vous connectez et cliquer sur login.

Ajouter un Contact Lancer une discussion

Page 42: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

41

Remarque : Les comptes créés doivent exister au préalable dans LDAP sinon ça ne marchera pas.

Page 43: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

42

VIII) SAMBA : Introduction :

Samba est une suite d'outils qui permettent de gérer le protocole SMB (appelé maintenant CIFS) sous Linux. Ce dernier est employé par Windows pour accéder aux partages réseau et aux imprimantes partagées.

Samba sait également joué le rôle de contrôleur de domaine NT. C'est un outil extraordinaire pour assurer une cohabitation parfaite entre les serveurs sous Linux et les machines de

bureautique encore sous Windows.

Une machine UNIX dotée de Samba peut être vue comme un serveur de réseau Microsoft, en proposant les services suivants :

- le partage d’un ou de plusieurs systèmes de fichier; - le partage d’imprimantes installées sur le serveur et sur ses clients ;

- l’assistance des clients dans l’exploration à l’aide du voisinage réseau ; - la prise en charge de l’authentification de clients se connectant à un domaine

Windows;

- la prise en charge de la résolution de noms WINS. - , etc.

Samba utilise deux programmes :

- smbd : qui permet le partage de fichiers et d’imprimantes sur un réseau SMB et prend en charge l’authentification et les droits d’accès des clients SMB ;

- nmbd : qui est associé au service WINS et prend en charge la résolution de noms. - Il existe aussi le programme winbind pour l’intégration de Unix dans un domaine NT

Mise en Œuvre :

Configuration : fichier /etc/samba/smb.conf

- Tâches effectuée :

o Définir samba comme contrôleur de domaine Modifier les paramètres :

workgroup = Nom_du_Domaine

netbios name = Nom_netbios_de_la_machine

admin users = nom_administrateur

security = user

passdb backend = tdnsam

domain logins = yes

domain master = yes

logon path = \\%L\profiles\\%U

logon script = %u.bat

décommenter tous les scripts de création

et de suppression d’utilisateurs et de

groupes

prefered master = yes

Dé commenter les partages [homes],

[netlogon] et [Profiles]

o Définir samba comme serveur WINS :

Page 44: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

43

wins support = yes

Suite :

Créer les répertoires de partage avec les droits 777.

Page 45: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

44

Démarrer Les services smb et nmb :

Ajouter des comptes utilisateur à samba : Le compte doit d’abord être créé sur la machine

physique.

Intégration d’une machine XP au domaine TELEINF :

- Propriétés de l’ordinateur

- Dans l’onglet Nom de l’ordinateur, cliquez sur modifier

Page 46: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

45

- Cocher Domaine : Y mettre le nom du domaine puis cliquer sur OK

- Donner un nom d’utilisateur samba ainsi son mot de passe

Page 47: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

46

- Cliquer sur OK et redémarrer la machine

- Cliquer sur CTRL + ALT + SUPP puis se connecter au domaine TELEINF avec un

des comptes LDAP

- Votre compte :

Page 48: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

47

Remarquez la présence d’une partition logique samba dans laquelle on retrouve tout le

contenu du répertoire de base de l’utilisateur

Intégration d’une machine Windows 7 au domaine TELEINF :

o La procédure est la même sauf qu’avec un Windows 7 on est obligé de modifier les registres. Cette modification peut être réalisée à l’aide Win7_Samba3DomainMember qu’on peut télécharger gratuitement à

l’adresse : http://www.general-files.com/download/gsb0f20aeh17i0/Win7_Samba3DomainMember.reg.html

Test : Favoris Réseau de Microsoft : Remarquons la présence de notre serveur samba sous le nom NetBIOS SERVEUR

Page 49: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

48

Double cliquer sur SERVEUR :

Accès à un dossier partagé sous Windows depuis une machine linux :

#mount –t cifs –o username=nom_user_windows password=Le_mot_de_passe

//@IP_de_la_Station_Windows/Nom_partage Point_de_montage

Montage automatique (autofs)

- Partage d’un dossier sous Windows XP et accès à ce dossier depuis linux

o Station Windows

Page 50: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

49

o Station Linux (machine client1)

Installer autofs pour effectuer l’auto montage : #yum install autofs

1) Le fichier /etc/auto.master : Définit le point de montage principal et le chemin d’accès au fichier d’informations sur le montage à faire

2) Précision du point de montage ( Dans le fichier /etc/auto.partage défini dans le fichier /etc/auto.master) secondaire et des informations

de montage.

3) Créer le fichier le fichier /etc/credentials.txt et y définir le nom et le mot de passe de l’utilisateur avec lequel on accède au partage.

4) Démarrer le service autofs

Page 51: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

50

5) Accéder au partage :

SAMBA + LDAP :

Configuration de samba pour qu’il s’intègre à LDAP. Nous allons commencer par installer l’outil smbldap-tools qui est un petit utilitaire qui permet une gestion simplifiée des données de l'annuaire et peut être utilisé pour gérer aussi bien les comptes Windows que les comptes

Linux.

- Configuration côté serveur LDAP :

Remarque : On possède déjà un serveur ldap qui fonctionne implique que je ne vous ferai part que des modifications qui lui seront apportées.

Pour que Samba puisse utiliser OpenLDAP comme passdb backend (gestionnaire

d'authentification), les objets de l'utilisateur dans l'annuaire devront avoir des attributs supplémentaires. Les attributs Samba sont définis dans le fichier samba.schema qui se

trouve dans le répertoire /usr/share/doc/samba-3.4.7/LDAP. Ce fichier doit être copié dans le répertoire /etc/ldap/schema.

Maintenant inclure le schéma de samba dans le fichier slapd.conf

Page 52: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

51

Redémarrer le Service LDAP

- Configuration côté serveur SAMBA :

Installation : Installer smbldap-tools

- #yum install smbldap-tools

Remplacer le fichier smb.conf de samba par celui de smbldap-tools ( il est conseillé d’avoir une sauvegarde de /etc/samba/smb.conf avant de l’écraser)

Fichier /etc/samba/smb.conf :

- Modifications à effectuer :

o Adresse du serveur LDAP, on peut en mettre plusieurs sur cette ligne pour faire une tolérance de panne

domain logons = Yes

domain master = Yes

passdb backend = ldapsam:ldap://127.0.0.1

o Le DN du Manager, l'utilisateur qui aura les pleins pouvoirs sur la base LDAP

ldap admin dn = "cn=Manager,dc=boghe,dc=mr"

o Les chemins de recherche dans la base LDAP.

ldap suffix = dc=boghe,dc=mr

ldap machine suffix = ou=Computers

ldap user suffix = ou=Users

ldap group suffix = ou=Groups

Page 53: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

52

o ldap passwd sync fait en sorte que les mots de passe Windows et Linux soient

toujours identiques.

ldap passwd sync = Yes

o Chemin pour les profiles itinérants Windows %L est le LogonServer et %U le

nom de l'utilisateur.

logon path = \\%L\profiles\%U

Suite :

Page 54: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

53

Suite :

Créer les Répertoires partagés avec les droits d’accès 777

Il vous faudra ensuite venir donner à Samba le mot de passe du manager de l'annuaire afin

qu'il puisse accéder librement aux données, ceci se fait à l'aide de la commande :

Les smbldap-tools :

Mise en œuvre :

- Configuration :

o Le fichier smbldap_bind.conf contient les informations de connexion

qu'utiliseront les smbldap-tools donc de toute évidence il faut mettre ici un compte utilisateur qui a le droit de créer des entrées diverses dans la base

Page 55: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

54

LDAP, pour le moment nous mettrons le Manager, celui qui a tous les droits.

/etc/smbldap-tools/smbldap_bind.conf :

o Le fichier smbldap.conf, contient toute la configuration des tools à proprement parler, séparé en trois grandes parties : La configuration du

domaine, l'accès au LDAP et La configuration des options par défaut Windows :

Page 56: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

55

Page 57: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

56

Création d’un utilisateur LDAP et Samba avec l’utilitaire smbldap:

L'option -a crée un utilisateur Samba pouvant se connecter sous Linux et sous Windows et

l'option -P lance l'utilitaire smbldap-passwd après la création de l'utilisateur et vous permet de saisir un mot de passe pour celui-ci.

Pour supprimer un utilisateur de l'annuaire :

smbldap-userdel identifiant

Page 58: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

57

IX) RADIUS (Remote Authentication Dial-In

User Service) Introduction:

RADIUS (Remote Authentication Dial-In User Service), est un protocole d'authentification

basé sur un système client/serveur chargé de définir les accès d'utilisateurs distants à un réseau. Il s'agit du protocole de prédilection des fournisseurs d'accès à internet car il est relativement standard et propose des fonctionnalités de comptabilité permettant aux FAI de

facturer précisément leurs clients.

Le protocole RADIUS repose principalement sur un serveur (le serveur RADIUS), relié à une

base d'identification (base de données, annuaire LDAP, etc.) et un client RADIUS, appelé NAS (Network Access Server), faisant office d'intermédiaire entre l'utilisateur final (Supplicant) et le serveur. L'ensemble des transactions entre le client RADIUS et le serveur

RADIUS est chiffrée et authentifiée grâce à un secret partagé.

Il est à noter que le serveur RADIUS peut faire office de proxy, c'est-à-dire transmettre les

requêtes du client à d'autres serveurs RADIUS.

RADIUS est un serveur de type AAA, c’est-à-dire qu’il se fait en trois étapes :

- Authentification : Permet de garantir que la personne qui tente d’accéder à une

ressource protégée dispose d’un compte valide (Identifie celui qui parle au serveur RADIUS).

- Autorisation : savoir quelles autorisations sont accordées à l’utilisateur. - Accounting : savoir ce que l’utilisateur fait. Savoir combien de temps l’utilisateur

reste connecté au système pour assurer à la fois la journalisation des accès et la

facturation.

Fonctionnement :

Si un équipement mobile a besoin d’accéder au réseau en utilisant RADIUS pour l’authentification, il doit présenter au NAS des crédits d’authentification (identifiant utilisateur, mot de passe, etc.). Ce dernier les transmet au serveur RADIUS en lui envoyant un

ACCESS-REQUEST. Le NAS et les proxy RADIUS ne peuvent interpréter ces crédits d’authentification car ces derniers sont chiffrés entre l’utilisateur et le serveur RADIUS

destinataire. À réception de cette requête, le serveur RADIUS vérifie l’identifiant du NAS puis les crédits d’authentification de l’utilisateur dans une base de données LDAP (Lightweight Directory Access Protocol) ou autre.

Les données d’autorisation échangées entre le client (le NAS) et le serveur RADIUS sont toujours accompagnées d’un secret partagé. Ce secret est utilisé pour vérifier l’authenticité et

l’intégrité de chaque paquet entre le NAS et le serveur.

Il existe 4 types de paquets pour effectuer une authentification RADIUS

- Access-Request : Envoyé par le NAS contenant les informations sur le client qui

souhaite se connecter (login/mot de passe, adresse MAC…)

- Access-Accept : Envoyé par le serveur pour autorisé la connexion si la vérification

des informations est correct.

- Access-Reject : Envoyé par le serveur pour refuser une connexion en cas d’échec de l’authentification ou pour mettre fin à une connexion.

Page 59: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

58

- Access-Challenge : Envoyé par le serveur pour demander la réémission d’un access-

request ou des informations complémentaires.

EAP (Extensible Authentication Protocol) : est un protocole conçu pour étendre les

fonctions du protocole Radius à des types d'identification plus complexes; il est indépendant du matériel du client Radius et négocié directement avec le supplicant (poste client, terminal d'accès). Ce protocole EAP est un protocole de transport des informations d’authentification

et permet d’utiliser différentes méthodes d’authentification d’où le terme « Extensible ». Le domaine d’application de ce protocole correspond donc à tous les modes de connexion

pouvant être considérés comme des connexions dites point à point telles que : connexion réseau sans fil entre un poste utilisateur et une borne d’accès, connexion filaire entre un poste utilisateur et un commutateur.

Méthodes EAP :

Les méthodes d’authentification les plus communes sur EAP sont :

- EAP-TLS : (Transport Layer Security): a été créé par Microsoft et acceptée par l'IETF comme RFC 2716. Cette méthode se base sur les certificats numériques. Le serveur et le client s’authentifie mutuellement tout en cryptant les données échangées dans cette

phase d’authentification. L’utilisation de clés publiques et privées des deux côtés va permettre de créer un tunnel sécurisé entre les deux parties, ce qui garantit notamment

l’intégrité des données. Avec ce principe, le client ne fournit pas de mot de passe, le certificat permettant l’authentification.

- LEAP : (Lightweight EAP): est une implémentation propriétaire d’EAP conçu par

Cisco Systems assurant une authentification simple par mot de passe via une encapsulation sécurisée, ce protocole est vulnérable aux attaques (cryptage md5) sauf

si l’utilisateur utilise des mots de passe complexes. - PEAP: est un protocole propriétaire développé par Microsoft, Cisco et RSA Security.

ici seul le serveur d’authentification dispose d’un certificat numérique. Il le transmet

au client qui va pouvoir l’authentifier. Un tunnel sécurisé TLS est alors établit entre les deux parties. Le client va s’authentifier via une méthode EAP quelconque mais

bénéficiera de l’encapsulation sécurisée des données dans le tunnel TLS.

Authentification :

Page 60: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

59

On utilise le protocole EAP pour véhiculer l'authentification lors d'une session, EAPOL

(Extensive Authentication Protocol Over Lan) entre la station et le point d'accès et EAP entre le PA et le serveur RADIUS.

Mise en Œuvre de Radius :

Configuration du serveur Radius :

- Installation : #yum install freeradius

- Fichier de configuration : /etc/raddb/sites-available/default

- Paramétrer les bases d’informations : Dans notre cas on a besoin d’utiliser

LDAP et les fichiers unix (passwd, group et shadow)

- Préciser les paramètres de LDAP (l’adresse de serveur, le dn et le mot de passe de l’administrateur) : fichier /etc/raddb/modules/ldap

- Définir le Secret partagé avec les clients : Fichier /etc/raddb/clients.conf - Partager un secret avec un client : Syntaxe :

- Client Adresse_IP_du_Client {

secret = secret_partagé

}

- Partager un secret avec tous les clients radius du réseau (Notre cas)

- Client Adresse_Réseau/Prefix {

secret = secret_partagé

}

Page 61: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

60

Test de fonctionnement :

- Sur le serveur : Lancer la commande radiusd –X

Le système nous répond qu’il est prêt pour le traitement de requêtes

- Interrogation de radius depuis la station client1 :

Syntaxe de la commande :

#radtest nom_utilisateur mot_de_passe @IP_Serveur Port_ecoute(1812)

secret_partagé

Access-Accept indique que le serveur à accepter la requête.

Page 62: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

61

- Côté serveur :

Précise que :

- l’utilisateur amadia est autorisé,

- Le service utilisé par amadia, - Le DN de amadia,

- Que la requête est acceptée - , etc.

Puis il revient en mode écoute en précisant encore qu’il est prêt pour le traitement de requêtes.

Page 63: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

62

X) KERBEROS Introduction :

Kerberos est un protocole d’authentification réseau basé sur l’utilisation de clés partagées. Il est construit sur le postulat que le réseau est non sécurisé et dangereux, notamment parce qu’il est le lieu d’écoute frauduleuse et d’usurpation d’identité. Dans le modèle Kerberos, le

contrôleur de domaine, KDC ou Kerberos Domain Controler en anglais, est l’autorité de certification ultime. Ce serveur maître d’authentification peut être secondé par des serveurs

disposant d’une copie de la base de données d’authentification ; on parle alors d’esclaves.

Le serveur Kerberos gère une base de données de couples composés d’un « principal » et d’une clé privée associée. Ce « principal » représente en général un compte utilisateur ou un

serveur applicatif. La base de données Kerberos n’est donc pas une base de données de comptes utilisateur telle LDAP. Les informations qu’elle contient sont réduites et propres au

fonctionnement du système d’authentification.

Kerberos utilise des techniques de cryptographie à tous les niveaux. Les communications par exemple sont chiffrées et évitent ainsi l’écoute frauduleuse. De plus, à aucun moment dans les

phases d’authentification le mot de passe n’est transmis sur le réseau. Il n’est en effet pas nécessaire pour authentifier un utilisateur que celui-ci fasse parvenir son mot de passe

jusqu’au système d’authentification comme cela est le cas pour des systèmes plus classiques. Dans la mesure où le mot de passe est partagé par les deux parties, il existe des mécanismes permettant de vérifier la détention du secret par l’autre partie sans que ce secret soit transmis.

Fonctionnement :

Kerberos utilise la notion de « ticket » pour éviter à un utilisateur de devoir s’authentifier constamment aux différents serveurs auxquels il se connecte. Les tickets d’octroi de tickets

d’authentification (TGT) sont obtenus auprès d’un serveur d’authentification (SA). En revanche, les tickets d’octroi de service TGS (Ticket Granting Server) afin d’accéder à un

service donné sont obtenus auprès d’un serveur de tickets TGS. Le serveur ne voit jamais les données d’authentification, comme les couples ID/mot de passe. De plus, le client « kerberisé

» gère les échanges de façon transparente, ce qui fait de Kerberos un authentique système

d’authentification unique. Un système Kerberos est donc constitué d’un serveur

d’authentification SA, d’un serveur de tickets TGS et de clients et de serveurs de service,

tous utilisateurs du service Kerberos.

Les étapes pour obtenir l’accès à un service par un utilisateur sont les suivantes :

L’utilisateur émet une requête au serveur SA afin d’obtenir un ticket d’octroi de

ticket (TGT).

Le serveur SA envoie en retour, après validation des droits d’accès, un ticket « TGT »

et une clé de session chiffrés avec la clé dérivée du mot de passe de l’utilisateur. Ce ticket autorise le client à faire des requêtes auprès du TGS.

Le poste de travail demande à l’utilisateur son mot de passe et l’utilise pour déchiffrer le message émis par le serveur SA. Il envoie alors au serveur TGS une requête de

service en émettant le ticket « TGT » et un authentifiant (nom, adresse IP, adresse, heure). Le ticket « TGT », préalablement chiffré par le serveur SA avec une clé

uniquement connue des serveurs SA et TGS, contient la clé de session.

Le serveur TGS déchiffre le ticket et l’authentifiant, crée le ticket pour le service demandé et l’envoie au poste. Ces données sont chiffrées avec la clé de session

partagée maintenant par le serveur TGS et l’utilisateur. Le ticket de service a été

Page 64: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

63

préalablement chiffré par le serveur TGS avec une clé uniquement connue du serveur

de service et du serveur de tickets TGS.

Le poste envoie le ticket et l’authentifiant au serveur désiré.

Le serveur vérifie le ticket et l’authentifiant, puis octroie l’accès au service.

Mise en Œuvre :

Installation: #yum install krb5-server krb5-workstation krb5-libs pam_krb5

- Configuration :

o Fichier /etc/krb5.conf dans ce fichier, nous allons remplacer les noms realm par celui du nom du domaine.

Page 65: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

64

o Le fichier /var/kerberos/krb5kdc/kdc.conf : kdc.conf est le fichier de

configuration du serveur de domaine Kerberos, ou Kerberos Domain Controler (KDC). Il contient les informations nécessaires au fonctionnement du serveur

Kerberos, comme le nom de domaine, le chemin d’accès ou encore des directives de logs.

o Le fichier /var/kerberos/krb5kdc/kadm5.acl : Ce fichier contient la définition des droits particuliers de chacun des comptes. Dans la terminologie

Kerberos, un compte est un principal. L’exemple suivant donne une configuration minimale de ces droits.

Le principal « amadou/admin » possède tous les droits sur la base de données Kerberos. C’est l’administrateur du système d’authentification

o Création de la Base de données Kerberos

o Ajout d’un compte administrateur Kerberos : À cette étape, la configuration du serveur Kerberos (ou KDC) est

achevée. Toutes les opérations ont été réalisées localement sous le

compte administrateur « root » du serveur Kerberos. Pour administrer à distance la base de données Kerberos, c’est-à-dire à partir de n’importe

quelle machine utilisant le système d’authentification, un compte doit être créé (dans cet exemple, il s’agit de celui qui a été défini dans le

Page 66: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

65

fichier kadm5.acl lors de l’étape précédente). Ceci est réalisé en

exécutant la commande kadmin.local sous le compte privilégié « root ».

o Démarrer les services :

Page 67: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

66

XI) Le Filtrage : IPTABLES Introduction :

Un service réseau est particulièrement exposé dans la mesure où la menace ne vient plus seulement des comptes définis sur la machine où il s’exécute, mais également de n’importe quelle machine capable d’y accéder. Dans ce cas, La gestion des accès aux différentes

ressources système est capitale. Avec une installation par défaut, tout est permis ou presque. Une bonne politique est au contraire de systématiquement limiter les accès au maximum, pour

ensuite ouvrir l’utilisation des services lorsque les besoins s’en font sentir.

L’objectif du filtrage est d’assurer une protection par défaut des machines de l’entreprise. La mise en place d’un pare-feu ou d’un routeur filtrant en entrée d’un site permet de limiter

considérablement les agressions extérieures. Les scans réseau, par exemple, seront rejetés par un pare-feu sans avoir atteint les machines qu’ils visaient. De la même façon, si une machine

interne offre un service qui présente une vulnérabilité, celui-ci sera protégé par le pare-feu. Ainsi, l’ouverture d’un service au monde Internet pourra n’être autorisée par l’administrateur réseau qu’après s’être assuré que la version et la configuration de ce dernier ne présentent

aucune faille. Enfin, à chaque réception d’un nouvel avis de sécurité, il sera possible de vérifier les quelques machines offrant ce service à l’extérieur du réseau et le cas échéant, de

leur appliquer les mises à jour recommandées.

L’utilisation d’un pare-feu, IPtables sur les derniers noyaux Linux, vient améliorer la défense réseau initiée par le paramétrage système. Rappelons que lors de l’installation, l’option

firewall --high du fichier de profil KickStart, permet de définir un filtrage très restrictif pour le système mis en configuration minimale.

Fonctionnalités d’IPtables

IPtables fournit trois types de fonctionnalités :

- filtrage : statique (stateless) ou dynamique (stateful);

- NAT: traduction d’adresses IP, Source NAT (SNAT), Masquerade, Destination NAT (DNAT), redirection de port;

- marquage et manipulation de paquets.

Tables et chaînes

À chacune des trois fonctions d’IPtables correspond une table qui sert à programmer cette

fonction.

- FILTER : pour les règles de filtrage ; - NAT: pour les règles de traduction d’adresses ;

- MANGLE: pour la manipulation et le marquage de paquets.

Chaque table contient un certain nombre de chaînes qui contiennent à leur tour une série de

règles. La chaîne et les règles qu’elle contient s’appliquent à un moment précis (avant le routage, après le routage…) du parcours du paquet et déterminent le futur du paquet (transmis, intercepté…).

Page 68: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

67

Les chaînes peuvent s’appliquer à cinq moments dans la vie du paquet :

- PREROUTING : le paquet se présente sur une interface de la machine. Les chaînes appliquées sur PREROUTING seront exécutées avant d’analyser l’adresse IP du

paquet pour prendre la décision de routage. Le cas d’utilisation typique est le DNAT. - POSTROUTING : les chaînes appliquées sur POSTROUTING seront exécutées juste

avant d’envoyer le paquet sur l’interface de sortie, alors que le paquet est déjà routé.

Le cas d’utilisation typique est le SNAT. - FORWARD : le paquet n’est pas destiné à la machine locale, mais il doit être relayé

sur une autre interface. Les chaînes appliquées sur FORWARD ne concerneront pas les paquets à destination ou venant de la machine locale.

- INPUT : les chaînes appliquées sur INPUT concerneront tout paquet à destination de

la machine locale. - OUTPUT : les chaînes appliquées sur OUTPUT concerneront tout paquet en

provenance de la machine locale.

Syntaxe de la commande iptables :

#iptables table chaine selection action

Filter A INPUT/OUTPUT ACCEPT

Table:-t NAT chaine:- D FORWARD action: -j REJECT

Mangle L {POST|PRE}ROUTING/MASQUERADE DROP

i eth0: interface entrant;

o eth1: interface sortant;

s @IP: adresse ip source

Selection: - d @IP: adresse ip de destination

p : protocole

-dport : port de destination

-sport : port source

Page 69: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

68

Traduction d’adresse (NAT) :

Architecture : Nous possédons un réseau comportant un serveur (nommé monserveur) et trois stations clientes. Le serveur possède deux cartes réseaux, une connectée au réseau local

192.168.2.0/28 (eth0) que nous avons utilisé tout le long des travaux effectués précédemment et l’autre connectée au réseau 192.168.1.0/24 (eth1) le bridge permettant l’accès à internet. Les stations clientes non pas accès à internet, donc nous allons faire de notre serveur un

routeur et utiliser le Nat pour la translation d’adresse afin que les stations clientes puissent passer par le serveur pour accéder à internet.

Mise en œuvre de NAT :

1) Modifier la passerelle au niveau du serveur dhcp. La nouvelle passerelle est l’adresse IP de l’interface eth0 du serveur (192.168.2.2)

Page 70: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

69

2) Autoriser les paquets provenant d’une interface à aller vers l’autre interface

3) Faire du POSTROUTING

Côté chez le client :

Page 71: L’ Administration des Réseaux en Pratique

Amadou Daouda Dia

70

Aujourd’hui, les réseaux d’entreprise peuvent nécessiter la mise en place de la plupart des

travaux effectués précédemment et surtout la mise en place d’une gestion centralisée des

ressources d’une entreprise (SAMBA + annuaire LDAP) est primordiale. A cela s’ajoute la

sécurité qui est essentielle pour préserver la confidentialité, peut être assurée par le contrôle et

la journalisation de l’accès aux ressources via RADIUS ou KERBEROS. J’espère que ce

document vous a aidé à comprendre le fonctionnement de ses différents services et à mettre en

œuvre un réseau fonctionnel.