Archives pour la catégorie Le réseau

Serveur Internet sous Debian (Apache 1.3.x)

Cet article a pour objectif de vous aider à mettre en place un serveur internet complété par une base de données MySQL et un interpréteur PHP le plus rapidement possible sans avoir besoin de trop de préparation. Ce installation concerne les logiciels Apache 1.3.x, PHP 4.3.10 et MySQL 4.0.24.

1 – Installer Debian en mode console

1.2 – Quelle version

Si vous désirez mettre votre serveur web en production et que, par conséquent, vous voulez qu’il soit sécurisé au maximum, je vous conseille d’utiliser une Debian Stable (actuellement nommée Sarge). Dans le cas où vous désirez juste faire quelques tests sur un réseau local où vous n’êtes pas préoccupé par la sécurité, vous pouvez vous pencher sur une Debian Testing (actuellement nommé Etch).

1.2 – Plus d’informations sur l’installation

Vous pouvez utiliser l’installateur réseau de la Sarge disponible ici. Bien que je ne veuille pas m’étendre sur l’installation d’une Debian (cela fera l’objet d’un autre article) merci de prendre en considération ces quelques points:

  • N’installer ni gestionnaire de fenêtre ni interface graphique
  • En début d’installation choisissez de préférence un système de fichiers journalisé.
  • En fin d’installation n’exécuter ni tasktel ni dselect.
  • L’applicatif MC (Midnight Commander) peut vous simplifier la vie.

2 – Installer le serveur web Apache 1.3.33-6

2.1 – Récupérer les paquets et les installer

Comme d’habitude sous debian, rien de bien sorcier: il suffit de taper ceci: apt-get install apache à l’invite de commande.

2.2 – Comment le configurer

Toute la configuration d’Apache est localisée centralisée dans un seul fichier: /etc/apache/httpd.conf. Comme dans beaucoup de fichiers de configuration sous GNU/Linux, les commentaires sont précédés du symbole « # »

Exemple de fichier /etc/apache/httpd.conf :

# CONFIGURATION DE BASE 
#---------------------- 
ServerType standalone 
ServerRoot /etc/apache 
LockFile /var/lock/apache.lock 
PidFile /var/run/apache.pid
# PidFile: fichier conservant le numéro de processus d'apache
ScoreBoardFile /var/run/apache.scoreboard 
ResourceConfig /dev/null 
AccessConfig /dev/null 
#Les deux lignes précédentes limite l'accès à la configuration d'Apache 
# OPTIONS DE PERFORMANCE 
#----------------------- 
# Toutes ces options gèrent les accès au serveur Web 
Timeout 300 
KeepAlive On 
MaxKeepAliveRequests 100 
KeepAliveTimeout 15 
MinSpareServers 5 
MaxSpareServers 10 
StartServers 5 
MaxClients 150 
MaxRequestsPerChild 100 
# CHARGEMENT DES MODULES 
#----------------------- 
# Charge les modules d'apache 
LoadModule config_log_module /usr/lib/apache/1.3/mod_log_config.so 
# config_log_module: module de gestion des journaux (logs) 
LoadModule mime_module /usr/lib/apache/1.3/mod_mime.so 
# mime_module: détermination du type de document selon les extensions du fichier 
LoadModule dir_module /usr/lib/apache/1.3/mod_dir.so
# dir_module: gestion du répertoire racine 
LoadModule access_module /usr/lib/apache/1.3/mod_access.so 
# access_module: prise en charge des droits d'accès 
LoadModule auth_module /usr/lib/apache/1.3/mod_auth.so 
# PARAMETRES GENERAUX 
#-------------------- 
# Paramètres du serveur à proprement parler 
Port 80 
User www-data 
Group www-data 
# Utilisateur et groupe utilisés par Apache pour accèder aux services du serveur 
ServerAdmin webmaster@MonServeur.com 
# ServerAdmin: coordonnées du responsable du serveur 
UseCanonicalName Off 
ServerSignature Off 
HostnameLookups Off 
ServerTokens Prod 
ServerName MonServeur 
# ServerName: nom du serveur 
DocumentRoot /var/www 
# Racine des sites internet 
# CONTROLES D'ACCES 
#------------------ 
# Droits d'accès à la racine du serveur via internet 

     Options None
     AllowOverride None
     Order deny,allow
     Deny from all 
 
# Droits d'accès au répertoire internet 

     Order allow,deny
     Allow from all
     Options FollowSymlinks
  
# OPTIONS DES MODULES 
#-------------------- 

     # Définition des types de fichier index
     DirectoryIndex index.html index.htm 
 

     # Association des types de fichier
     TypesConfig /etc/apache/conf/mime.types
     # Fichier annexe spécifiant les types de fichiers
     DefaultType text/plain
     AddEncoding x-compress Z
     AddEncoding x-gzip gz tgz
     AddType application/x-tar .tgz 
 
# JOURNAUX 
#--------- 
# Formatage de fichiers de log 
LogLevel warn 
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" 
combined LogFormat "%h %l %u %t \"%r\" %>s %b" 
common LogFormat "%{Referer}i -> %U" 
referer LogFormat "%{User-agent}i" agent 
ErrorLog /etc/apache/logs/error_log 
CustomLog /etc/apache/logs/access_log combined

Un fois ces modification effectuées, redémarrez Apache afin d’une part qu’elles soient prises en compte et, d’autre part, être sûr que le fichier fonctionne.

  • Les fichier de logs doivent pré-exister quitte à créer le repertoire correspondant avec mkdir et le fichier avec touch
  • Ce fichier est disponible ici

3 – Installer l’interpréteur PHP 4.3.10

3.1 – Récupérer les paquets et l’installer

Installez PHP4 avec apt-get install php4 (Pour PHP5 ce n’est possible qu’en ajoutant le dépôts de dotdeb à apt).

3.2 – Comment connecter PHP à Apache

Pour « connecter » PHP à Apache vous devez modifier le fichier de configuration d’Apache (voir ci-dessus) tel qu’apparaisse en plus les lignes suivantes:

  1. Dans le chargement des modules, pour charger automatiquement le module PHP4 avec Apache, rajoutez la ligne suivante: LoadModule php4_module /usr/lib/apache/1.3/libphp4.so
  2. Et, dans les options des modules: AddType application/x-httpd-php .php .php3 DirectoryIndex index.php index.php3

3.3 – Configurer PHP4

Le fichier de configuration se localise ici: /etc/php5/apache/php.ini La configuration de base devrait suffire pour une utilisation classique. Dans le cas contraire je vous invite à consulter la documentation du site officiel

4 – Installer le gestionnaire de base de données MySQL 4.0.24

4.1 -Récupérer les paquets et les installer

Similairement à PHP… apt-get install mysql-server mysql-common mysql-client

4.2 – Comment le configurer en console

Pour lancer la commande d’administration de mysql il suffit de taper mysql -p à l’invite de commande (quit permet d’en sortir). C’est ici que vous pouvez créer vos tables, les effacer etc. Personnellement je préfére utiliser l’interface web de PHPMyAdmin. Cependant, par mesure sécurité, il est impératif, et ce dès l’installation de MySQL de changer le mot de passe root (administrateur) de MySQL avec la commande mysqladmin -u root password 'MonNouveauMotDePasse'

4.3 – Connecter MySQL à Apache et PHP

Il n’est pas nécessaire de connecter MySQL à Apache puisque celui-ci est incapable d’y accéder directement. Par contre, PHP doit être capable de se connecter au serveur MySQL pour ce faire il faut installer un package spécifique: apt-get install php5-mysql

5 – Conclusion

Votre serveur web est prêt à accueillir vos site. Il suffira juste de la placer au bon endroit (/var/www/) et d’y accéder par un navigateur internet en tapant l’adresse ou le nom du serveur.

IPTables – Un firewall pour Linux

GNU/Linux est reconnu depuis longtemps comme un système stable et sécurisé. Ceci est en partie dû à l’intégration d’instructions à l’intérieur même du kernel de Linux. Afin de mettre en place cette sécurité il suffit de mettre en place les scripts correspondants. Le script d’Arno, relativement facile à mettre en place et adaptable à vos besoin, permet d’activer une de ses instructions du noyau: IPTables.

Nota: toutes les manipulations effectuées ici on été testées avec succès sur Debian et Ubuntu, le site officiel d’Arno est ici.

1 – Introduction

1.1 – Le routage trois pattes

Lorqu’on parle de routage, on considère généralement un certains nombre de pattes. Il s’agit donc, dans ce cas, noeud entre trois réseaux définis en LAN, WAN et DMZ

Pour mémoire…

  • Le LAN est le réseau local
  • Le WAN est le réseau Internet
  • La DMZ est la zone démilitarisée

Le rôle de la DMZ est de recevoir toutes les requêtes provenant du WAN et n’ayant pas le droit d’accéder au LAN, on y place généralement les serveurs auxquels on veut accéder depuis Internet, comme les serveurs Web, Mail etc.

1.2 – L’intérêt du script d’Arno

IPTables est un élément du noyau Linux qui a pour fonction d’assurer le filtrage du trafic réseau comme n’importe quel firewall. Cette fonctionnalité, implémentée à un niveau très bas du système d’exploitation est très performante mais nécessite un configuration particulièrement complexe car exhaustive. Le script d’Arno, comme son nom l’indique, est un script réalisé par « Arno » qui à pour fonction de simplifier au maximum l’utilisation d’IPTables sans qu’il soit nécessaire de connaître par coeur la syntaxe de configuration de ce dernier. Sa mise en place relativement facile est intéressante pour tout système de routage composant jusqu’à trois pattes (LAN, WAN et DMZ).

2 – Mise en place du script

2.1 – Prérequis

  • Un noyau avec IPTables activé en module ou en dur
  • L’interpréteur /bin/sh (installé partout par défaut)
  • Un certain nombre d’application (ifconfig, modprobe, grep, uname, sed, date et cut)
  • Nota: IPTables n’est pas compatible avec IPChains

2.2 – Récupération

Tout ceci tient en un petit fichier compressé de 50Ko:

wget http://rocky.eld.leidenuniv.nl/iptables-firewall/arno-iptables-firewall-1.8.4d-stable.tgz 

2.3 – L’archive en details

Commencez donc par la décompresser:

tar xvzf arno-iptables-firewall-1.8.4d-stable.tgz

Contenu non exaustif de cette archive:

  • CHANGELOG – Modifications depuis la version précédente
  • README – Guide de mise en place
  • fwfilter – Filtre pour la consultation des logs
  • gpl_licence.txt – Texte de la licence GPL
  • iptables-firewall.conf – Fichier de configuration
  • iptables-firewall.conf-exemple – Exemple de configuration
  • arno-iptables-firewall – Le script lui même
  • syslog.conf.* – Exemple de configuration des logs pour différentes distributions

3 – Installation et configuration

3.1 – Copie des fichiers

  • Mise en place du script
    sudo cp arno-iptables-firewall /etc/init.d/
  • Mise en place du fichier de configuration:
    sudo cp arno-iptables-firewall.conf /etc/
  • Afin d’assurer un minimum de sécurité, il est nécessaire de reserver les droit de ce fichier pour l’utilisateur root:
    sudo chown root /etc/arno-iptables-firewall.conf
    sudo chmod 600 /etc/arno-iptables-firewall.conf
  • Préparation du lancement d’IPTables au boot:
    sudo update-rc.d arno-iptables-firewall start 99 2 . stop 00 2 0 1 6 .
  • Toute la configuration d’IPTables s’effectuera dans ce fichier(/etc/iptables-firewall.conf).

3.2 – Configuration des interfaces réseau

La premiére étape de configuration concerne bien sûr la déclaration des interfaces réseau. Comme il est dit en introduction, ce script peut gérer jusqu’à trois interfaces, mais, en fonction des besoins, vous pouvez en activer moins. Dans le cas d’un seul ordinateur connecté à internet que l’on veut protéger avec le Firewall, il suffit de configurer l’interface WAN. À partir du moment où vous faites du partage de connexion, il est judicieux de pousser un peu plus loin la configuration du script

WAN: La connexion vers l’extérieur

Sa configuration s’effectue dans la rubrique External (internet) interface settings. Vous devez y renseigner votre mode de connexion à Internet, et les eventuels paramétres IP. Si vous vous connectez en ppp, comme avec l’ADLS, il n’est généralement pas nécessaire d’activer le DHCP, l’adresse IP fixe ou le sous-réseau. Par contre, dans le cas d’un connexion permanente par le câble, le ppp ne sera pas activé mais le le DHCP oui. À vous de voir en fonction de votre fournisseur d’accés et de votre abonnement. Sachez toutefois que la configuration d’IPtables ne vous dispense pas de configurer votre connexion internet avec votre outil habituel

Vous trouverez ci-dessous un exemple de connexion avec pppoe (ADSL avec une 9Box après avoir utilisé ppoeconf et configuré mon /etc/network/interfaces)

###############################################################################
# External (internet) interface settings                              
###############################################################################
# Mon type de connexion à internet
EXT_IF="ppp0"
# Mon prestataire ne me distribue pas d'IP en dehors du pppoe...
EXT_IF_DHCP_IP=0
# Je ne dispose pas d'IP fixe
EXTERNAL_NET=""
EXT_NET_BCAST_ADDRESS=""

LAN: Le réseau interne

Il vous faut indiquer ici le nom de votre carte réseau connectée au LAN (si vous n’en avez qu’une il s’agit forcement de eth0), ainsi que votre sous réseau. Pour l’option de broadcast, je ne saurais que vous encourager à la laisser telle quelle.

###############################################################################
# Internal (LAN) interface settings                                           #
###############################################################################
# Mon LAN est connecté à ma carte eth0
INT_IF="eth0"
# Mon sous-réseau (rien de très exotique !)
INTERNAL_NET="192.168.0.0/24"
# Rien de particulier pour le broadcast
INT_NET_BCAST_ADDRESS=""

La DMZ pour les serveurs

C’est ce qu’il y a de plus simple à configurer, il suffit d’indique de nom de la carte réseau concernée et l’adresse du sous réseau. Dans mon cas ce sera rapide car elle n’est pas activée:

###############################################################################
# DMZ (aka DeMilitarized Zone) settings (EXPERT SETTINGS!)                    #
###############################################################################
# Pas de DMZ donc pas d'interface
DMZ_IF=""
# Ni de sous réseau
DMZ_NET=""

Le routage NAT pour partager la connexion Internet

Le routage NAT permet d’activer le partage de la connexion à Internet, c’est lui qui autorisera vos clients à sortir effectuer des requêtes vers Internet. Dans la plupart des cas il suffit de l’activer. Par contre, si vous désirez activer le NAT pour votre DMZ je vous invite à suivre les instructions fournies avec le script

###############################################################################
# NAT (Masquerade, SNAT, DNAT) settings                                       #
###############################################################################
# Le NAT est activé
NAT=1
# Une seule carte d'activée donc pas de Multi-Route
MASQ_MULTI_ROUTE=0
# La configuration par défaut des options avancée me va très bien
# NAT_STATIC_IP="193.2.1.1"
NAT_INTERNAL_NET="$INTERNAL_NET"
# Ma DMZ n'est pas activé donc...
NAT_TCP_FORWARD=""
NAT_UDP_FORWARD=""
NAT_IP_FORWARD=""

3.3 – Configuration avancée

La configuration générale

Dans la rubrique « General settings » vous trouverez un certain nombre d’options concernant toutes vos interfaces. Éditez les en fonction de vos besoins. Je ne peux pas vous donner d’exemple, il s’agit là de vos préférence personnelles. Jetez-y un oeuil tout de même car celà peut servir, à titre d’exemple, le protocole IRC est désactivé. Il en va de même pour la rubrique « Logging options - All logging is rate limited to prevent log flooding » qui concerne la créations de journaux, cette fonction est limitée par défaut afin d’éviter une surcharge de la machine.

Ouvrir des ports

Par défaut tout est fermé, il faut donc ouvrir les ports dont on a besoin. Voici un aperçu des lignes du fichier à éditer. Dans tous les cas de nombreuses informations sont présentes dans le fichier lui même. La configuration du firewall est principalement couverte par deux rubriques du fichier de configuration. La première « Firewall policies for the LAN (EXPERT SETTINGS!)  » concerne les accés de l’extérieur vers le LAN tandis que la seconde « Firewall policies for the DMZ (EXPERT SETTINGS!)  » concerne les ouvertures vers la DMZ.

La syntaxe est ici relativement simple à comprendre, les variables étant des IP ou des numéros de ports séparés par un espace. Les plages de port ou d’IP sont indiquées avec le symbole :.

  • OPEN – Concerne une autorisation
  • DENY – Concerne une interdiction
  • TCP – Applique l’autorisation ou l’interdiction en rapport au protocole TCP
  • UDP – Applique l’autorisation ou l’interdiction en rapport au protocole UDP
  • IP – Applique l’autorisation ou l’interdiction en fonction d’une adresse IP
  • HOST – Applique l’autorisation ou l’interdiction à un hôte en particulier

Les autres options

Les parties du script que je n’aborde pas ici, concernent des réglages beaucoup plus fins et sécifiques à vos besoins en particulier. Ils se configurent, grosso-modo, de la même manière que les options citées ci-dessus

Paramètres de arno-iptables-firewall

Utilisation: /etc/int.d/rc.iptables { start | stop | restart | breread | status }

  • start – Démarre le firewall
  • stop – Arrête le firewall
  • restart – Redémarre le firewall
  • breread – Relire les hôtes bloqués
  • status [-t {table}] [chain] – Afficher les règles du firewall ([chain] et [-t {table}] sont optionnels)

Préparer Mac OS X 10.3 pour Fink et DarwinPorts

Pour utiliser les nombreux logiciel issus d monde Linux et adapté à l’environnement de Mac OS X.3 vous devez préparer un minimum votre environnement de travail. C’est l’objet de cet article qui vous guidera pas à pas à tout au long de l’installation de X11 et de XCode 1.5.

Nota: les tests ont été réalisés sous Mac OS X 10.3.9

1 – Pré-requis

1.1 – Avez vous le sous-système BSD?

Le sous système BSD est un ensemble d’outils en ligne de commande issus du monde *BSD. Cet ensemble de logiciels et généralement installé par défaut sur tous les Mac OS X récents. Cependant vous pouvez vérifier sa présence de la manière suivante:

  • Dans le Finder
  • Cliquez sur Aller > Aller au dossier
  • Entrez « /Library/Receipts/ » et valider
  • Si le sous-système BSD est installé vous devriez y trouver les paquets BSD.pkg et BSDSDK.pkg

1.2 – Comment installez le sous-système BSD

Suivez la procédure ci-après :

  • Insérez le CD 1 de Mac OS X dans votre ordinateur
  • Allez dans le répertoire Optional Installs
  • Lancer l’installation de BSD Subsystem
  • Suivez les indications de l’installateur

1.3 – Créer un compte développeur chez Apple

Pour récupérer les dernière version des outils de développement nécessaire – notamment – à la compilation des applications portées de Linux à Mac OS X, il est nécessaire que vous créiez un compte utilisateur sur le site qu’Apple destine au développeurs. Cette inscription, obligatoire, vous engage uniquement à ne pas divulguer d’informations à propos de logiciel en phase de bêta test (comme Tiger avant sa sortie). Cette inscription est gratuite.

Pour procéder à l’ouverture d’un compte ADC (Apple Developper Connect), connectez-vous à Apple Connect puis cliquez sur « Join Now » et suivez les instructions.

2 – Installation de X11

X11 est le serveur graphique destiné à gérer l’affichage des logiciels à l’exception des logiciels de type console qui s’affichent en mode texte. Le X11 d’Apple est un portage du non moins fameux XFree86 de Linux et joue donc le même rôle.

2.1- Récupération et installation

Pour récupérer la dernière version de cet utilitaire, je vous invite à passer par le site Apple et à vous rendre sur la page correspondante.

Téléchargez X11 et installez le tout simplement en suivant les instructions.

2.2 – Configuration

Il n’y a pas beaucoup de chose à réaliser pour configurer X11, ceci dit, tel quel après l’installation il présente quelques limites qui, à l’usage, peuvent poser problème. D’une part, au niveau de la gestion de fenêtre: on active une fenêtre en cliquant dessus. Dans un environnement normal cela n’est pas problématique mais ça devient vite lassant lorsqu’on utilise des logiciels multi-fenêtres (comme [The GIMP->art5] par exemple), il est donc judicieux que la fenêtre soit celle qui est simplement survolée par la souris, on appelle cette fonctionnalité « focus follow mouse ». D’autre part, un message de confirmation s’affiche toujours lorsque l’on quitte X11 et qu’une application tourne encore, il faut donc d’abord fermer les application puis X11, je vous propose de supprimer ce message d’alerte.

Si vous voulez le faire vous même…

  • Lancez le terminal
  • Saisissez defaults write com.apple.x11 wm_ffm trueet validez pour activer « l’autofocus »
  • Saisissez defaults write com.apple.x11 no_quit_alert true et validez pour supprimer l’alerte de sortie de X11

Si vous voulez le faire de manière automatique…

Vous pouvez utiliser l’AppleScript « GimpHack » que j’ai créé à cet effet.

2.3 – Utilisation courante

Si vous lancez souvent des applications dans le terminal de X11, une fonctionnalité de ce dernier peut vous faciliter la vie. En effet, X11 intègre un petit utilitaire qui permet de pré-configurer une liste des logiciels que l’on utilise fréquemment, il est même possible de leur attribuer un raccourci clavier. Cette fonctionnalité se trouve dans le menu « Applications » de X11. Je vous laisse essayer…

3- Installation de XCode 1.5

3.1 – Récupération des fichiers

Vous devez récupérer sur l’ADC les deux fichiers nécessaires à l’installation de « XCode Tools 1.5 » et de la mise à jour du GCC « November 2004 gcc 3.3 Updater ».

Vous les trouverez dans la rubrique Downloads / Developer Tools

sdsdsdsd

3.2 – Installation personnalisée de XCode Tools 1.5

Commencez par installer XCode Tools 1.5. Attention, si, par la suite, vous envisagez d’utiliser le système de ports DarwinPorts pour des application graphiques, il est indispensable que vous choisissiez l’installation personnalisée et que vous ajoutiez l’option X11 SDK.

J’ai passé un certain temps à chercher quelles options étaient indispensables au bon fonctionnement de Fink et de DarwinPorts afin d’en installer le moins possible. Comme les images sont plus parlantes qu’un long discours je vous conseille de vous référer à celle ci-après si vous voulez installer le minimum…

3.3 – Mise à jour de CGG

L’installation de GCC 3.1 est optionnelle mais, dans certaines conditions, elle est nécessaire à la compilation d’utilitaires incompatibles avec GCC 3.3

A la fin de cette installation, pensez à mettre votre GCC à jour en installant le « November 2004 gcc 3.3 Updater ». Là encore, il suffit de suivre les instructions.

4 – Activer l’utilisateur root

Sous Mac OS X, le super utilisateur, le fameux et grandiose compte root n’est pas activé. En effet, les intimes de la ligne de commande comprendront que, tel quel, l’utilisateur admin de votre Mac ne peut qu’exécuter des commandes en tant que root (par l’entremise de la commande sudo). Cependant il reste possible – et assez simple – d’activer l’utilisateur root, cependant, celà n’est absolument pas obligatoire voire même déconseillé au débutants

Je tiens à vous rappeler qu’utiliser le compte root se fara à vos risques et périls, par conséquent, je ne conseille d’activer ce compte qu’aux utilisateurs experts.

Lancez le Gestionnaire NetInfo (Applications > Utilitaires > Gestionnaire NetInfo), commencez par vous authentifier dans le menu sécurité, puis il ne vous reste plus qu’à Activer l'utilisateur root.

Remerciements: Michèle Garoche pour ses nombreuses corrections.

Présentation des VLANs

V.L.A.N. [n.m., anglicisme, prononcer « Vé-Lane »]: Virtual Local Area Network ce qui veut dire en français Réseau Local Virtuel. Un Vlan est un réseau local délimité non pas par un jeu de connectique matériel mais par un système intelligent qui permet, par un système global unique, d’isoler plusieurs réseaux.

1 – La notion de VLAN

1.1 – Principe

A l’origine des temps, le meilleur moyen de diviser un réseau local ethernet, et ce, quel que soit le système d’exploitation utilisé, était de le découper physiquement: un réseau ? un hub ou seule ligne BNC. deux réseaux ? deux hubs etc. La notion de VLAN, introduite par la norme IEEE 802.1 en 1998, désigne un processus permettant de scinder les réseaux non pas au niveau physique mais au niveau logique. Permettant ainsi, sur une architecture commune, d’isoler plusieur réseaux autonomes.

1.2 – Différents niveaux

Il existe Trois types de VLANS:

  • Les VLANs Ports reposant sur l’administration des ports des appareils de connectique.
  • Les VLANs Mac basé sur une table d’adresse MAC des interfaces réseaux.
  • Les VLANs de niveau 3 basés sur l’hétérogénéité des protocoles ou les sous-réseaux logiques

Ce document traite VLANs de type 1.

1.3 – Objectif

Le VLAN de niveau 1 a pour objectif d’optimiser l’utilisation d’un seul câblage de grande envergure au niveau de l’entreprise, afin de pouvoir utiliser plusieurs sous réseaux indépendants. De cette manière on peut, sur un seul câble, faire transiter les informations propres à deux réseaux différents sans que l’un ait accès aux données de l’autre.

2 – L’architecture d’un réseau comportant des VLANs

2.1 – Les switchs administrables

Evidemment, l’utilisation de VLANs suppose un équipement compatible avec la norme IEEE 802.1 En fonction des besoins, et si ceux là sont minimums, un seul switch administrable gérant le VLANs peut être suffisant. Ces switchs, dans leur console d’aministration, permettent d’identifier les différent VLANs. Cela se fait à partir d’un ID (unique sur le réseau global) et, éventuellement, d’un nom local.

2.2 – Port « non taggués »

Par souci de compatibilité ascendante, les appareils « VLAN enabled » sont compatibles avec les appareils classiques. Qu’il s’agisse de cartes réseau ou de switchs non administrables, il est possible de les raccorder à un VLAN du moment que le port de connexion ne transporte qu’un seul VLAN.

2.3 – Ports « taggués »

Un port taggué est un port de l’appareil alloué à plusieurs VLAN. Afin de pouvoir différencier les flux des différents réseaux virtuels, les communications sont cryptées. L’appareil connecté à ce port doit supporter la norme IEEE 802.1 afin de pouvoir exploiter le traffic sur cette interface.

2.4 – Combien de VLANs par port ?

Par conséquent on peut configurer plusieurs VLANs par ports selon les configurations:

  • Plusieurs ports taggués
  • Un port non taggué
  • Un port non taggué et un ou plusieurs ports taggués

2.5 – Ports de transport

Par extension, on nomme port de transport un port comportant tous les VLANs. Un tel type de port à pour objet de connecter deux noeuds supportant les technologies des réseaux virtuels

3 – Les VLAN au niveau du client

3.1 – Client compatible VLANs

Aperçu

Lors de la connexion d’un client équipé d’une interface compatible avec le protocole des VLANs, et dans la mesure ou le port connecté transporte plusieurs réseaux taggés, le périphérique est configurable sur le réseau.

Avantage

A l’aide des pilotes fourni avec l’adaptateur réseau, il est possible de raccorder l’ordinateur sur plusieurs VLANs différents. Le système d’exploitation reconnaîtra alors plusieurs cartes réseaux logique: autant que de réseau sur laquelle cette carte physique est configurée.

3.2 – Client imcompatible VLANs

Dans le cas d’un appareil ancien ne supportant pas cette technologie, celui ci se connectera sur le port non-taggué s’il existe sinon il considérera qu’il est déconnecté du réseau.

4 – D’un VLAN à l’autre

4.1 – Sécurité des données

Les appareils de connexion isolent totalement les réseaux les un des autres. Dans le cas de ports portant plusieurs réseaux virtuels, ceux-ci sont cryptés et ne peuvent en aucun cas être considérés comme étant interconnectés.

4.2 – Comment interconnecter deux VLANs ?

Par définition, les VLANs sont des réseaux locaux indépendant, il n’est donc possible de les interconnecter que par les moyens habituellement utilisés pour les réseaux non virtuels. L’autre possibilité est de mettre en place un client avec plusieurs interfaces réseaux: pour chacun des VLANs auquel il doit accéder, le client (station de travail, serveur, imprimante etc.) doit posséder une interface réseau configurée pour dialoguer avec le VLAN correspondant (adresse, IP, sous réseau etc.)

Exemple

Pour permettre aux utilisateurs du VLAN « Direction » d’accéder aux VLANs « Administration » et « Production » il faut mettre en place un routeur de trois pattes interconnectant les trois réseaux et appliquant des règles de filtrage.

5 – La gestion des VLANs

5.1 – Importance de la documentation

Afin de garder une trace précise de l’attribution des ports aux VLANs, il est indispensable de garder une trace écrite au moins pour deux raisons:

  • Pouvoir restaurer la configuration d’un switch hors service, même s’il est possible, avec certains appareils de générer une sauvegarde de celle-ci.
  • Voir d’un simple coup d’oeil sans avoir à accéder à la console d’administration à quel VLAN appartient un port particulier.

5.2 – Documentation manuelle

La manière la plus simple de documenter ceci et encore de tenir à jour un journal comportant les entrées de base:

  • Définition de l’appareil concerné
  • Définition des VLANs
  • Allocation des ports
  • Que cela soit sur papier, dans un tableur ou dans une base de donnée, c’est peut-être la meilleure solution existante à ce jour.

    5.3 – Logiciels de gestion

    Certaines entreprises proposent des switchs administrables qui peuvent s’interfacer avec un logciel de gestion avancé pemettant, en autre d’imprimer ces journaux.