Вы находитесь на странице: 1из 94

Red Hat Enterprise Linux 5.0.

0
Red Hat Enterprise Linux Deployment
Guide
Red Hat Enterprise Linux 5.0.0: Red Hat Enterprise Linux
Deployment Guide
Copyright © 2007 Red Hat, Inc.

This Deployment Guide documents relevant information regarding the deployment,


configuration and administration of Red Hat Enterprise Linux 5.0.0.

1801 Varsity Drive


Raleigh, NC 27606-2072
USA
Phone: +1 919 754 3700
Phone: 888 733 4281
Fax: +1 919 754 3701
PO Box 13588
Research Triangle Park, NC 27709
USA

Documentation-Deployment

Copyright © 2007 by Red Hat, Inc. This material may be distributed only subject to the terms and conditions set forth in
the Open Publication License, V1.0 or later (the latest version is presently available at
http://www.opencontent.org/openpub/).

Distribution of substantively modified versions of this document is prohibited without the explicit permission of the
copyright holder.

Distribution of the work or derivative of the work in any standard (paper) book form for commercial purposes is
prohibited unless prior permission is obtained from the copyright holder.

Red Hat and the Red Hat "Shadow Man" logo are registered trademarks of Red Hat, Inc. in the United States and other
countries.

All other trademarks referenced herein are the property of their respective owners.

The GPG fingerprint of the security@redhat.com key is:

CA 20 86 86 2B D6 9D FC 65 F6 EC C4 21 91 80 CD DB 42 A6 0E
Table des matières
Introduction ............................................................................................................... vi
1. Faites-nous parvenir vos commentaires ........................................................... vi
I. Configuration liée au réseau .................................................................................... 1
1. Interfaces réseau ........................................................................................... 2
1. Fichiers de configuration réseau ............................................................. 2
2. Fichiers de configuration des interfaces ................................................... 3
2.1. Interfaces Ethernet ...................................................................... 3
2.2. Interfaces IPsec .......................................................................... 6
2.3. Interfaces de liaison de canaux .................................................... 7
2.4. Fichiers alias et clone .................................................................. 8
2.5. Interfaces de connexion par modem ............................................. 9
2.6. Autres interfaces ........................................................................10
3. Scripts de contrôle d'interfaces ..............................................................11
4. Fichiers de fonctions réseau ..................................................................13
5. Ressources supplémentaires .................................................................13
5.1. Documentation installée ..............................................................13
2. Configuration réseau .....................................................................................15
1. Présentation .........................................................................................16
2. Mise en place d'une connexion Ethernet .................................................17
3. Mise en place d'une connexion RNIS .....................................................20
4. Mise en place d'une connexion modem ..................................................22
5. Mise en place d'une connexion xDSL .....................................................24
6. Mise en place d'une connexion de bus annulaire à jeton ..........................27
7. Mise en place d'une connexion sans fil ...................................................30
8. Gestion des paramètres DNS ................................................................33
9. Gestion des hôtes .................................................................................35
10. Travail avec des profils ........................................................................36
11. Alias de périphériques .........................................................................40
12. Enregistrement et restauration de la configuration réseau ......................41
3. OpenSSH .....................................................................................................43
1. Fonctionnalités de SSH .........................................................................43
1.1. Pourquoi utiliser SSH ? ...............................................................43
2. Versions du protocole SSH ....................................................................44
3. Séquence d'événements d'une connexion SSH ......................................45
3.1. Couche de transport ...................................................................45
3.2. Authentification ..........................................................................46
3.3. Canaux ......................................................................................46
4. Configuration d'un serveur OpenSSH .....................................................47
4.1. Utilisation nécessaire de SSH pour les connexions à distance ......47
5. Fichiers de configuration d'OpenSSH .....................................................48
6. Configuration d'un client OpenSSH ........................................................49
6.1. Utilisation de la commande ssh ...................................................49
6.2. Utilisation de la commande scp ...................................................50
6.3. Utilisation de la commande sftp ...................................................51
7. Beaucoup plus qu'un shell sécurisé ........................................................51

iv
Red Hat Enterprise Linux 5.0.0

7.1. Retransmission X11 ...................................................................51


7.2. Retransmission de port ...............................................................52
7.3. Création de paires de clés ..........................................................53
8. Ressources supplémentaires .................................................................57
8.1. Documentation installée ..............................................................57
8.2. Sites Web utiles .........................................................................57
4. Dynamic Host Configuration Protocol (DHCP) .................................................58
1. Pourquoi utiliser DHCP ? .......................................................................58
2. Configuration d'un serveur DHCP ...........................................................58
2.1. Fichier de configuration ..............................................................58
2.2. Base de données d'attribution .....................................................62
2.3. Lancement et interruption du serveur ...........................................62
2.4. Agent de relais DHCP ................................................................64
3. Configuration d'un client DHCP ..............................................................64
4. Ressources supplémentaires .................................................................65
4.1. Documentation installée ..............................................................65
II. Configuration du système ......................................................................................67
5. Configuration du système X Window ..............................................................68
1. Paramètres d'affichage ..........................................................................68
2. Afficher les paramètres matériels ...........................................................69
3. Paramètres d'affichage du double écran .................................................70
III. Sécurité et authentification ....................................................................................72
6. Aperçu sur la sécurité ....................................................................................73
1. Évaluation des vulnérabilités ..................................................................73
1.1. Penser comme l'ennemi .............................................................73
1.2. Définition des évaluations et des essais .......................................74
1.3. Évaluation des outils ...................................................................76
2. Exploits et attaques courants .................................................................78
3. Mises à jour de sécurité .........................................................................82
3.1. Mise à jour des paquetages ........................................................82

v
Introduction

Bienvenue au Guide de déploiement de Red Hat Enterprise Linux.

Le Guide de déploiement de Red Hat Enterprise Linux contient des informations sur la
personnalisation de votre système Red Hat Enterprise Linux, correspondant à vos besoins. Si
vous recherchez un guide approfondi et pratique pour configurer et personnaliser votre
système, ce manuel est idéal pour vous.

Ce guide présuppose que vous avez une connaissance de base de votre système Red Hat
Enterprise Linux. Si vous avez besoin d'assistance pour installer Red Hat Enterprise Linux,
veuillez consulter le Guide d'installation de Red Hat Enterprise Linux.

1. Faites-nous parvenir vos commentaires


N'hésitez pas à nous contacter si vous découvrez des erreurs dans le Guide de déploiement de
Red Hat Enterprise Linux, ou si vous souhaitez nous faire part de vos suggestions pour
améliorer ce manuel ! À cet effet, veuillez soumettre un rapport dans Bugzilla
(http://bugzilla.redhat.com/bugzilla/) en sélectionnant l'option Deployment_Guide.

Si vous avez des suggestions pour améliorer la documentation, veuillez fournir le plus de
précisons possibles. Dans le cas d'une erreur, indiquez le numéro de section où elle se trouve
et ajoutez un extrait du texte qui l'entoure, afin que nous puissions facilement la retrouver.

vi
Configuration liée au réseau
Après avoir expliqué comment configurer le réseau, cette section examine les sujets associés à
la gestion de réseaux comme la façon d'autoriser les connexions distantes, les fichiers et
répertoires partagés sur le réseau et comment configurer un serveur Web.
Chapitre 1. Interfaces réseau
Sous Red Hat Enterprise Linux, toutes les communications réseau se font entre des interfaces
logicielles configurées et des périphériques réseau physiques connectés au système.

Les fichiers de configuration pour les interfaces réseau et les scripts permettant de les activer et
désactiver sont placés dans le répertoire /etc/sysconfig/network-scripts/. Bien que le nombre
et le type de fichiers d'interfaces puissent différer d'un système à l'autre, ce répertoire contient
trois types de fichiers :

1. fichiers de configuration d'interfaces

2. scripts de contrôle d'interfaces

3. fichiers des fonctions réseau

Les fichiers faisant partie de chacune de ces catégories fonctionnent en coopération afin de
permettre l'activation de divers périphériques réseau.

Ce chapitre explore la relation entre ces fichiers et leur utilisation.

1. Fichiers de configuration réseau


Avant d'examiner les fichiers de configuration d'interfaces, dressons la liste des fichiers de
configuration primaires utilisés pour configurer le réseau. Le fait de comprendre le rôle joué par
ces fichiers dans la mise en place de la pile réseau peut s'avérer utile lors de la
personnalisation d'un système Red Hat Enterprise Linux

Les fichiers de configuration de réseau primaire sont les suivants :

/etc/hosts
L'objectif principal de ce fichier est de résoudre les noms d'hôtes n'ayant pu être résolus
d'une autre façon. Il peut également être utilisé pour résoudre des noms d'hôtes sur de
petits réseaux ne disposant pas de serveur DNS. Quel que soit le type de réseau utilisé par
l'ordinateur, ce fichier doit contenir une ligne spécifiant l'adresse IP du périphérique de
bouclage (loopback) (127.0.0.1) en tant que localhost.localdomain. Pour obtenir
davantage d'informations, consultez la page de manuel de hosts.

/etc/resolv.conf
Ce fichier précise les adresses IP des serveurs DNS et le domaine de recherche. À moins
d'être configuré autrement, les scripts d'initialisation du réseau sont contenus dans ce
fichier. Pour obtenir davantage d'informations sur ce fichier, consultez la page de manuel de
resolv.conf.

/etc/sysconfig/network-scripts/ifcfg-<interface-name>
Pour chaque interface réseau, il existe un script de configuration d'interfaces
correspondant. Chacun de ces fichiers fournit des informations spécifiques à une interface
réseau particulière. Consultez Section 2, « Fichiers de configuration des interfaces » pour
obtenir davantage d'informations sur ce type de fichier et les directives qu'il accepte.

2
2. Fichiers de configuration des interfaces

Avertissement
Le répertoire /etc/sysconfig/networking/ est utilisé par l'Outil d'administration
du réseau (system-config-network) et son contenu ne doit pas être modifié
manuellement. Vu le risque de suppression de configuration, il est fortement
recommandé de n'utiliser qu'une seule méthode pour la configuration réseau.

2. Fichiers de configuration des interfaces


Les fichiers de configuration d'interfaces contrôlent le fonctionnement des interfaces logicielles
associées aux périphériques réseau individuels. Lorsque votre système Red Hat Linux démarre,
il utilise ces fichiers pour savoir quelles interfaces il doit afficher automatiquement et comment
les configurer. Ces fichiers sont en général nommés ifcfg-<name>, où <name> fait référence au
nom du périphérique contrôlé par le fichier de configuration.

2.1. Interfaces Ethernet


Le fichier ifcfg-eth0 représente l'un des fichiers d'interfaces les plus courants ; il contrôle la
première carte d'interface réseau Ethernet ou NIC (de l'anglais Network Interface Card) du
système. Dans un système comportant plusieurs cartes, il y a plusieurs fichiers ifcfg-eth<X>
(où <X> correspond à un numéro unique associé à une interface spécifique). Étant donné que
chaque périphérique a son propre fichier de configuration, un administrateur peut contrôler le
fonctionnement individuel de chaque interface.

Ci-dessous figure un exemple de fichier ifcfg-eth0 pour un système utilisant une adresse IP
fixe :
DEVICE=eth0 BOOTPROTO=none ONBOOT=yes NETWORK=10.0.1.0 NETMASK=255.255.255.0 IPADDR=10.0.1.27 USERCTL=no

Les valeurs requises dans un fichier de configuration d'interfaces peuvent changer en fonction
d'autres valeurs. Par exemple, le fichier ifcfg-eth0 pour une interface utilisant DHCP est
légèrement différent, car les informations IP sont fournies par le serveur DHCP :
DEVICE=eth0 BOOTPROTO=dhcp ONBOOT=yes

Cependant, vous pouvez également modifier manuellement les fichiers de configuration pour
une interface réseau donnée.

Vous trouverez ci-dessous une liste de paramètres pouvant être configurés dans un fichier de
configuration d'interface Ethernet :

BOOTPROTO=<protocol>
où <protocol> correspond à l'une des valeurs suivantes :

• none — Indique qu'aucun protocole de démarrage ne devrait être utilisé.

• bootp — Indique que le protocole BOOTP devrait être utilisé.

3
2.1. Interfaces Ethernet

• dhcp — Indique que le protocole DHCP devrait être utilisé.

BROADCAST=<address>
où <address> correspond à l'adresse de diffusion. Cette directive a été abandonnée car la
valeur est calculée automatiquement avec ifcalc.

DEVICE=<name>
où <name> correspond au nom du périphérique physique (à l'exception des périphériques
PPP à affectation dynamique où il s'agit du nom logique).

DHCP_HOSTNAME
N'utilisez cette option que si le serveur DHCP a besoin du client pour spécifier un nom
d'hôte avant de recevoir une adresse IP.

DNS{1,2}=<address>
où <address> correspond à l'adresse d'un serveur devant être placée dans /
etc/resolv.conf si la directive PEERDNS est réglée sur la valeur yes.

ETHTOOL_OPTS=<options>
où <options> correspond à toutes les options spécifiques au périphériques qui sont prises
en charge par ethtool. Par exemple, si vous souhaitiez forcer 100 Mo en transmission
bidirectionnelle simultanée(ou full-duplex), vous choisiriez les paramètres suivants :
ETHTOOL_OPTS="autoneg off speed 100 duplex full"

Remarque
Notez bien que la modification des paramètres de vitesse ou duplex nécessite
presque toujours la désactivation de l'auto-négotiation à l'aide de l'option
autoneg off. Ce point doit être mentionné en premier car les entrées d'options
sont tributaires de l'ordre dans lequel elles apparaissent.

GATEWAY=<address>
où <address> correspond à l'adresse IP du routeur réseau ou du périphérique de passerelle
(s'il existe).

HWADDR=<MAC-address>
où <MAC-address> correspond à l'adresse matérielle du périphérique Ethernet sous la forme
AA:BB:CC:DD:EE:FF. Cette directive est utile pour les machines possédant de multiples NIC
pour s'assurer que les interfaces sont assignées aux bons noms de périphériques
indépendamment de l'ordre de chargement configuré pour chaque module de NIC. Cette
directive ne devrait not être utilisée avec MACADDR.

IPADDR=<address>
où <address> correspond à l'adresse IP.

MACADDR=<MAC-address>
où <MAC-address> correspond à l'adresse matérielle du périphérique Ethernet sous la forme
AA:BB:CC:DD:EE:FF. Cette directive est utilisée pour assigner une adresse MAC à une

4
2.1. Interfaces Ethernet

interface, écrasant celle assignée par le NIC physique. Cette directive ne devrait pas être
utilisée avec HWADDR.

MASTER=<bond-interface>
où <bond-interface> correspond à l'interface de liaison de canaux à laquelle l'interface
Ethernet est liée.

Cette directive est utilisée en conjonction avec la directive SLAVE.

Reportez-vous à Section 2.3, « Interfaces de liaison de canaux » pour obtenir davantage


d'informations sur les interfaces de liaison de canaux.

NETMASK=<mask>
où <mask> correspond à la valeur du masque réseau.

NETWORK=<address>
où <address> correspond à l'adresse du réseau. Cette directive a été abandonnée car la
valeur est calculée automatiquement avec ifcalc.

ONBOOT=<answer>
où <answer> correspond à l'une des valeurs suivantes :

• yes — Indique que ce périphérique devrait être activé au démarrage.

• no — Indique que ce périphérique ne devrait pas être activé au démarrage.

PEERDNS=<answer>
où <answer> correspond à l'une des valeurs suivantes :

• yes — Modifier /etc/resolv.conf si la directive DNS est paramétrée. Si DHCP est


utilisé, yes est alors la valeur par défaut.

• no — Ne pas modifier /etc/resolv.conf.

SLAVE=<bond-interface>
où <bond-interface> correspond à l'une des valeurs suivantes :

• yes — Ce périphérique est contrôlé par l'interface de liaison de canaux spécifiée dans la
directive MASTER.

• no— Ce périphérique n'est pas contrôlé par l'interface de liaison de canaux spécifiée
dans la directive MASTER.

Cette directive est utilisée en conjonction avec la directive MASTER.

Reportez-vous à Section 2.3, « Interfaces de liaison de canaux » pour obtenir davantage


d'informations sur les interfaces de liaison de canaux.

SRCADDR=<address>
où <address> correspond à l'adresse IP source spécifiée pour les paquets sortants.

USERCTL=<answer>
où <answer> correspond à l'une des valeurs suivantes :

5
2.2. Interfaces IPsec

• yes — Les utilisateurs autres que le super-utilisateur sont autorisés à contrôler ce


périphérique.

• no— Les utilisateurs autres que le super-utilisateur ne sont pas autorisés à contrôler ce
périphérique.

2.2. Interfaces IPsec


L'extrait suivant correspond au fichier ifcfg d'une connexion IPsec de réseau à réseau pour le
LAN A. Le nom unique permettant d'identifier la connexion de notre exemple est ipsec1, d'où le
nom /etc/sysconfig/network-scripts/ifcfg-ipsec1 donné au fichier qui lui correspond.
TYPE=IPsec ONBOOT=yes IKE_METHOD=PSK SRCNET=192.168.1.0/24 DSTNET=192.168.2.0/24 DST=X.X.X.X

Dans cet exemple, la valeur X.X.X.X correspond à l'adresse IP routable sur un réseau public du
routeur IPsec de destination.

Ci-dessous figure une liste des paramètres configurables peuvant s'appliquer à une interface
IPsec :

DST=<address>
où <address> représente l'adresse IP de l'hôte ou du routeur IPsec de destination. Ce
paramètre est utilisé aussi bien pour des connexions IPsec d'hôte à hôte que pour des
connexions IPsec de réseau à réseau.

DSTNET=<network>
où <network> représente l'adresse réseau du réseau IPsec de destination. Ce paramètre est
seulement utilisé pour des configurations IPsec de réseau à réseau.

SRC=<address>
où <address> représente l'adresse IP de l'hôte ou du routeur IPsec source. Ce paramètre,
disponible en tant qu'option, est seulement utilisé pour des connexions IPsec d'hôte à hôte.

SRCNET=<network>
où <network> représente l'adresse réseau du réseau Ipsec source. Ce paramètre est
seulement utilisé pour des configurations Ipsec de réseau à réseau.

TYPE=<interface-type>
où <interface-type> a la valeur IPSEC. Les deux applications font partie du paquetage
ipsec-tools.

Reportez-vous au fichier /usr/share/doc/initscripts-<version-number>/sysconfig.txt


(remplacez <version-number> par le numéro de version du paquetage initscripts installé) pour
obtenir des informations sur les paramètres de configuration, si vous utilisez des clés manuelles
de cryptage avec Ipsec.

Le démon de gestion des clés IKEv1 baptisé racoon négocie et configure un ensemble de
paramètres pour IPSec. Il peut utiliser des clés pré-partagées, des signatures RSA ou GSS-
API. Si racoon est utilisé pour gérer automatiquement le cryptage des clés, les options suivantes
sont alors requises :

6
2.3. Interfaces de liaison de canaux

IKE_METHOD=<encryption-method>
où <encryption-method> représente PSK, X509 ou GSSAPI. Si la valeur PSK est spécifiée, le
paramètre IKE_PSK doit lui aussi être défini. Si la valeur X509 est mentionnée, le paramètre
IKE_CERTFILE doit lui aussi être défini.

IKE_PSK=<shared-key>
où <shared-key> correspond à la valeur secrète et partagée de la méthode PSK (de l'anglais
preshared keys).

IKE_CERTFILE=<cert-file>
où <cert-file> correspond à un fichier de certificats X.509 valide pour l'hôte.

IKE_PEER_CERTFILE=<cert-file>
où <cert-file> correspond à un fichier de certificats X.509 valide pour l'hôte distant.

IKE_DNSSEC=<answer>
où <answer> correspond à yes. Le démon racoon extrait le certificat X.509 de l'hôte distant
via DNS. Si un paramètre IKE_PEER_CERTFILE est défini, n'incluez pas le paramètre ci-
dessus.

Pour obtenir de plus amples informations sur les algorithmes de cryptage disponibles pour
IPsec, consultez la page de manuel de setkey. Pour davantage d'informations sur racoon,
reportez-vous aux pages de manuel de racoon et racoon.conf.

2.3. Interfaces de liaison de canaux


Red Hat Enterprise Linux permet aux administrateurs de lier ensemble plusieurs interfaces
réseau pour ne former qu'un seul canal à l'aide du module de noyau bonding et d'une interface
de réseau spéciale appelée interface de liaison de canaux. La liaison de canaux permet à
plusieurs interfaces réseau d'agir comme une seule interface, augmentant simultanément la
largeur de bande et offrant alors une certaine redondance.

Pour créer une interface de liaison de canaux, créez un fichier dans le répertoire /
etc/sysconfig/network-scripts/ nommé ifcfg-bond<N>, en remplaçant <N> par le numéro de
l'interface, comme par exemple 0.

Le contenu du fichier peut être identique à tout type d'interface qui sera lié, comme par exemple
une interface Ethernet. La seule différence repose sur le fait que la directive DEVICE= doit
correspondre à bond<N>, où <N> représente le numéro de l'interface.

Ci-dessous figure un exemple de fichier de configuration de liaison de canaux :


DEVICE=bond0 BOOTPROTO=none ONBOOT=yes NETWORK=10.0.1.0 NETMASK=255.255.255.0 IPADDR=10.0.1.27 USERCTL=no

Une fois l'interface de liaison de canaux créée, les interfaces réseau à lier ensemble doivent
être configurées en ajoutant les directives MASTER= et SLAVE= dans leurs fichiers de configuration.
Les fichiers de configuration pour chaque interface de liaison de canaux peuvent être
pratiquement identiques.

Par exemple, dans le cas de deux interfaces Ethernet de liaison de canaux, eth0 et eth1
peuvent ressembler à l'extrait suivant :

7
2.4. Fichiers alias et clone

DEVICE=eth<N> BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes USERCTL=no

Dans cet exemple, remplacez <N> par la valeur numérique de l'interface.

Pour qu'une interface de liaison de canaux soit valide, le module de noyau doit être chargé.
Pour s'assurer que le module est bien chargé lorsque l'interface de liaison de canaux est
activée, ajoutez la ligne suivante dans /etc/modprobe.conf :
alias bond<N> bonding

Remplacez <N> par le numéro de l'interface, comme par exemple 0. Pour chaque interface de
liaison de canaux, une entrée correspondante doit se trouver dans /etc/modprobe.conf.

Une fois que /etc/modprobe.conf est configuré — et que l'interface de liaison de canaux et les
interfaces réseau sont elles aussi configurées — la commande ifup peut être utilisée pour
activer l'interface de liaison de canaux.

2.4. Fichiers alias et clone


Il existe deux types de fichiers de configuration d'interfaces d'une utilisation moins courante : les
fichiers alias et clone.

Les fichiers de configuration d'interface alias qui sont utilisés principalement pour lier plusieurs
adresses à une seule interface, suivent le principe de nommage
ifcfg-<if-name>:<alias-value>.

Par exemple, un fichier ifcfg-eth0:0 peut être configuré pour spécifier DEVICE=eth0:0 et une
adresse IP statique de 10.0.0.2, servant donc d'alias pour une interface Ethernet déjà
configurée pour recevoir ses informations IP via DHCP dans ifcfg-eth0. Avec une telle
configuration, le périphérique eth0 est lié à une adresse IP dynamique, mais la même carte
réseau physique peut recevoir des requêtes via l'adresse IP fixe 10.0.0.2.

Attention
Les interfaces alias ne prennent pas en charge DHCP.

Le nom d'un fichier de configuration d'interface clone doit suivre le format suivant :
ifcfg-<if-name>-<clone-name>. Alors qu'un fichier alias autorise plusieurs adresses pour une
interface existante, un fichier clone lui permet de spécifier des options complémentaires pour
une interface. Par exemple, le fichier d'une interface Ethernet DHCP standard appelée eth0,
pourrait ressembler à l'extrait ci-dessous :
DEVICE=eth0 ONBOOT=yes BOOTPROTO=dhcp

Puisque la valeur par défaut de la directive USERCTL est no si aucune valeur n'est spécifiée, les
utilisateurs ne peuvent pas activer ou désactiver cette interface. Pour permettre aux utilisateurs
de le faire, créez un clone en copiant ifcfg-eth0 dans ifcfg-eth0-user, puis ajoutez la ligne
suivante dans ifcfg-eth0-user :
USERCTL=yes

8
2.5. Interfaces de connexion par modem

De cette manière, un utilisateur peut activer l'interface eth0 avec la commande /sbin/ifup
eth0-user puique les options de configuration de ifcfg-eth0 sont combinées à celles de ifcfg-
eth0-user. Bien qu'il s'agisse ici d'un exemple élémentaire, cette méthode peut être utilisée
avec des options et interfaces diverses.

2.5. Interfaces de connexion par modem


Si vous vous connectez à un réseau comme l'Internet par l'intermédiaire d'une connexion
commutée PPP, il vous faut un fichier de configuration pour cette interface.

Les fichiers d'interface PPP sont nommées en utilisant le format suivant :

ifcfg-ppp<X>
où <X> est un numéro unique correspondant à une interface spécifique.

Le fichier de configuration d'interface PPP est créé automatiquement lorsque vous utilisez
wvdial, l'Outil d'administration du réseau ou alors, Kppp est utilisé pour créer un compte de
connexion par modem. Vous pouvez également créer et éditer ce fichier manuellement.

Un fichier ifcfg-ppp0 typique ressemble à l'extrait ci-dessous :


DEVICE=ppp0 NAME=test WVDIALSECT=test MODEMPORT=/dev/modem LINESPEED=115200 PAPNAME=test USERCTL=true ONBOO

Le protocole Internet ligne série (SLIP) (de l'anglais Serial Line Internet Protocol) constitue une
autre interface de connexion commutée, même s'il est moins fréquemment utilisé. Les fichiers
SLIP ont des noms de fichiers de configuration d'interface de type ifcfg-sl0.

Parmi les options dont nous n'avons pas encore parlé, et qui peuvent être utilisées dans ces
fichiers, figurent :

DEFROUTE=<answer>
où <answer> correspond à l'une des valeurs suivantes :

• yes — Indique que cette interface doit être configurée comme itinéraire par défaut.

• no — Indique que cette interface ne doit pas être configurée comme itinéraire par défaut.

DEMAND=<answer>
où <answer> correspond à l'une des valeurs suivantes :

• yes— Indique que cette interface permettra à pppd d'initialiser une connexion lorsque
quelqu'un essaiera de l'utiliser.

• no — Indique qu'une connexion doit être établie manuellement pour cette interface.

IDLETIMEOUT=<value>
où <value> correspond au nombre de secondes d'inactivité engendrant la déconnexion
automatique de l'interface.

INITSTRING=<string>
où <string> correspond à la chaîne d'initialisation transférée au modem. Cette option est

9
2.6. Autres interfaces

principalement utilisée avec les interfaces SLIP.

LINESPEED=<value>
où <value> correspond à la vitesse de transmission (en bauds) du périphérique. Parmi les
valeurs standard possibles figurent 57600, 38400, 19200 et 9600.

MODEMPORT=<device>
où <device> correspond au nom du périphérique série utilisé pour établir la connexion pour
l'interface.

MTU=<value>
où <value> correspond au paramètre unité de transfert maximum (MTU) (de l'anglais
Maximum Transfer Unit) pour l'interface. La valeur de MTU correspond au nombre maximal
d'octets de données qu'un cadre peut comporter, sans compter les informations d'en-tête.
Dans certaines situations de connexion par modem, le réglage de ce paramètre sur la
valeur 576 entraîne une réduction du nombre de paquets éliminés abandonnés et une
légère augmentation du débit de connexion.

NAME=<name>
où <name> correspond à la référence au nom donné à un ensemble de configurations de
connexions commutées.

PAPNAME=<name>
où <name> correspond au nom d'utilisateur donné lors de l'échange d'informations avec le
protocole d'authentification du mot de passe (PAP) (de l'anglais, Password Authentication
Protocol) afin de permettre la connexion à un système distant.

PERSIST=<answer>
où <answer> correspond à l'une des valeurs suivantes :

• yes— Spécifie que cette interface doit rester active en permanence, même si elle est
désactivée lorsqu'un modem raccroche.

• no — Spécifie que cette interface ne doit pas rester active en permanence.

REMIP=<address>
où <address> correspond à l'adresse IP du système distant. Cette valeur n'est généralement
pas spécifiée.

WVDIALSECT=<name>
où <name> associe cette interface à une configuration de composeur dans /etc/wvdial.conf.
Ce fichier contient le numéro de téléphone à composer et d'autres informations importantes
pour l'interface.

2.6. Autres interfaces


Parmi d'autres fichiers de configuration d'interfaces courants figurent :

ifcfg-lo
Une interface de bouclage locale (loopback) est souvent utilisée pour effectuer des tests et
pour une utilisation dans un certain nombre d'applications qui nécessitent une adresse IP
référant au même système. Toutes les données envoyées au périphérique de bouclage

10
3. Scripts de contrôle d'interfaces

sont immédiatement renvoyées vers la couche réseau de l'hôte.

Avertissement
Ne modifier jamais manuellement le script de l'interface de bouclage, /
etc/sysconfig/network-scripts/ifcfg-lo. Des modifications pourraient
provoquer un mauvais fonctionnement du système.

ifcfg-irlan0
Une interface infrarouge permet à des informations de circuler entre des périphériques tels
qu'un ordinateur portable et une imprimante, par l'intermédiaire d'un lien infrarouge
fonctionnant de la même façon qu'un périphérique Ethernet, sauf qu'il est généralement
utilisé dans une connexion de poste à poste.

ifcfg-plip0
Une connexion PLIP (Parallel Line Interface Protocol) fonctionne de la même façon qu'un
périphérique Ethernet, sauf qu'elle utilise un port parallèle.

ifcfg-tr0
Les topologies en anneau à jeton (ou Token Ring) ne sont pas aussi courantes sur les
Réseaux locaux (ou LAN de l'anglais Local Area Networks) qu'elles ne l'étaient autrefois ;
elles ont été supplantées par Ethernet.

3. Scripts de contrôle d'interfaces


Les scripts de contrôle d'interfaces activent et désactivent des connexions d'interfaces. Il existe
deux scripts de contrôle principaux, à savoir /sbin/ifdown et /sbin/ifup qui utilisent des scripts
de contrôle situés dans le répertoire /etc/sysconfig/network-scripts/.

Les scripts d'interfaces ifup et ifdown constituent des liens symboliques vers des scripts du
répertoire /sbin/. Lorsque l'un ou l'autre de ces scripts est appelé, la valeur de l'interface doit
être spécifiée, comme par exemple :
ifup eth0

Attention
Les scripts d'interfaces ifup et ifdown sont les seuls scripts que l'utilisateur devrait
employer pour activer et désactiver les interfaces réseau.

Les scripts ci-dessous ne sont décrits qu'à titre de références.

Deux fichiers utilisés pour effectuer diverses tâches d'initialisation de réseau durant le
processus d'activation d'une interface réseau, à savoir les fichiers /etc/rc.d/init.d/functions
et /etc/sysconfig/network-scripts/network-functions. Reportez-vous à Section 4, « Fichiers
de fonctions réseau » pour de plus amples informations.

11
3. Scripts de contrôle d'interfaces

Après avoir vérifié qu'une interface a été spécifiée et que l'utilisateur effectuant la requête est
autorisé à contrôler l'interface, le script approprié active ou désactive l'interface. La liste ci-
dessous énumère les scripts de contrôle d'interfaces les plus courants qui se trouvent dans le
répertoire /etc/sysconfig/network-scripts/ :

ifup-aliases
Configure des alias IP à partir des fichiers de configuration d'interfaces quand plusieurs
adresses IP sont associées à une interface.

ifup-ippp et ifdown-ippp
Permet d'activer ou désactiver un interface RNIS (de l'anglais ISDN pour Integrated
Services Digital Network)

ifup-ipsecet ifdown-ipsec
Permet d'activer ou désactiver une interface IPsec.

ifup-ipv6et ifdown-ipv6
Permet d'activer ou désactiver une interface IPv6.

ifup-ipx
Permet d'activer une interface IPX.

ifup-plip
Permet d'activer une interface PLIP.

ifup-plusb
Permet d'activer une interface USB pour les connexions réseau.

ifup-post et ifdown-post
Contient certaines commandes qui doivent être exécutées après qu'une interface soit
activée ou désactivée.

ifup-pppet ifdown-ppp
Permet d'activer ou désactiver une interface PPP.

ifup-routes
Ajoute des itinéraires statiques pour un périphérique particulier lorsque son interface est
activée.

ifdown-sit et ifup-sit
Contiennent des fonctions associées à l'activation et la désactivation d'un tunnel IPv6 au
sein d'une connexion IPv4.

ifup-slet ifdown-sl
Permet d'activer ou désactiver une interface SLIP.

ifup-wireless
Permet d'activer une interface sans-fil.

12
4. Fichiers de fonctions réseau

Avertissement
La suppression ou la modification de scripts dans le répertoire /
etc/sysconfig/network-scripts/ peut provoquer le mauvais fonctionnement ou
l'échec de diverses connexions. Seuls les utilisateurs chevronnés devraient
modifier les scripts en relation avec une interface réseau.

Pour simplifier la manipulation simultanée de tous les scripts réseau, utilisez la commande /
sbin/service sur le service réseau (/etc/rc.d/init.d/network), comme ci-dessous :

/sbin/service network <action>

Dans cet exemple, <action> peut correspondre à start, stop, ou restart.

Pour afficher une liste des périphériques configurés et des interfaces réseau actuellement
actives, utilisez la commande suivante :
/sbin/service network status

4. Fichiers de fonctions réseau


Red Hat Enterprise Linux utilise plusieurs fichiers contenant des fonctions importantes utilisées
pour activer et désactiver les interfaces. Plutôt que de forcer chaque fichier de contrôle
d'interfaces à contenir ces fonctions, elles sont regroupées dans un petit nombre de fichiers qui
sont utilisés en fonction des besoins.

Le fichier /etc/sysconfig/network-scripts/network-functions contient les fonctions IPv4 les


plus couramment utilisées par bon nombre de scripts de contrôle d'interfaces. Ces fonctions
permettent entre autres de contacter des programmes en cours d'exécution ayant demandé des
informations sur les modifications du statut d'une interface, de configurer des noms d'hôte, de
trouver un périphérique passerelle, de vérifier le statut d'un périphérique particulier et finalement
d'ajouter un itinéraire par défaut.

Les fonctions requises pour les interfaces IPv6 étant différentes de celles requises pour les
interfaces IPv4, un fichier /etc/sysconfig/network-scripts/network-functions-ipv6 est
spécifiquement conçu pour contenir ces informations. Les fonctions spécifiées dans ce fichier
permettent de configurer et de supprimer des routes IPv6 statiques, de créer et de supprimer
des tunnels, d'ajouter des adresses IPv6 à des interfaces ou d'en supprimer et finalement de
rechercher l'existence d'une adresse IPv6 sur une interface.

5. Ressources supplémentaires
Les ressources suivantes traitent des interfaces réseau de manière plus détaillée.

5.1. Documentation installée

/usr/share/doc/initscripts-<version>/sysconfig.txt

13
5.1. Documentation installée

Un guide des options disponibles pour les fichiers de configuration réseau, y compris les
options IPv6 n'ayant pas été abordées dans ce chapitre.

/usr/share/doc/iproute-<version>/ip-cref.ps
Ce fichier contient un grand nombre d'informations sur la commande ip pouvant être
utilisée entre autres pour manipuler des tables de routage. Utilisez l'application ggv ou
kghostview pour accéder à ce fichier.

14
Chapitre 2. Configuration réseau
Pour communiquer avec d'autres ordinateurs, ces derniers ont besoin d'une connexion réseau.
Il faut donc que le système d'exploitation reconnaisse une carte d'interface (Ethernet, modem
RNIS ou anneau à jeton) et que l'interface à connecter au réseau soit configurée.

L'Outil d'administration du réseau permet de configurer les types d'interface réseau suivants :

• Ethernet

• RNIS

• modem

• xDSL

• anneau à jeton

• CIPE

• périphériques sans fil

Il peut également être utilisé pour configurer les connexions IPsec, gérer les paramètres de
DNS et le fichier /etc/hosts utilisé pour stocker des combinaisons de noms d'hôtes et
d'adresses IP supplémentaires.

Pour utiliser l'Outil d'administration du réseau, vous devez avoir des privilèges de super-
utilisateur (ou root). Pour lancer l'application, sélectionnez le bouton Applications (the main
menu on the panel) => Paramètres de système => Réseau, ou tapez la commande system-
config-network à l'invite du shell (dans un terminal XTerm ou GNOME terminalpar exemple).
Si vous tapez la commande, la version graphique s'affiche si X est en cours d'exécution, sinon,
la version basée sur le texte s'affiche.

Pour utiliser la version en ligne de commande, exécutez la commande system-


config-network-cmd --help en tant que super-utilisateur afin d'afficher toutes les options.

15
1. Présentation

Figure 2.1. Outil d'administration du réseau

Astuce
Consultez la liste de compatibilité matérielle Red Hat
(http://hardware.redhat.com/hcl/) pour savoir si votre périphérique est pris en
charge par Red Hat Enterprise Linux.

1. Présentation
Pour configurer une connexion réseau avec l'Outil d'administration du réseau, suivez les
étapes ci-dessous :

1. Ajoutez un périphérique réseau associé au périphérique matériel.

16
2. Mise en place d'une connexion Ethernet

2. Ajoutez le périphérique matériel physique à la liste du matériel si il n'existe pas encore.

3. Configurez les paramètres de nom d'hôte et DNS.

4. Configurez tout hôte ne pouvant pas être pas être trouvés par l'intermédiaire de DNS.

Ce chapitre présente chacune de ces étapes pour chaque type de connexion réseau.

2. Mise en place d'une connexion Ethernet


Pour établir une connexion Ethernet, différents éléments sont nécessaires : une carte
d'interface réseau, un câble réseau (généralement de type CAT5) ainsi qu'un réseau auquel se
connecter. Différents réseaux sont configurés pour utiliser différentes vitesses de réseau ;
assurez-vous que votre carte est compatible avec le réseau auquel vous souhaitez vous
connecter

Suivez les étapes suivantes afin d'ajouter une connexion Ethernet :

1. Cliquez sur l'onglet Périphériques.

2. Cliquez sur le bouton Nouveau dans la barre d'outils.

3. Sélectionnez Connexion Ethernet à partir de la liste Type de périphérique et cliquez sur


Suivant.

4. Si vous avez déjà ajouté la carte d'interface réseau à la liste du matériel, sélectionnez-la à
partir de la liste Carte Ethernet. Sinon, sélectionnez Autre Carte Ethernet afin d'ajouter le
périphérique matériel.

Remarque
Le programme d'installation détecte généralement les périphériques Ethernet
pris en charge et vous invite à les configurer. Si vous en avez configurés au
cours de l'installation, ils apparaissent déjà dans la liste du matériel sur
l'onglet Matériel.

5. Si vous avez sélectionné Autre Carte Ethernet, la fenêtre Sélectionner adaptateur


Ethernet apparaît alors. Sélectionnez le fabricant ainsi que le modèle de la carte Ethernet,
puis le nom du périphérique. S'il s'agit de la première carte Ethernet du système,
sélectionnez eth0 comme nom ; s'il s'agit de la deuxième carte Ethernet, sélectionnez eth1
(et ainsi de suite) L'Outil d'administration du réseau permet également de configurer les
ressources pour la carte. Cliquez sur Suivant pour continuer.

6. Dans la fenêtre Configurer les paramètres réseau, comme le montre la Figure 2.2,
« Paramètres Ethernet », choisissez entre DHCP et une adresse IP statique. Si le
périphérique reçoit une adresse IP différente à chaque démarrage du réseau, n'indiquez
pas de nom d'hôte. Cliquez sur Suivant pour continuer.

7. Cliquez sur Appliquer sur la page Créer un périphérique Ethernet.

17
2. Mise en place d'une connexion Ethernet

Figure 2.2. Paramètres Ethernet

Une fois configuré, le périphérique Ethernet apparaît dans la liste des périphériques, comme le
montre la Figure 2.3, « Périphérique Ethernet ».

18
2. Mise en place d'une connexion Ethernet

Figure 2.3. Périphérique Ethernet

Assurez-vous de bien sélectionner Fichier => Enregistrer afin d'enregistrer vos modifications.

Après avoir ajouté le périphérique Ethernet, vous pouvez modifier sa configuration en le


sélectionnant dans la liste des périphériques puis en cliquant sur Éditer. Par exemple, lorsque
le périphérique est ajouté, il est configuré pour être lancé par défaut lors du démarrage. Pour
changer ce paramètre, choisissez d'éditer le périphérique, modifiez la valeur Activer le
périphérique au démarrage de l'ordinateur et enregistrez les modifications.

Lorsque le périphérique est ajouté, il n'est pas activé immédiatement, comme le montre son
statut Désactivé. Afin d'activer le périphérique, sélectionnez-le dans la liste des périphériques
et cliquez sur le bouton Activer. Si le système est configuré de telle sorte que le périphérique
sera activé lors du démarrage de l'ordinateur (la valeur par défaut), il ne sera pas nécessaire de
répéter cette étape.

Si vous associez plus d'un périphériques à une carte Ethernet, ces périphériques sont des alias
de périphériques. Un alias de périphériques vous permet de configurer de multiples
périphériques virtuels pour un périphérique physique, dotant ainsi ce périphérique physique de

19
3. Mise en place d'une connexion RNIS

plusieurs adresses IP. Par exemple, vous pouvez configurer un périphérique eth1 et un
périphérique eth1:1. Pour de plus amples informations, reportez-vous à Section 11, « Alias de
périphériques »..

3. Mise en place d'une connexion RNIS


Une connexion RNIS est une connexion Internet établie à l'aide d'une carte modem RNIS au
travers d'une ligne téléphonique spéciale installée par la compagnie téléphonique. Les
connexions RNIS sont populaires en Europe.

Suivez les étapes suivantes afin d'ajouter une connexion RNIS :

1. Cliquez sur l'onglet Périphériques.

2. Cliquez sur le bouton Nouveau dans la barre d'outils.

3. Sélectionnez Connexion RNIS à partir de la liste Type de périphérique et cliquez sur


Suivant.

4. Sélectionnez la carte RNIS dans le menu déroulant. Configurez ensuite les ressources
ainsi que le protocole de canal D pour cette carte. Cliquez sur Suivant pour continuer.

Figure 2.4. Paramètres RNIS

5. Si votre fournisseur d'accès à Internet (FAI ou ISP de l'anglais 'Internet Service Provider')
fait partie de la liste pré-configurée, sélectionnez-le. Sinon, fournissez les informations
nécessaires sur votre compte FAI. Si vous ne connaissez pas les valeurs de ce dernier,
contactez votre FAI. Cliquez alors sur Suivant.

6. Dans la fenêtre Paramètres IP, sélectionnez le Mode d'encapsulation et choisissez si

20
3. Mise en place d'une connexion RNIS

vous voulez obtenir une adresse IP automatiquement ou si vous voulez en définir une de
manière statique. Cliquez sur Suivant à la fin de ces opérations.

7. Sur la page Créer une connexion via modem, cliquez sur Appliquer.

Après avoir configuré le périphérique ISDN, il apparaît dans la liste des périphériques en tant
que périphérique de type ISDN, comme le montre la Figure 2.5, « Périphérique RNIS ».

Assurez-vous de bien sélectionner Fichier => Enregistrer afin d'enregistrer vos modifications.

Après avoir ajouté le périphérique RNIS, vous pouvez modifier sa configuration en sélectionnant
le périphérique dans la liste des périphériques, puis en cliquant sur Modifier. Par exemple,
lorsque le périphérique est ajouté, il est configuré de façon à ne pas être lancé au démarrage
par défaut. Éditez sa configuration pour modifier ce paramètre. D'autres éléments peuvent
également être changés, tels que la compression, les options PPP, le nom de connexion, le mot
de passe parmi tant d'autres.

Lorsque le périphérique est ajouté, il n'est pas activé immédiatement, comme le montre son
statut Désactivé. Afin d'activer le périphérique, sélectionnez-le dans la liste des périphériques
et cliquez sur le bouton Activer. Si le système est configuré de telle sorte que le périphérique
sera activé lors du démarrage de l'ordinateur (la valeur par défaut), il ne sera pas nécessaire de
répéter cette étape.

21
4. Mise en place d'une connexion modem

Figure 2.5. Périphérique RNIS

4. Mise en place d'une connexion modem


Un modem peut être utilisé pour configurer une connexion Internet sur une ligne téléphonique
active. Un compte de fournisseur d'accès à Internet est requis.

Suivez les étapes suivantes afin d'ajouter une connexion modem :

1. Cliquez sur l'onglet Périphériques.

2. Cliquez sur le bouton Nouveau dans la barre d'outils.

3. Sélectionnez Connexion du modem à partir de la liste Type de périphérique et cliquez


sur Suivant.

4. Si un modem est déjà configuré dans la liste de matériel (sous l'onglet Matériel), l'Outil
d'administration du réseau suppose que vous voulez l'utiliser pour établir une connexion
modem. Si aucun modem n'est déjà configuré, il essaie de détecter des modems dans le

22
4. Mise en place d'une connexion modem

système. Cette opération peut prendre un certain temps. Si aucun modem n'est détecté, un
message apparaît pour vous avertir que les paramètres affichés ne correspondent pas aux
valeurs obtenues par l'opération de détection.

5. Après la détection, la fenêtre reproduite dans la Figure 2.6, « Paramètres du modem »


apparaît.

Figure 2.6. Paramètres du modem

6. Configurez le périphérique du modem, la vitesse de transmission, le contrôle de flux et le


volume du modem. Si vous ne connaissez pas ces valeurs, acceptez les valeurs par défaut
si le modem a été détecté par le système. Si vous ne disposez pas de la numérotation à
touches, annulez la sélection dans la case de pointage lui correspondant. Cliquez ensuite
sur Suivant.

7. Si votre FAI fait partie de la liste préconfigurée, sélectionnez-le. Sinon, fournissez les
informations nécessaires sur votre compte FAI. Si vous ne connaissez pas ces valeurs,
contactez votre FAI. Cliquez ensuite sur Suivant.

8. Dans la page Paramètres IP, sélectionnez si vous souhaitez obtenir votre adresse IP
automatiquement ou si vous préférez la configurer de manière statique. Cliquez ensuite sur
Suivant un fois ces opérations terminées.

9. Sur la page Créer une connexion via modem, cliquez sur Appliquer.

Après avoir configuré le périphérique du modem, il apparaît dans la liste des périphériques en
tant que type Modem, comme le montre la Figure 2.7, « Périphérique modem ».

23
5. Mise en place d'une connexion xDSL

Figure 2.7. Périphérique modem

Assurez-vous de bien sélectionner Fichier => Enregistrer afin d'enregistrer vos modifications.

Après avoir ajouté le périphérique modem, vous pouvez modifier sa configuration en le


sélectionnant dans la liste des périphériques, puis en cliquant sur Modifier. Par exemple,
lorsque le périphérique est ajouté, il est par défaut configuré de façon à ne pas être lancé au
démarrage. Modifiez sa configuration afin de changer ce paramètre. De nombreuses options
peuvent également être modifiées, telles que la compression, les options PPP, le nom de
connexion, le mot de passe parmi tant d'autres.

Lorsque le périphérique est ajouté, il n'est pas activé immédiatement, comme le montre son
statut Désactivé. Afin d'activer le périphérique, sélectionnez-le dans la liste des périphériques
et cliquez sur le bouton Activer. Si le système est configuré de telle sorte que le périphérique
sera activé lors du démarrage de l'ordinateur (la valeur par défaut), il ne sera pas nécessaire de
répéter cette étape.

5. Mise en place d'une connexion xDSL

24
5. Mise en place d'une connexion xDSL

DSL signifie 'Digital Subscriber Lines' (lignes d'abonnés numériques). Il existe différents types
de DSL, notamment ADSL, IDSL et SDSL. Le terme xDSL employé par l'Outil
d'administration du réseau regroupe tous les types de connexions DSL.

Certains fournisseurs DSL demandent que vous configuriez votre système afin d'obtenir une
adresse IP par DHCP via une carte Ethernet, alors que d'autres vous demandent de configurer
une connexion PPPoE (Point-to-Point Protocol over Ethernet), un protocole point à point sur
Ethernet, avec une carte Ethernet. Demandez à votre fournisseur DSL quelle méthode utiliser.

Si vous devez utiliser DHCP, reportez-vous à Section 2, « Mise en place d'une connexion
Ethernet » afin de configurer votre carte Ethernet.

Suivez les étapes suivantes si vous devez utiliser PPPoE :

1. Cliquez sur l'onglet Périphériques.

2. Cliquez sur le bouton Nouveau.

3. Sélectionnez Connexion xDSL à partir de la liste Type de périphérique et cliquez sur


Suivant.

4. Si votre carte Ethernet se trouve déjà dans la liste de matériel, sélectionnez un


Périphérique Ethernet à partir du menu déroulant de la page présentée dans la
Figure 2.8, « Paramètres xDSL ». Sinon, la fenêtre Sélectionnez un adaptateur Ethernet
apparaît.

Remarque
Le programme d'installation détecte généralement les périphériques Ethernet
pris en charge et vous invite à les configurer. Si vous en avez configurés au
cours de l'installation, ils apparaissent déjà dans la liste du matériel sur
l'onglet Matériel.

25
5. Mise en place d'une connexion xDSL

Figure 2.8. Paramètres xDSL

5. Si la fenêtre Sélectionnez un adaptateur Ethernet apparaît, sélectionnez le fabricant ainsi


que le modèle de la carte Ethernet, puis le nom du périphérique. S'il s'agit de la première
carte Ethernet du système, sélectionnez eth0 comme nom de périphérique ; s'il s'agit de la
deuxième, sélectionnez eth1 (et ainsi de suite). L'Outil d'administration du réseau vous
permet également de configurer les ressources pour la carte. Cliquez sur Suivant pour
continuer.

6. Entrez le Nom du fournisseur, le Nom de connexion et le Mot de passe. Si vous avez


un compte T-Online, au lieu d'entrer un Nom de connexion et un Mot de passe dans la
fenêtre par défaut, cliquez sur le bouton Configuration du compte T-Online et saisissez
les informations requises. Cliquez sur Suivant pour continuer.

7. Sur la page Créer une connexion DSL, cliquez sur Appliquer.

Une fois configurée, la connexion DSL apparaît dans la liste des périphériques, comme le
montre la Figure 2.7, « Périphérique modem ».

26
6. Mise en place d'une connexion de bus annulaire à jeton

Figure 2.9. Périphérique xDSL

Assurez-vous de bien sélectionner Fichier => Enregistrer afin d'enregistrer vos modifications.

Après avoir ajouté la connexion xDSL, vous pouvez modifier sa configuration en sélectionnant
le périphérique dans la liste des périphériques, puis en cliquant sur Modifier. Par exemple,
lorsque le périphérique est ajouté, il est par défaut configuré de façon à ne pas être lancé au
démarrage. Modifiez sa configuration afin de changer ce paramètre.

Lorsque le périphérique est ajouté, il n'est pas activé immédiatement, comme le montre son
statut Désactivé. Afin d'activer le périphérique, sélectionnez-le dans la liste des périphériques
et cliquez sur le bouton Activer. Si le système est configuré de telle sorte que le périphérique
sera activé lors du démarrage de l'ordinateur (la valeur par défaut), il ne sera pas nécessaire de
répéter cette étape.

6. Mise en place d'une connexion de bus


annulaire à jeton

27
6. Mise en place d'une connexion de bus annulaire à jeton

Un réseau de bus annulaire à jeton ('Token Ring' en anglais) est un réseau auquel tous les
ordinateurs sont connectés sur un modèle circulaire. Un jeton, ou un paquet spécial de réseau,
voyage autour d'un bus annulaire à jeton et permet ainsi aux ordinateurs de se transmettre des
informations.

Astuce
Pour plus d'informations sur l'utilisation du bus annulaire à jeton sous Linux,
reportez-vous au site Web Linux Token Ring Project à l'adresse :
http://www.linuxtr.net/.

Suivez les étapes suivantes afin d'ajouter un bus annulaire à jeton :

1. Cliquez sur l'onglet Périphériques.

2. Cliquez sur le bouton Nouveau dans la barre d'outils.

3. Sélectionnez Connexion Token Ring à partir de la liste Type de périphérique et cliquez


sur Suivant.

4. Si vous avez déjà ajouté la carte de bus annulaire à jeton à la liste de matériel,
sélectionnez-la à partir de la liste Carte Token Ring. Sinon, sélectionnez Autre carte
Token Ring afin d'ajouter le périphérique matériel.

5. Si vous avez sélectionné Autre carte Token Ring, la fenêtre Sélectionner un adaptateur
Token Ring apparaît alors, comme le montre la Figure 2.10, « Paramètres du bus
annulaire à jeton ('Token Ring') ». Sélectionnez le fabricant ainsi que le modèle de la carte,
puis le nom du périphérique. S'il s'agit de la première carte de bus annulaire à jeton du
système, sélectionnez tr0 ; s'il s'agit de la deuxième, sélectionnez tr1 (et ainsi de suite).
L'Outil d'administration du réseau permet également à l'utilisateur de configurer les
ressources pour l'adaptateur. Cliquez sur Suivant pour continuer.

28
6. Mise en place d'une connexion de bus annulaire à jeton

Figure 2.10. Paramètres du bus annulaire à jeton ('Token Ring')

6. Sur la page Configurer les paramètres réseau, choisissez entre DHCP et une adresse IP
statique. Vous pouvez également spécifier un nom d'hôte pour le périphérique. Si celui-ci
reçoit une adresse IP dynamique à chaque démarrage du réseau, n'indiquez pas de nom
d'hôte. Cliquez sur Suivant pour continuer.

7. Cliquez sur Appliquer sur la page Créer un périphérique Token Ring.

Une fois configuré, le périphérique de bus annulaire à jeton apparaît dans la liste des
périphériques, comme le montre la Figure 2.11, « Périphérique de bus annulaire à jeton (Token
Ring) ».

29
7. Mise en place d'une connexion sans fil

Figure 2.11. Périphérique de bus annulaire à jeton (Token Ring)

Assurez-vous de bien sélectionner Fichier => Enregistrer afin d'enregistrer vos modifications.

Après avoir ajouté le périphérique, vous pouvez modifier sa configuration en le sélectionnant


dans la liste des périphériques, puis en cliquant sur Modifier. Vous pouvez par exemple
indiquer s'il doit être lancé lors du démarrage.

Lorsque le périphérique est ajouté, il n'est pas activé immédiatement, comme le montre son
statut Désactivé. Afin d'activer le périphérique, sélectionnez-le dans la liste des périphériques
et cliquez sur le bouton Activer. Si le système est configuré de telle sorte que le périphérique
sera activé lors du démarrage de l'ordinateur (la valeur par défaut), il ne sera pas nécessaire de
répéter cette étape.

7. Mise en place d'une connexion sans fil


Les périphériques Ethernet sans fil deviennent de plus en plus populaires. Leur configuration
est semblable à la configuration Ethernet, mis à part qu'elle vous permet de configurer des

30
7. Mise en place d'une connexion sans fil

paramètres tels que le ESSID et la clé de votre périphérique sans fil.

Suivez les étapes suivantes afin d'ajouter une connexion Ethernet sans fil :

1. Cliquez sur l'onglet Périphériques.

2. Cliquez sur le bouton Nouveau dans la barre d'outils.

3. Sélectionnez Connexion sans fil à partir de la liste Type de périphérique et cliquez sur
Suivant.

4. Si vous avez déjà ajouté la carte d'interface de réseau sans fil à la liste de matériel,
sélectionnez-la à partir de la liste Carte sans fil. Sinon, sélectionnez Autre carte sans fil
afin d'ajouter le périphérique matériel.

Remarque
Le programme d'installation détecte généralement les périphériques Ethernet
sans fil pris en charge et vous invite à les configurer. Si vous en avez
configurés au cours du programme d'installation, ils apparaissent déjà dans la
liste de matériel sur l'onglet Matériel.

5. Si vous avez sélectionné Autre carte sans fil, la fenêtre Sélectionnez un adaptateur
Ethernet apparaît alors. Sélectionnez le fabricant ainsi que le modèle de la carte Ethernet,
puis le périphérique. S'il s'agit de la première carte Ethernet du système, sélectionnez
eth0 ; s'il s'agit de la deuxième, sélectionnez eth1 (et ainsi de suite). L'Outil
d'administration du réseau permet également à l'utilisateur de configurer les ressources
pour la carte d'interface réseau sans fil. Cliquez sur Suivant pour continuer.

6. Sur la page Configurer une connexion sans fil comme le montre la Figure 2.12,
« Paramètres de connexions sans fil », configurez les paramètres pour le périphérique
sans fil.

31
7. Mise en place d'une connexion sans fil

Figure 2.12. Paramètres de connexions sans fil

7. Sur la page Configurer les paramètres réseau, choisissez entre DHCP et une adresse IP
statique. Vous pouvez également spécifier un nom d'hôte pour le périphérique. Si celui-ci
reçoit une adresse IP dynamique à chaque démarrage du réseau, n'indiquez pas de nom
d'hôte. Cliquez sur Suivant pour continuer.

8. Cliquez sur Appliquer sur la page Créer un périphérique sans fil.

Une fois configuré, le périphérique sans fil apparaît dans la liste des périphériques, comme le
montre la Figure 2.13, « Périphérique sans fil ».

32
8. Gestion des paramètres DNS

Figure 2.13. Périphérique sans fil

Assurez-vous de bien sélectionner Fichier => Enregistrer afin d'enregistrer vos modifications.

Après avoir ajouté le périphérique sans fil, vous pouvez modifier sa configuration en le
sélectionnant dans la liste des périphériques, puis en cliquant sur Modifier. Par exemple, vous
pouvez le configurer afin qu'il soit activé au démarrage.

Lorsque le périphérique est ajouté, il n'est pas activé immédiatement, comme le montre son
statut Désactivé. Afin d'activer le périphérique, sélectionnez-le dans la liste des périphériques
et cliquez sur le bouton Activer. Si le système est configuré de telle sorte que le périphérique
sera activé lors du démarrage de l'ordinateur (la valeur par défaut), il ne sera pas nécessaire de
répéter cette étape.

8. Gestion des paramètres DNS


L'onglet DNS vous permet de configurer le nom d'hôte du système, son domaine, ses serveurs
de noms ainsi que le domaine de recherche. Les serveurs de noms sont utilisés pour la

33
8. Gestion des paramètres DNS

recherche d'hôtes supplémentaires sur le réseau.

Si le serveur de noms DNS est récupéré de DHCP ou PPPoE (ou bien à partir du fournisseur
d'accès à Internet), n'ajoutez pas de serveurs DNS primaires, secondaires ou tertiaires.

Si le nom d'hôte est récupéré dynamiquement de DHCP ou PPPoE (ou bien à partir du
fournisseur d'accès à Internet), ne le changez pas.

Figure 2.14. Configuration DNS

Remarque
La section des serveurs de noms ne configure pas le système comme serveur de
noms. À la place, il configure les serveurs de noms à utiliser lors de la résolution
de l'adresse IP avec le nom d'hôte et vice versa.

34
9. Gestion des hôtes

Attention
Si le nom d'hôte est changé et system-config-network est lancé sur la machine
locale, vous pourriez ne pas démarrer une autre application X11. A ce titre, vous
devriez vous ré-identifier sur une nouvelle session de bureau.

9. Gestion des hôtes


L'onglet Hôtes vous permet d'ajouter, de modifier ou de supprimer des hôtes du fichier /
etc/hosts. Celui-ci contient les adresses IP ainsi que les noms d'hôtes correspondants.

Lorsque votre système tente de convertir un nom d'hôte en une adresse IP ou de déterminer le
nom d'hôte pour une adresse IP, il se réfère au fichier /etc/hosts avant d'utiliser les serveurs
de noms (si vous utilisez la configuration Red Hat Enterprise Linux par défaut). Si l'adresse IP
est répertoriée dans le fichier /etc/hosts, les serveurs de noms ne sont pas utilisés. Si votre
réseau comporte des ordinateurs dont les adresses IP ne sont pas répertoriées dans DNS,
nous vous recommandons de les ajouter au fichier /etc/hosts.

Pour ajouter une entrée au fichier /etc/hosts, utilisez l'onglet Hôtes, cliquez sur le bouton
Nouveau dans la barre d'outils et fournissez les informations requises avant de cliquer sur
Valider. Sélectionnez Fichier => Enregistrer ou pressez sur les touches Ctrl-S pour
enregistrer les modifications dans le fichier /etc/hosts. Le réseau ou les services du réseau
n'ont pas à être relancés étant donné que le système fait appel à la version courante du fichier
lors de chaque résolution d'adresse.

Attention
Ne supprimez pas l'entrée localhost. Même si le système n'a pas de connexion
réseau ou a une connexion réseau permanente, certains programmes doivent se
connecter au système via l'interface de bouclage ('loopback') de l'hôte local.

35
10. Travail avec des profils

Figure 2.15. Configuration des hôtes

Astuce
Pour modifier l'ordre de recherche, modifiez le fichier /etc/host.conf. La ligne
order hosts, bind spécifie que /etc/hosts a la priorité sur les serveurs de noms.
Si vous changez la ligne en order bind, hosts vous configurez votre système afin
qu'il utilise tout d'abord les serveurs de noms pour la conversion des noms d'hôte
ainsi que des adresses IP. Si l'adresse IP ne peut pas être convertie par
l'intermédiaire des serveurs de noms, le système recherche alors l'adresse IP
dans le fichier /etc/hosts.

10. Travail avec des profils


Plusieurs périphériques réseau logiques peuvent être créés pour chaque périphérique matériel

36
10. Travail avec des profils

physique. Par exemple, si vous avez une carte Ethernet dans votre système (eth0), vous
pouvez créer des périphériques réseau logiques avec différents surnoms et différentes options
de configuration, tous associés à eth0.

Les périphériques réseau logiques sont différents des alias de périphériques. Les périphériques
réseau logiques associés au même périphérique physique doivent exister dans différents profils
et ne peuvent pas être activés simultanément. Les alias de périphériques sont également
associés au même périphérique matériel, mais les alias de périphériques associés au même
matériel peuvent être activés en même temps. Reportez-vous à Section 11, « Alias de
périphériques » afin d'obtenir de plus amples informations sur la création d'alias de
périphériques.

Les profils peuvent être utilisés pour créer plusieurs ensembles de configuration pour différents
réseaux. Un ensemble de configuration peut inclure des périphériques logiques tels que les
hôtes et des paramètres DNS. Après la configuration des profils, vous pouvez utiliser l'Outil
d'administration du réseau afin de passer de l'un à l'autre.

Par défaut, il existe un profil appelé Commun. Pour créer un nouveau profil sélectionnez Profil
=> Nouveau dans le menu déroulant, puis entrez un nom unique pour le profil.

Vous modifiez maintenant le nouveau profil, comme l'indique la barre de statut en bas de la
fenêtre principale.

Cliquez sur le périphérique figurant déjà dans la liste et sélectionnez le bouton Copier pour
copier le périphérique existant sur un périphérique réseau logique. Si vous utilisez le bouton
Nouveau, un alias de réseau sera créé, ce qui n'est pas correct. Pour changer les propriétés du
périphérique logique, sélectionnez-le parmi la liste, puis cliquez sur Modifier. Par exemple, le
surnom peut être changé en un nom plus parlant, comme eth0_office, afin qu'il puisse être plus
facilement identifiable.

Dans la liste des périphériques figure une colonne de cases de pointage intitulée Profil. Vous
pouvez cocher ou décocher des périphériques pour chaque profil. Seuls les périphériques
cochés sont inclus pour le profil actuellement sélectionné. Par exemple, si vous créez un
périphérique logique nommé eth0_office dans un profil nommé Office et que vous voulez
activer le périphérique logique si le profil est sélectionné, annulez la sélection du périphérique
eth0 et retenez à la place le périphérique eth0_office.

Par exemple, la Figure 2.16, « Profil Office » montre un profil appelé Office avec le
périphérique logique eth0_office. Il est configuré de façon à activer la première carte Ethernet à
l'aide de DHCP.

37
10. Travail avec des profils

Figure 2.16. Profil Office

Veuillez noter que le profil Home illustré dans la Figure 2.17, « Profil Home » active le
périphérique logique eth0_home qui est associé à eth0.

38
10. Travail avec des profils

Figure 2.17. Profil Home

Vous pouvez également configurer eth0 de façon à ce qu'il ne soit activé que dans le profil
Office et n'activer qu'un périphérique ppp (modem) dans le profil Home. Le profil Commun
peut également activer eth0 et un profil Away activer un périphérique ppp à utiliser en cas de
voyage.

Pour activer un profil au démarrage, modifiez le fichier de configuration du chargeur de


démarrage afin qu'il inclut l'option netprofile=<nom-de-profil>. Par exemple, si le système
utilise GRUB en tant que chargeur de démarrage et que /boot/grub/grub.conf contient :
title Red Hat Enterprise Linux (2.6.9-5.EL) root (hd0,0) kernel /vmlinuz-2.6.9-5.EL ro root=/dev/VolGroup00

Remplacez-le par l'exemple suivant (où <profilename> représente le nom du profil à activer au
démarrage) :
title Red Hat Enterprise Linux (2.6.9-5.EL) root (hd0,0) kernel /vmlinuz-2.6.9-5.EL ro root=/dev/VolGroup00

Pour changer de profil une fois que le système a démarré, sélectionnez le bouton Applications

39
11. Alias de périphériques

(the main menu on the panel) => Outils de système => Contrôle du périphérique réseau (ou
tapez la commande system-control-network) pour sélectionner un profil et l'activer. La section
pour activer le profil n'apparaît dans l'interface du Contrôle du périphérique réseau que si
l'interface Commun par défaut, n'est pas la seule existant.

Sinon, exécutez la commande suivante pour activer un profil (remplacez <profilename> par le
nom du profil) :
system-config-network-cmd --profile <profilename> --activate

11. Alias de périphériques


Les alias de périphériques sont des périphériques virtuels associés au même matériel, mais ils
peuvent être activés au même moment afin d'avoir des adresses IP différentes. On les
représente généralement avec le nom du périphérique suivi du signe deux-points et d'un
nombre (eth0:1, par exemple). Ils sont utiles si vous souhaitez qu'un système ait plusieurs
adresses IP, mais que le système n'a qu'une seule carte réseau.

Après avoir configuré un périphérique Ethernet — comme eth0 — pour qu'il utilise une adresse
IP statique (DHCP ne fonctionne pas avec les alias), cliquez sur l'onglet Périphérique, puis sur
sur Nouveau. Sélectionnez la carte Ethernet à configurer avec un alias, configurez l'adresse IP
statique pour l'alias et cliquez sur Appliquer pour le créer. Étant donné qu'un périphérique
existe déjà pour la carte Ethernet, celui nouvellement créé est l'alias eth0:1.

Attention
Si vous configurez un périphérique Ethernet de façon à ce qu'il ait un alias, ni le
périphérique ni l'alias ne pourront être configurés pour utiliser DHCP. Vous devez
configurer manuellement les adresses IP.

Figure 2.18, « Exemple d'alias de périphérique réseau » montre un exemple d'alias pour le
périphérique eth0. Veuillez noter le périphérique eth0:1 — le premier alias pour eth0. Le
deuxième alias pour eth0 aurait le nom de périphérique eth0:2, et ainsi de suite. Pour modifier
les paramètres de l'alias de périphérique, comme par exemple, pour indiquer s'il doit être activé
au démarrage et le numéro de l'alias, sélectionnez-le dans la liste et cliquez sur le bouton
Modifier.

40
12. Enregistrement et restauration de la configuration réseau

Figure 2.18. Exemple d'alias de périphérique réseau

Sélectionnez l'alias et cliquez sur le bouton Activer pour activer l'alias. Si vous avez configuré
plusieurs profils, sélectionnez les profils dans lesquels l'inclure.

Afin de vous assurer que l'alias a bien été activé, utilisez la commande /sbin/ifconfig. La
sortie doit afficher le périphérique ainsi que l'alias de périphérique avec des adresses IP
différentes :
eth0 Link encap:Ethernet HWaddr 00:A0:CC:60:B7:G4 inet addr:192.168.100.5 Bcast:192.168.100.255 Mask:255.25

12. Enregistrement et restauration de la


configuration réseau
La version en ligne de commande de l'Outil d'administration du réseau peut être utilisée pour
enregistrer la configuration réseau du système sous un fichier. Ce fichier peut alors être utilisé
pour restaurer les paramètres du réseau sur un système Red Hat Enterprise Linux.

41
12. Enregistrement et restauration de la configuration réseau

Cette fonction peut être utilisée à l'intérieur d'un script de sauvegarde automatisé pour
enregistrer la configuration avant une mise à niveau ou réinstallation, ou pour copier la
configuration sur un système Red Hat Enterprise Linux différent.

Pour enregistrer ou exporter la configuration réseau du système sous le fichier /


tmp/network-config, exécutez la commande suivante en tant que super-utilisateur :

system-config-network-cmd -e > /tmp/network-config

Pour restaurer ou importer la configuration réseau depuis le fichier créé lors de la commande
précédente, exécutez la commande suivante en tant que super-utilisateur :
system-config-network-cmd -i -c -f /tmp/network-config

L'option -i indique l'import de données, l'option -c provoque la suppression de la configuration


existante avant l'import et l'option -f spécifie que le fichier à importer est le suivant.

42
Chapitre 3. OpenSSH
SSH™ (ou Secure SHell) est un protocole qui facilite les communications sécurisées entre deux
systèmes en utilisant une architecture client/serveur et permet aux utilisateurs de se connecter
à distance aux systèmes hôte de serveurs. Contrairement à d'autres protocoles de
communication, tels que FTP ou Telnet, SSH crypte la session de connexion, ce qui rend la
connexion difficile aux agresseurs voulant recueillir des mots de passe non-cryptés.

SSH est conçu pour remplacer les applications de terminal plus anciennes et moins sécurisées
qui sont utilisées pour se connecter à des hôtes distants, comme telnet ou rsh. Un programme
similaire appelé scp remplace des programmes moins récents conçus pour copier des fichiers
entre des hôtes, tels que rcp. Étant donné que ces applications plus anciennes ne cryptent pas
les mots de passe entre le client et le serveur, il est recommandé d'éviter autant que possible
de les utiliser. En effet, l'utilisation de méthodes sécurisées pour se connecter à des systèmes
distants, réduit les risques aussi bien pour le système client que pour l'hôte distant.

1. Fonctionnalités de SSH
SSH offre les précautions suivantes au niveau de la sécurité :

• Après avoir effectué une connexion initiale, le client peut s'assurer que sa connexion est
établie avec le même serveur que lors de sa session précédente.

• Le client transmet ses données d'authentification au serveur au moyen d'un cryptage solide
128 bits.

• Toutes les données envoyées et reçues lors d'une session sont transférées au moyen d'un
cryptage 128 bits, rendant ainsi le décryptage et la lecture de toute transmission interceptée
extrêmement difficile.

• Le client peut retransmettre des applications X111 depuis le serveur. Cette technique
appelée retransmission X11, fournit un moyen d'utiliser en toute sécurité des applications
graphiques sur un réseau.

Étant donné que le protocole SSH crypte tout ce qu'il envoie et reçoit, il peut être utilisé pour
sécuriser des protocoles autrement vulnérables. Grâce à la technique de retransmission de
port, un serveur SSH peut être employé pour sécuriser des protocoles non-sécurisés tels que
POP, augmentant ainsi la sécurité globale du système et de ses données.

Le serveur et le client OpenSSH peuvent aussi être configurés pour créer un tunnel similaire à
un réseau privé virtuel pour le trafic entre les machines client et serveur.

Red Hat Enterprise Linux inclut le paquetage général OpenSSH (openssh) ainsi que les
paquetages OpenSSH pour le serveur (openssh-server) et client (openssh-clients). Notez que
les paquetages OpenSSH requièrent le paquetage OpenSSL (openssl) qui installe plusieurs
bibliothèques cryptographiques permettant à OpenSSH de fournir des communications
cryptées.

1.1.
1
Pourquoi
X11 fait utiliser
référence au système d'affichageSSH ? X11R7, généralement appelé X Window System ou X. Red Hat
de fenêtres
Enterprise Linux inclut X11R7, un système X Window System Open Source.

43
2. Versions du protocole SSH

Les utilisateurs d'ordinateurs malintentionnés disposent d'une variété d'outils pour interrompre,
intercepter et réacheminer le trafic réseau afin de s'octroyer l'accès à un système. D'une
manière générale, ces menaces peuvent être répertoriées de la manière suivante :

• Interception d'une communication entre deux systèmes — Dans ce scénario, le pirate peut
se trouver quelque part sur le réseau entre les parties qui communiquent, pouvant ainsi
copier toute information qui est transmise entre elles. Le pirate peut intercepter et garder les
informations ou peut les modifier avant de les envoyer au destinataire prévu.

Cette attaque peut être orchestrée en utilisant un programme renifleur — un utilitaire réseau
courant.

• Usurpation de l'identité d'un hôte — Grâce à cette technique, le système d'un agresseur est
configuré de telle manière qu'il apparaît comme étant le destinataire souhaité d'une
transmission. Si cette stratégie fonctionne, le système de l'utilisateur ne détecte pas qu'il
communique en fait avec le mauvais hôte.

Ce type d'attaque peut être organisé grâce à l'utilisation de techniques appelées


empoisonnements DNS2 ou usurpation d'adresse IP3.

Ces deux techniques permettent d'intercepter des informations potentiellement confidentielles


et si cette interception est effectuée pour des raisons hostiles, le résultat peut être
catastrophique.

L'utilisation du protocole SSH pour effectuer une connexion au shell à distance ou pour copier
des fichiers permet de réduire considérablement ces menaces au niveau de la sécurité. En
effet, le client et serveur SSH utilisent des signatures numériques pour vérifier leur identité
respectives. En outre, toute communication entre le système client et le système serveur est
cryptée. Toute tentative d'usurpation d'identité à une extrémité ou à une autre de la
communication est difficilement possible puisque chaque paquet est crypté à l'aide d'une clé
connue seulement par le système local et le système distant.

2. Versions du protocole SSH


Le protocole SSH permet à tout programme client et serveur créé selon les spécifications du
protocole, de communiquer de façon sécurisée et d'être utilisé de manière interchangeable.

À l'heure actuelle, il existe deux versions différentes du protocole SSH (la version 1 et la version
2). Sous Red Hat Enterprise Linux, la suite OpenSSH utilise la version SSH 2 dotée d'un
algorithme d'échange de clés amélioré qui offre une protection contre le type d'agression
possible avec la version 1. Ceci étant, la suite OpenSSH prend en charge les connexions
effectuées avec la version 1.

2
L'empoisonnement DNS a lieu lorsqu'un intrus pénètre dans un serveur DNS, dirigeant les systèmes client vers la
copie d'un hôte avec une intention malveillante.
3
L'usurpation d'adresse IP se produit lorsqu'un intrus envoie des paquets réseau qui apparaissent faussement comme
provenant d'un hôte de confiance du réseau.

44
3. Séquence d'événements d'une connexion SSH

Important
Il est conseillé d'utiliser autant que possible, des serveurs et clients compatibles
avec la version 2.

3. Séquence d'événements d'une connexion


SSH
Pour aider à protéger l'intégrité d'une communication SSH entre deux ordinateurs hôte, la série
suivante d'événements doit être utilisée.

1. Une liaison cryptographique est établie afin de permettre au client de vérifier qu'il est bien
en communication avec le serveur souhaité.

2. La couche de transport de la connexion entre le client et tout hôte distant est cryptée au
moyen d'un chiffre symétrique.

3. Le client s'authentifie auprès du serveur.

4. Le client distant peut interagir avec l'hôte distant au moyen d'une connexion cryptée.

3.1. Couche de transport


Le rôle principal de la couche de transport est de faciliter une communication sécurisée entre
deux hôtes non seulement au moment de l'authentification, mais également lors de la
communication ayant lieu. Pour ce faire, la couche de transport traite le cryptage et décryptage
de données et offre une certaine protection quant à l'intégrité des paquets de données lors de
leur envoi et de leur réception. De plus, la couche de transport effectue la compression des
données permettant d'accélérer la vitesse de transfert des informations.

Lorsqu'un client communique avec un serveur au moyen d'un protocole SSH, de nombreux
éléments importants sont échangés afin que les deux systèmes puissent créer correctement la
couche de transport. Lors de cet échange, les opérations suivantes ont lieu :

• Des clés sont échangées.

• L'algorithme de cryptage de clés publiques est déterminé.

• L'algorithme de cryptage symétrique est déterminé.

• L'algorithme d'authentification de message est déterminé.

• L'algorithme de hachage est déterminé.

Pendant l'échange de clé, le serveur s'identifie sur le client avec une clé d'hôte unique. Si
auparavant le client n'a jamais communiqué avec ce serveur particulier, la clé d'hôte du serveur
est alors inconnue pour le client et il ne se connecte pas. OpenSSH solutionne ce problème en

45
3.2. Authentification

acceptant la clé d'hôte du serveur. Ceci se produit après que l'utilisateur soit notifié et qu'il ait
accepté et vérifié la clé d'hôte du serveur. Durant les autres connexions, la clé d'hôte du serveur
est vérifiée par rapport à la version sauvegardée sur le client, assurant ainsi que le client
communique vraiment avec le serveur désiré. Si, dans le futur, la clé d'hôte ne correspond plus,
l'utilisateur doit supprimer la version sauvegardée sur le client avant qu'une connexion puisse
avoir lieu.

Attention
Il est tout à fait possible pour un pirate de se faire passer pour le serveur SSH lors
de la première connexion car le système local ne détecte aucune différence entre
le serveur désiré et le faux serveur créé par le pirate. Afin d'éviter une telle
situation, contrôlez l'intégrité d'un nouveau serveur SSH en contactant
l'administrateur du serveur avant d'établir la première connexion ou dans le cas où
une clé d'hôte ne correspond pas à celle stockée sur le serveur.

Le protocole SSH est conçu pour fonctionner avec presque tout d'algorithme de clé publique ou
tout format de codage. Après que l'échange initial des clés crée une valeur de hachage utilisée
pour les échanges et une valeur secrète partagée, les deux systèmes commencent
immédiatement à calculer de nouveaux algorithmes et de nouvelles clés pour protéger
l'authentification et les futures données envoyées via la connexion.

Après la transmission d'une certaine quantité de données au moyen d'une clé et d'un
algorithme précis (la quantité exacte dépend de l'implémentation du protocole SSH), un nouvel
échange de clés s'effectue ; cette opération engendre la création d'un autre ensemble de
valeurs de hachage et d'une autre valeur secrète partagée. De cette façon, même si un pirate
réussit à déterminer les valeurs de hachage et la valeur secrète partagée, ces informations ne
lui seront utiles que pour une durée limitée.

3.2. Authentification
Une fois que la couche de transport a créé un tunnel sécurisé pour envoyer les informations
entre les deux systèmes, le serveur indique au client les différentes méthodes d'authentification
prises en charge, telles que l'utilisation d'une signature dotée d'une clé codée ou la saisie d'un
mot de passe. Le client doit ensuite essayer de s'authentifier auprès du serveur au moyen d'une
des méthodes spécifiées.

Les serveurs et clients SSH pouvent être configurés de façon à permettre différents types
d'authentification, donnant à chacune des deux parties un niveau de contrôle optimal. Le
serveur peut décider des méthodes de cryptage qu'il prend en charge en fonction de son
modèle de sécurité et le client lui peut choisir l'ordre des méthodes d'authentification à utiliser
parmi les options disponibles.

3.3. Canaux
Après une authentification réussie sur la couche de transport SSH, de multiples canaux sont
ouverts grâce à une technique appelée multiplexing4. Chacun de ces canaux traite la
4
Une connexion multiplexée consiste à différents signaux envoyés à travers un milieu partagé, commun. Avec SSH,
différents canaux sont envoyés à travers une connexion commune sécurisée.

46
4. Configuration d'un serveur OpenSSH

communication pour différentes sessions de terminal et pour des sessions X11 retransmises.

Le client et le serveur peuvent créer un nouveau canal. Chaque canal reçoit ensuite un numéro
différent à chaque extrémité de la connexion. Lorsque le client essaie d'ouvrir un nouveau
canal, il envoie le numéro du canal accompagné de la requête. Ces informations sont stockées
par le serveur et utilisées pour diriger la communication vers ce canal. Cette procédure est
utilisée afin que des types différents de session ne créent pas de nuisances mutuelles et de
sorte qu'à la fin d'une session donnée, son canal puisse être fermé sans que la connexion SSH
primaire ne soit interrompue.

Les canaux prennent aussi en charge le contrôle du flux de données, ce qui leur permet
d'envoyer et de recevoir des données de façon ordonnée. Ce faisant, aucune donnée n'est
envoyée sur le canal tant que l'hôte n'a pas reçu un message lui indiquant que le canal est
ouvert.

Le client et le serveur négocient automatiquement la configuration de chaque canal, en fonction


du type de service demandé par le client et de la manière selon laquelle l'utilisateur est
connecté au réseau. Ainsi, le traitement des différents types de connexions distantes est non
seulement extrêmement flexible, mais il ne nécessite même pas d'apporter des modifications à
la structure de base du protocole.

4. Configuration d'un serveur OpenSSH


Pour exécuter un serveur OpenSSH, vous devez vous assurer que les paquetages RPM
appropriés sont bien installés. Le paquetage openssh-server est nécessaire et dépend du
paquetage openssh.

Le démon OpenSSH utilise le fichier de configuration /etc/ssh/sshd_config. Le fichier de


configuration par défaut devrait suffire dans la plupart des cas. Toutefois, si vous souhaitez une
configuration du démon différente de celle fournie dans le fichier par défaut sshd_config,
consultez la page de manuel relative à sshd afin d'obtenir une liste des mots clés pouvant être
définis dans le fichier de configuration.

Si vous réinstallez un système, un nouvel ensemble de clés d'identification sera créé. Tous les
clients qui s'y sont connectés avant la réinstallation avec des outils OpenSSH verront le
message suivant :
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ ATTENTION : L'IDENTIFICATION D'HÔTE À DISTANCE A CHANGÉE ! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IL EST POSSIBLE QUE QUELQU'UN FASSE UNE ACTION MAL INTENTIONNÉE !
Quelqu'un pourrait vous espionner en ce moment (man-in-the-middle attack) !
C'est également possible que la clé d'hôte RSA ait été changée.

Si vous souhaitez conserver les clés d'hôtes générées pour le système, sauvegardez les
fichiers /etc/ssh/ssh_host*key* et restaurez-les après la réinstallation. Ce processus permet de
conserver l'identité du système si bien que lorsque les clients essaieront de se connecter au
système après la réinstallation, ils ne recevront pas le message d'avertissement.

4.1. Utilisation nécessaire de SSH pour les connexions à


distance

47
5. Fichiers de configuration d'OpenSSH

Pour que le protocole SSH soit vraiment efficace, il est essentiel de n'utiliser aucun protocole de
connexion non-sécurisé, tel que Telnet et FTP. Sinon, il est possible de protéger le mot de
passe d'un utilisateur en utilisant SSH pour une session, mais il pourra être ensuite être
intercepté lors d'une connexion ultérieure avec Telnet.

Ci-dessous figurent un certain nombre de services devant être désactivés :

• telnet

• rsh

• rlogin

• vsftpd

Pour désactiver des méthodes de connexion au système qui ne sont pas sécurisées, utilisez le
programme en ligne de commande nommé chkconfig, le programme basé sur ncurses appelé /
usr/sbin/ntsysv ou l'application graphique Outil de configuration des services (system-
config-services). Tous ces outils nécessitent un accès de niveau super-utilisateur (ou root).

5. Fichiers de configuration d'OpenSSH


OpenSSH est constitué de deux ensembles de fichiers de configuration, un pour les
programmes client (ssh, scp et sftp) et l'autre pour le démon de serveur (sshd).

Les informations de configuration SSH qui s'appliquent à l'ensemble du système sont stockées
dans le répertoire /etc/ssh :

• moduli — Fichier contenant les groupes Diffie-Hellman utilisés pour l'échange de clés Diffie-
Hellman qui est crucial pour la création d'une couche de transport sécurisée. Lorsque les
clés sont échangées au début d'une session SSH, une valeur secrète partagée ne pouvant
être déterminée que conjointement par les deux parties est créée. Cette valeur est ensuite
utilisée pour effectuer l'authentification de l'hôte.

• ssh_config— Fichier de configuration client SSH pour l'ensemble du système. Il est écrasé
si un même fichier est présent dans le répertoire personnel de l'utilisateur (~/.ssh/config).

• sshd_config — Fichier de configuration pour le démon sshd.

• ssh_host_dsa_key — Clé DSA privée utilisée par le démon sshd.

• ssh_host_dsa_key.pub — Clé DSA publique utilisée par le démon sshd.

• ssh_host_key — Clé RSA privée utilisée par le démon sshd pour la version 1 du protocole
SSH.

• ssh_host_key.pub — Clé RSA publique utilisée par le démon sshd pour la version 1 du
protocole SSH.

• ssh_host_rsa_key — Clé RSA privée utilisée par le démon sshd pour la version 2 du
protocole SSH.

48
6. Configuration d'un client OpenSSH

• ssh_host_rsa_key.pub — Clé RSA publique utilisée par le démon sshd pour la version 2 du
protocole SSH.

Les informations de configuration SSH spécifiques à l'utilisateur sont stockées dans son
répertoire personnel à l'intérieur du répertoire ~/.ssh/ où figurent :

• authorized_keys — Fichier contenant une liste de clés publiques autorisées pour les
serveurs. Lorsque le client se connecte à un serveur, ce dernier authentifie le client en
vérifiant sa clé publique signée qui est stockée dans ce fichier.

• id_dsa — Fichier contenant la clé DSA privée de l'utilisateur.

• id_dsa.pub — Clé DSA publique de l'utilisateur.

• id_rsa — Clé RSA privée utilisée par ssh pour la version 2 du protocole SSH.

• id_rsa.pub — Clé RSA publique utilisée par ssh pour la version 2 du protocole SSH.

• identity — Clé RSA privée utilisée par ssh pour la version 1 du protocole SSH.

• identity.pub — Clé RSA privée utilisée par ssh pour la version 1 du protocole SSH.

• known_hosts — Fichier contenant les clés d'hôtes DSA des serveurs SSH auxquels
l'utilisateur a accédé. Ce fichier est très important car il permet de garantir que le client SSH
se connecte au bon serveur SSH.

Important
Si la clé d'hôte d'un serveur SSH a changé, le client informe l'utilisateur que le
processus de connexion ne peut pas se poursuivre tant que la clé d'hôte du
serveur n'a pas été supprimée du fichier known_hosts à l'aide d'un éditeur de
texte. Avant de procéder à cette opération, il est toutefois conseillé de
contacter l'administrateur système du serveur SSH pour vous assurer que le
serveur n'est pas compromis.

Consultez les pages de manuel de ssh_config et sshd_config pour obtenir plus d'informations
sur les différentes directives disponibles dans les fichiers de configuration de SSH.

6. Configuration d'un client OpenSSH


Pour vous connecter à un serveur OpenSSH depuis un ordinateur client, les paquetages
openssh-clients et openssh doivent être préalablement installés sur cet ordinateur client.

6.1. Utilisation de la commande ssh


La commande ssh est un substitut sécurisé des commandes rlogin, rsh et telnet. Elle vous
permet de vous connecter à un ordinateur distant et d'y exécuter des commandes.

La connexion à un ordinateur distant au moyen de ssh est semblable à la connexion en utilisant

49
6.2. Utilisation de la commande scp

telnet. Par exemple, pour vous connecter à un ordinateur distant appelé penguin.exemple.net,
entrez la commande suivante à l'invite du shell :
ssh penguin.example.net

La première fois que vous effectuez la connexion à un ordinateur distant à l'aide de ssh, le
système affiche un message semblable à celui-ci :
L'authenticité de l'hôte 'penguin.example.net' ne peut pas être établie.
L'emprunte de la clé DSA est 94:68:3a:3a:bc:f3:9a:9b:01:5d:b3:07:38:e2:11:0c.
Êtes-vous sûr de vouloir continuer à vous connecter (oui/non) ?

Saisissez yes pour poursuivre. Ce faisant, le serveur sera ajouté à votre liste d'hôtes connus
(~/.ssh/known_hosts), comme le montre le message suivant :
Attention : 'penguin.example.net' (RSA) a été ajouté de manière permanente à votre liste d'hôtes connus.

Une invite vous demandera ensuite d'entrer votre mot de passe pour l'ordinateur distant. Après
l'avoir entré, l'invite du shell apparaîtra sur l'ordinateur distant. Si vous n'indiquez pas de nom
d'utilisateur, celui sous lequel vous êtes connecté sur l'ordinateur client local sera transmis à
l'ordinateur distant. Si en revanche, vous souhaitez spécifier un nom d'utilisateur différent,
utilisez la commande suivante :
ssh username@penguin.example.net

Vous pouvez aussi avoir recours à la syntaxe ssh -l username penguin.example.net.

La commande ssh peut être utilisée pour exécuter une commande sur l'ordinateur distant sans
vous connecter à une invite du shell. La syntaxe est alors ssh nom-d-hôtecommande. Si vous
souhaitez, par exemple, exécuter la commande ls /usr/share/doc sur l'ordinateur distant
penguin.example.net, entrez la commande suivante à l'invite du shell :
ssh penguin.example.net ls /usr/share/doc

Une fois le bon mot de passe saisi, le contenu du répertoire distant /usr/share/doc sera affiché
et vous reviendrez ensuite à l'invite du shell.

6.2. Utilisation de la commande scp


La commande scp peut être utilisée pour transférer des fichiers entre des ordinateurs au moyen
d'une connexion cryptée sécurisée. Cette commande est semblable à rcp.

La syntaxe générale correspondant au transfert d'un fichier local vers un système distant est la
suivante :
scp <localfile>username@tohostname:<remotefile>

Le fichier local, <localfile>, spécifie la source, y compris le chemin au fichier, comme /


var/log/maillog. Le fichier distant <remotefile> spécifie la destination, qui peut être un
nouveau nom de fichier comme /tmp/hostname-maillog. Pour le système distant, si le chemin ne
commence pas par un /, il correspondra au répertoire personnel de username, par exemple /
home/username/.

Pour transférer le fichier local shadowman vers le répertoire personnel de votre compte dans

50
6.3. Utilisation de la commande sftp

penguin.example.net, saisissez la commande suivante à une invite du shell (remplacez


username par votre propre nom d'utilisateur) :

scp shadowman username@penguin.example.net:shadowman

Cette opération entraînera le transfert du fichier local shadowman vers /home/username/shadowman


sur penguin.example.net. Vous pouvez également omettre shadowman dans la commande scp.

La syntaxe générale correspondant au transfert d'un fichier distant vers un système est la
suivante :
scp username@tohostname:<remotefile><newlocalfile>

Le fichier distant, <remotefile>, spécifie la source, y compris le chemin, et le nouveau fichier


local, <newlocalfile>, spécifie la destination, y compris le chemin.

Il est également possible de spécifier plusieurs fichiers en tant que fichiers source. Par
exemple, pour transférer le contenu du répertoire downloads/ vers un répertoire existant nommé
uploads/ sur l'ordinateur distant penguin.example.net, saisissez les éléments ci-dessous à une
invite du shell :
scp downloads/* username@penguin.example.net:uploads/

6.3. Utilisation de la commande sftp


L'utilitaire sftp peut être utilisé pour ouvrir une session FTP interactive sécurisée. Il est
semblable à ftp mais, contrairement à ce dernier, utilise une connexion cryptée sécurisée. La
syntaxe générale de cet utilitaire est sftp username@hostname.com. Une fois authentifié, vous
pouvez utiliser un ensemble de commandes semblables à celles de FTP. Reportez-vous à la
page de manuel relative à sftp afin de consulter une liste de ces commandes. Pour consulter
cette page de manuel, exécutez la commande man sftp à l'invite du shell. L'utilitaire sftp n'est
disponible que dans les versions 2.5.0p1 ou supérieures d'OpenSSH.

7. Beaucoup plus qu'un shell sécurisé


Une interface sécurisée en ligne de commande n'est qu'une utilisation parmi tant d'autres, de
SSH. En ayant la quantité nécessaire de bande passante, les sessions X11 peuvent être
dirigées sur un canal SSH. Ou, en utilisant la retransmission TCP/IP, les connexions par port
entre les systèmes, considérées auparavant comme étant non-sécurisés, peuvent être
mappées à des canaux SSH spécifiques.

7.1. Retransmission X11


L'ouverture d'une session X11 par le biais d'une connexion SSH établie est aussi facile que la
connexion au serveur SSH en utilisant l'option -Y et l'exécution d'un programme X sur un
ordinateur local.
ssh -Y <user>@example.com

Lorsqu'un programme X est exécuté à partir d'une invite du shell sécurisée, le client et le
serveur SSH créent un nouveau canal sécurisé et les données du programme X sont ensuite

51
7.2. Retransmission de port

envoyées à l'ordinateur client via ce canal d'une manière transparente.

La retransmission X11 peut être très utile. Elle peut être utilisée par exemple, pour créer une
session interactive sécurisée de l'Outil de configuration de l'imprimante. Pour ce faire,
connectez-vous au serveur en utilisant ssh et en tapant :
system-config-printer &

Après avoir fourni le mot de passe du super-utilisateur pour le serveur, l'Outil de configuration
de l'imprimante apparaît et permet à l'utilisateur distant de configurer en toute sécurité
l'impression sur le système à distance.

7.2. Retransmission de port


Grâce à SSH, il est possible de sécuriser des protocoles TCP/IP non-sécurisés via la
retransmission de port. En utilisant cette technique, le serveur SSH devient un conduit crypté
vers le client SSH.

La retransmission de port consiste à mapper un port local du client vers un port distant du
serveur. SSH permet de mapper un port quelconque du serveur vers un port quelconque du
client ; pour que cette technique fonctionne, il n'est pas nécessaire qu'une correspondance
existe entre ces numéros de port.

Pour créer un canal de retransmission de port TCP/IP qui écoute les connexions sur l'hôte local,
utilisez la commande suivante :

Remarque
Pour configurer la retransmission de port de manière à ce qu'elle écoute sur les
ports inférieurs à 1024, il est nécessaire d'avoir un accès de niveau super-
utilisateur (ou root).

Pour vérifier le courrier électronique sur un serveur nommé mail.example.com en utilisant le


protocole POP via une connexion cryptée, utilisez la commande ci-dessous :
ssh -L 1100:mail.example.com:110 mail.example.com

Une fois que le canal de retransmission de port est en place entre l'ordinateur client et le
serveur messagerie, indiquez au client de messagerie POP3 d'utiliser le port 1100 sur l'hôte
local afin de vérifier le nouveau courrier. Toutes les requêtes envoyées au port 1100 du
système client seront transmises de façon sécurisée au serveur mail.example.com.

Si mail.example.com n'exécute pas un serveur SSH, mais qu'un autre ordinateur l'exécute, SSH
peut toujours être utilisé pour sécuriser une partie de la connexion. Dans ce cas toutefois, une
commande légèrement différente est nécessaire :
ssh -L 1100:mail.example.com:110 other.example.com

52
7.3. Création de paires de clés

Dans cet exemple, des requêtes POP3 en provenance du port 1100 de l'ordinateur client sont
retransmises vers le serveur SSH, other.example.com par le biais de la connexion SSH sur le
port 22 . Ensuite, other.example.com se connecte au port 110 sur mail.example.com pour vérifier
la réception de nouveau courrier. Notez qu'en utilisant cette technique, seule la connexion entre
le système client et le serveur SSH other.example.com est sécurisée.

La retransmission de port peutégalement être utilisée pour obtenir des informations de façon
sécurisée à travers un pare-feu. Si le pare-feu est configuré de façon à permettre le trafic SSH
par son port standard (22) mais bloque l'accès aux autres ports, une connexion entre deux
ordinateurs hôte utilisant des ports bloqués est tout de même possible en redirigeant leur
communication sur une connexion SSH établie.

Remarque
L'utilisation de la retransmission de port pour transférer des connexions de cette
façon permet à tout utilisateur du système client de se connecter à ce service. Si le
système client est compromis, les pirates auront également accès aux services
retransmis.

Les administrateurs système préoccupés quant à l'utilisation de la retransmission


de port peuvent désactiver cette fonction sur le serveur en spécifiant le paramètre
No pour la ligne AllowTcpForwarding dans /etc/ssh/sshd_config et en redémarrant
ensuite le service sshd.

7.3. Création de paires de clés


Si vous ne voulez pas avoir à entrer votre mot de passe à chaque fois que vous utilisez ssh, scp
ou sftp pour vous connecter à un ordinateur distant, vous pouvez créer une paire de clés
d'autorisation.

Des clés doivent être créés pour chaque utilisateur. Afin de créer une paire de clés pour un
utilisateur donné, suivez les étapes suivantes en tant que l'utilisateur souhaitant se connecter à
des ordinateurs distants. Si vous le faites en tant que super-utilisateur, seul celui-ci pourra
utiliser les clés.

Depuis la version 3.0 de OpenSSH, ~/.ssh/authorized_keys2, ~/.ssh/known_hosts2 et /


etc/ssh_known_hosts2 sont obsolètes. Les protocles SSH 1 et 2 partagent les fichiers
~/.ssh/authorized_keys, ~/.ssh/known_hosts et /etc/ssh/ssh_known_hosts.

Red Hat Enterprise Linux 5.0.0 utilise par défaut le protocole 2 de SSH et les clés RSA.

Astuce
Si vous réinstallez le système, mais souhaitez conserver votre paire de clés,
sauvegardez le répertoire .ssh dans votre répertoire personnel. Une fois la
réinstallation terminée, copiez-le de nouveau dans votre répertoire personnel

53
7.3. Création de paires de clés

(home). Ce processus peut être exécuté pour tous les utilisateurs de votre
système, y compris le super-utilisateur.

7.3.1. Création d'une paire de clés RSA pour la version 2


Suivez les étapes indiquées ci-dessous afin de créer une paire de clés RSA pour la version 2
du protocole SSH. Il s'agit du démarrage par défaut avec OpenSSH 2.9

1. Pour créer une paire de clés RSA que vous utiliserez avec la version 2 du protocole, entrez
la commande suivante à l'invite du shell :
ssh-keygen -t rsa

Acceptez l'emplacement par défaut du fichier, à savoir ~/.ssh/id_rsa. Entrez ensuite une
phrase d'accès différente du mot de passe de votre compte et confirmez-la en la tapant de
nouveau.

La clé publique est enregistrée dans ~/.ssh/id_rsa.pub. La clé privée quant à elle, est
enregistrée dans ~/.ssh/id_rsa. Ne divulguez jamais votre clé privée.

2. Changez les autorisations de votre répertoire .ssh à l'aide de la commande suivante :


chmod 755 ~/.ssh

3. Copiez le contenu de ~/.ssh/id_rsa.pub dans le fichier ~/.ssh/authorized_keys sur


l'ordinateur auquel vous désirez vous connecter. Si le fichier ~/.ssh/authorized_keys
existe, vous pouvez ajouter le contenu du fichier ~/.ssh/id_rsa.pub dans le fichier
~/.ssh/authorized_keys sur l'autre ordinateur.

4. Changez les permissions du fichier authorized_keys à l'aide de la commande suivante :


chmod 644 ~/.ssh/authorized_keys

5. Si vous utilisez GNOME ou un bureau graphique avec GTK2 + les bibliothèques installées,
passez à Section 7.3.4, « Configuration de ssh-agent avec un GUI ». Si vous n'utilisez pas
le système X Window, passez à Section 7.3.5, « Configuration de ssh-agent ».

7.3.2. Création d'une paire de clés DSA pour la version 2


Suivez les étapes indiquées ci-dessous afin de créer une paire de clés DSA pour la version 2
du protocole SSH.

1. Pour créer une paire de clés DSA que vous utiliserez avec la version 2 du protocole, entrez
la commande suivante à l'invite du shell :
ssh-keygen -t dsa

Acceptez l'emplacement par défaut du fichier, à savoir ~/.ssh/id_dsa. Entrez ensuite une
phrase d'accès différente du mot de passe de votre compte et confirmez-la en la tapant de

54
7.3. Création de paires de clés

nouveau.

Astuce
Une phrase d'accès est une chaîne de mots et de caractères utilisée pour
authentifier un utilisateur. Les phrases d'accès différent des mots de passe
dans le sens où les phrases d'accès peuvent inclure des espaces et des
tabulations, contrairement aux mots de passe. De plus, elles sont
généralement plus longues que les mots de passe car elles constituent de
véritables phrases et non pas de simples mots.

La clé publique est enregistrée dans ~/.ssh/id_dsa.pub. La clé privée quant à elle est
enregistrée dans ~/.ssh/id_dsa. Il est important de ne jamais communiquer votre clé privée
à qui que ce soit.

2. Changez les permissions du répertoire .ssh à l'aide de la commande suivante :


chmod 755 ~/.ssh

3. Copiez le contenu de ~/.ssh/id_dsa.pub dans le fichier ~/.ssh/authorized_keys sur


l'ordinateur auquel vous souhaitez vous connecter. Si le fichier ~/.ssh/authorized_keys
existe, vous pouvez ajouter le contenu du fichier ~/.ssh/id_dsa.pub dans le fichier
~/.ssh/authorized_keys sur l'autre ordinateur.

4. Changez les permissions du fichier authorized_keys à l'aide de la commande suivante :


chmod 644 ~/.ssh/authorized_keys

5. Si vous utilisez GNOME ou un environnement de bureau graphique avec le GTK2 + les


bibliothèques installées, passez à Section 7.3.4, « Configuration de ssh-agent avec un
GUI ». Si vous n'utilisez pas le système X Window, passez à Section 7.3.5, « Configuration
de ssh-agent ».

7.3.3. Création d'une paire de clés RSA pour les versions 1.3 et 1.5
Suivez les étapes indiquées ci-dessous afin de créer une paire de clés RSA pour la version 1
du protocole SSH. Si vos connexions ne se font qu'entre des systèmes utilisant DSA, vous
n'avez pas besoin d'une paire de clés RSA version 1.3 ou RSA version 1.5.

1. Pour générer une paire de clés RSA (pour les versions 1.3 et 1.5 du protocole), entrez la
commande suivante à l'invite du shell :
ssh-keygen -t rsa1

Acceptez l'emplacement par défaut du fichier (~/.ssh/identity). Entrez une phrase d'accès
différente du mot de passe de votre compte. Confirmez-la en l'entrant de nouveau.

La clé publique est enregistrée dans ~/.ssh/identity.pub. La clé privée quant à elle, est
enregistrée dans ~/.ssh/identity. Ne divulguez jamais votre clé privée.

55
7.3. Création de paires de clés

2. Modifiez les autorisations de votre répertoire .ssh et de votre clé à l'aide des commandes
chmod 755 ~/.ssh et chmod 644 ~/.ssh/identity.pub.

3. Copiez le contenu de ~/.ssh/identity.pub dans le fichier ~/.ssh/authorized_keys sur


l'ordinateur auquel vous souhaitez vous connecter. Si le fichier ~/.ssh/authorized_keys
n'existe pas, vous pouvez copier le fichier ~/.ssh/identity.pub dans le fichier
~/.ssh/authorized_keys sur l'ordinateur distant.

4. Si vous utilisez GNOME, passez à Section 7.3.4, « Configuration de ssh-agent avec un


GUI ». Si vous n'utilisez pas GNOME, passez à Section 7.3.5, « Configuration de ssh-
agent ».

7.3.4. Configuration de ssh-agent avec un GUI


Vous pouvez vous servir de l'utilitaire ssh-agent pour enregistrer votre phrase d'accès afin de ne
pas avoir à l'entrer à chaque fois que vous effectuez une connexion ssh ou scp. Si vous utilisez
GNOME, le paquetage gnome-ssh-askpass contient l'application qui peut être utilisée pour
obtenir votre phrase d'accès à chaque fois que vous vous connectez à GNOME et pour la
garder en mémoire jusqu'à ce que vous quittiez GNOME. Ainsi, vous ne devrez pas entrer votre
mot de passe ou votre phrase d'accès lorsque vous effectuerez toute connexion ssh ou scp au
cours d'une session GNOME. Si vous n'utilisez pas GNOME, passez à Section 7.3.5,
« Configuration de ssh-agent ».

Afin d'enregistrer votre phrase d'accès lors d'une session GNOME, suivez les étapes
suivantes :

1. Le paquetage gnome-ssh-askpass doit être préalablement installé. Vous pouvez utiliser la


commande rpm -q openssh-askpass afin de déterminer si ce dernier est bien installé. Si ce
n'est pas le cas, procédez à son installation à l'aide de votre ensemble de CD-ROM Red
Hat Enterprise Linux à partir d'un site miroir FTP Red Hat ou au moyen de Red Hat
Network.

2. Sélectionnez le bouton Menu principal (sur le panneau) => Préférences => Plus de
préférences => Sessions, et cliquez sur l'onglet Programmes de démarrage. Cliquez sur
Ajouter et entrez /usr/bin/ssh-add dans la zone texte de Startup Command. Indiquez un
numéro de priorité supérieur à toute autre commande existante afin de vous assurer qu'elle
sera exécutée en dernier. Le nombre 70 par exemple (ou tout autre nombre plus élevé) est
un bon choix de priorité pour ssh-add. Plus le numéro de priorité est élevé, plus la priorité
est basse. Par conséquent, si vous avez d'autres programmes répertoriés, leur numéro de
priorité doit être le plus bas. Cliquez sur Close pour sortir du programme.

3. Quittez GNOME et connectez-vous à nouveau ; en d'autres termes, redémarrez X Window.


Une fois GNOME lancé, une boîte de dialogue apparaîtra et vous invitera à saisir votre ou
vos phrases d'accès. Entrez la phrase demandée. Si vous avez configuré une paire de clés
DSA et une paire de clés RSA, le système vous demandera d'entrer les deux phrases
d'accès. À partir de ce moment, ssh, scp ou sftp ne devraient plus vous demander votre
mot de passe.

7.3.5. Configuration de ssh-agent


Vous pouvez vous servir de l'utilitaire ssh-agent pour enregistrer votre phrase-mot de passe afin

56
8. Ressources supplémentaires

de ne pas avoir à l'entrer à chaque fois que vous effectuez une connexion ssh ou scp. Si vous
n'utilisez pas le système X Window, suivez les étapes indiquées ci-dessous depuis l'invite du
shell. En revanche, si vous utilisez GNOME, mais si vous ne voulez pas qu'il vous demande
votre phrase-mot de passe lorsque vous vous connectez (voir Section 7.3.4, « Configuration de
ssh-agent avec un GUI »), vous pouvez appliquer cette procédure dans une fenêtre de terminal
de type Xterm. Si vous utilisez X Window, mais pas GNOME, vous pourrez appliquer cette
procédure dans une fenêtre de terminal. Votre phrase-mot de passe ne sera cependant gardée
en mémoire que pour cette fenêtre de terminal ; il ne s'agit pas d'un paramètre global.

1. À l'invite du shell, saisissez la commande suivante :


exec /usr/bin/ssh-agent $SHELL

2. Saisissez ensuite la commande :


ssh-add

et entrez votre ou vos phrases d'accès. Si vous avez plusieurs paires de clés configurées,
le système vous invitera à entrer les phrases d'accès correspondantes.

3. Dès que vous vous déconnectez, vos phrases d'accès sont effacées de la mémoire du
système. Vous devez exécuter ces deux commandes à chaque fois que vous vous
connectez à une console virtuelle ou que vous ouvrez une fenêtre de terminal.

8. Ressources supplémentaires
Les projets OpenSSH et OpenSSL faisant l'objet d'un développement continu, leur site Web
respectif constitue la meilleure source d'informations de mises à jour. Les pages de manuel
relatives aux outils OpenSSH et OpenSSL sont également très utiles et offrent de nombreuses
informations détaillées.

8.1. Documentation installée

• Les pages de manuel relatives à ssh, scp, sftp, sshd et ssh-keygen — Ces pages
contiennent des informations sur la façon d'utiliser ces commandes, ainsi que sur les
paramètres qui s'y rapportent.

8.2. Sites Web utiles

• http://www.openssh.com/ — Contient un Forum Aux Questions (FAQ) portant sur OpenSSH,


des rapports de bogues, des listes de diffusion, les objectifs du projet ainsi que des
explications plus techniques sur les fonctions de sécurité.

• http://www.openssl.org/ — Contient un Forum Aux Questions (FAQ) portant sur OpenSSL,


des listes de diffusion et une description de l'objectif du projet.

• http://www.freessh.org/ — Contient le logiciel client SSH pour d'autres plates-formes.

57
Chapitre 4. Dynamic Host
Configuration Protocol (DHCP)
Le protocole DHCP ('Dynamic Host Configuration Protocol') est un protocole réseau permettant
d'assigner automatiquement des informations TCP/IP aux ordinateurs clients. Chaque client
DHCP se connecte au serveur central DHCP, lequel renvoie la configuration réseau du client (y
compris l'adresse IP, la passerelle et les serveurs DNS).

1. Pourquoi utiliser DHCP ?


DHCP permet de livrer automatiquement la configuration des interfaces réseau du client. Lors
de la configuration du système client, l'administrateur peut choisir DHCP et ne pas avoir à
entrer d'adresse IP, de masque réseau, de passerelle ou de serveur DNS. Le client récupère
ces informations à partir du serveur DHCP. DHCP est également utile lorsqu'un administrateur
souhaite modifier les adresses IP d'un nombre important de systèmes. Au lieu de reconfigurer
tous les systèmes, il peut se contenter d'éditer un fichier de configuration DHCP sur le serveur
pour le nouvel ensemble d'adresses IP. Si les serveurs DNS d'une organisation changent, les
modifications sont réalisées sur le serveur DHCP, et non pas sur les clients DHCP. Lorsque
l'administrateur redémarre le réseau ou les clients, les changements prennent effet.

Si une organisation a un serveur DHCP fonctionnel correctement connecté à un réseau, les


utilisateurs d'ordinateurs portables et autres ordinateurs mobiles peuvent déplacer ces
périphériques de bureau en bureau.

2. Configuration d'un serveur DHCP


Pour configurer un serveur DHCP, le fichier de configuration dhcpd.conf doit être créé dans le
répertoire /etc/. Vous pouvez trouver un exemple de fichier dans
/usr/share/doc/dhcp-<version>/dhcpd.conf.sample.

DHCP utilise également le fichier /var/lib/dhcpd/dhcpd.leases pour stocker la base de


données d'attribution client. Reportez-vous à Section 2.2, « Base de données d'attribution »
pour plus d'informations.

2.1. Fichier de configuration


La première étape lors de la configuration d'un serveur DHCP consiste à créer le fichier de
configuration stockant les informations réseau pour les clients. Utilisez ce fichier pour déclarer
les options et les options globales pour les systèmes clients.

Le fichier de configuration peut contenir des tabulations ou lignes vierges complémentaires pour
faciliter le formatage. Les mots clés sont sensibles à la casse et les lignes commençant par un
signe dièse (#) correspondent à des commentaires.

Deux schémas de mise à jour DNS sont actuellement mis en place — le mode de mise à jour
DNS ad-hoc et le mode de mise à jour rapide avec interaction DHCP-DNS par intérim. Si ces
deux modes sont acceptés comme faisant partie du processus IETF (Internet Engineering Task

58
2.1. Fichier de configuration

Force) standard, il y a aura un troisième mode — la méthode de mise à jour DNS standard.
Vous devez configurer le serveur DNS pour qu'il soit compatible avec ces schémas. La version
3.0b2pl11 et les versions précédentes utilisaient le mode ad-hoc, qui a cependant été
abandonné. Si vous souhaitez conserver le même comportement, ajoutez la ligne suivante en
haut du fichier de configuration :
ddns-update-style ad-hoc;

Pour utiliser le deuxième mode, ajoutez la ligne suivante en haut du fichier de configuration :
ddns-update-style interim;

Consultez la page de manuel relative à dhcpd.conf pour obtenir de plus amples informations sur
les différents modes.

Il existe deux types de déclarations dans le fichier de configuration :

• Paramètres — Les paramètres règlent l'exécution d'une tâche, la façon dont une tâche est
exécutée ou les options de configuration réseau à envoyer au client.

• Déclarations — Les déclarations décrivent la topologie du réseau, les clients ; elles


fournissent des adresses pour les clients ou appliquent un groupe de paramètres à un
groupe de déclarations.

Les paramètres qui commencent avec le mot-clé option sont considérés comme des options.
Ces options configurent les options DHCP alors que les paramètres eux, configurent des
valeurs qui ne sont pas facultatives ou contrôlent le comportement du serveur DHCP.

Les paramètres (y compris les options) déclarés avant une section entre accolades ({ }) sont
considérés comme des paramètres globaux. Ceux-ci s'appliquent à toutes les sections se
trouvant en dessous.

Important
Si vous modifiez le fichier de configuration, les modifications ne prendront pas effet
tant que vous n'aurez pas redémarré le démon DHCP à l'aide de la commande
service dhcpd restart.

Astuce
Au lieu de changer le fichier de configuration et de redémarrer le service à chaque
fois, vous pouvez utiliser la commande omshell qui permet, de manière interactive,
de se connecter, requêter et changer la configuration d'un serveur DHCP. En
utilisant omshell, tous les changements peuvent être effectués pendant que le
serveur est démarré. Pour davantage d'informations sur omshell, reportez-vous au
manuel omshell.

59
2.1. Fichier de configuration

Dans l'Exemple 4.1, « Déclaration de sous-réseau », les options routers, subnet-mask, domain-
name, domain-name-servers et time-offset sont utilisées pour les déclarations host.

De plus, vous pouvez déclarer un subnet. Pour ce faire, vous devez inclure une déclaration
subnet pour chaque sous-réseau de votre réseau, sinon le serveur DHCP ne démarrera pas.

Dans cet exemple, il existe des options globales pour tous les clients DHCP dans le sous-
réseau et une plage, range, est déclarée. Les clients reçoivent une adresse IP au sein de range.

subnet 192.168.1.0 netmask 255.255.255.0 {


option routers 192.168.1.254;
option subnet-mask 255.255.255.0;

option domain-name "example.com";


option domain-name-servers 192.168.1.1;

option time-offset -18000; # Eastern Standard Time

range 192.168.1.10 192.168.1.100;


}

Exemple 4.1. Déclaration de sous-réseau

Tous les sous-réseaux partageant le même réseau physique doivent être déclarés dans une
déclaration shared-network comme le montre l'Exemple 4.2, « Déclaration de réseau partagé ».
Les paramètres se trouvant au sein du fichier shared-network mais en dehors des déclarations
subnet sont considérés comme des paramètres globaux. Le nom du fichier shared-network doit
correspondre à un titre descriptif du réseau, comme l'utilisation de 'test-lab' pour décrire tous les
réseaux dans un environnement de labo de tests.

shared-network name {
option domain-name "test.redhat.com";
option domain-name-servers ns1.redhat.com, ns2.redhat.com;
option routers 192.168.0.254;
more parameters for EXAMPLE shared-network
subnet 192.168.1.0 netmask 255.255.252.0 {
parameters for subnet
range 192.168.1.1 192.168.1.254;
}
subnet 192.168.2.0 netmask 255.255.252.0 {
parameters for subnet
range 192.168.2.1 192.168.2.254;
}
}

Exemple 4.2. Déclaration de réseau partagé

Comme l'illustre l'Exemple 4.3, « Déclaration de groupe », la déclaration group est utilisée pour
appliquer des paramètres globaux à un groupe de déclarations. Vous pouvez, par exemple,
regrouper des réseaux partagés, des sous-réseaux et des hôtes.

group {
option routers 192.168.1.254;

60
2.1. Fichier de configuration

option subnet-mask 255.255.255.0;

option domain-name "example.com";


option domain-name-servers 192.168.1.1;

option time-offset -18000; # Eastern Standard Time

host apex {
option host-name "apex.example.com";
hardware ethernet 00:A0:78:8E:9E:AA;
fixed-address 192.168.1.4;
}

host raleigh {
option host-name "raleigh.example.com";
hardware ethernet 00:A1:DD:74:C3:F2;
fixed-address 192.168.1.6;
}
}

Exemple 4.3. Déclaration de groupe

Pour configurer un serveur DHCP qui attribue une adresse IP dynamique à un système dans un
sous-réseau, modifiez l'Exemple 4.4, « Paramètre 'range' » avec vos valeurs spécifiques. Un
temps d'attribution par défaut, un temps d'attribution maximum et des valeurs de configuration
réseau pour les clients sont déclarés. Cet exemple assigne aux systèmes clients, des adresses
IP dans la gamme range 192.168.1.10 et 192.168.1.100.

default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.254;
option domain-name-servers 192.168.1.1, 192.168.1.2;
option domain-name "example.com";

subnet 192.168.1.0 netmask 255.255.255.0 {


range 192.168.1.10 192.168.1.100;
}

Exemple 4.4. Paramètre 'range'

Pour attribuer une adresse IP à un client sur la base de l'adresse MAC de la carte d'interface
réseau, utilisez le paramètre hardware ethernet dans une déclaration host. Comme le montre
l'Exemple 4.5, « Adresse IP statique utilisant DHCP », la déclaration host apex indique que la
carte d'interface réseau avec l'adresse MAC 00:A0:78:8E:9E:AA doit toujours recevoir l'adresse
IP 192.168.1.4.

Notez que vous pouvez également utiliser le paramètre facultatif host-name pour attribuer un
nom d'hôte au client.

host apex {
option host-name "apex.example.com";
hardware ethernet 00:A0:78:8E:9E:AA;

61
2.2. Base de données d'attribution

fixed-address 192.168.1.4;
}

Exemple 4.5. Adresse IP statique utilisant DHCP

Astuce
Vous pouvez utiliser le fichier de configuration d'exemple comme point de départ,
puis y ajouter vos propres options de configuration personnalisées. Copiez-le à
l'emplacement approprié à l'aide de la commande :
cp /usr/share/doc/dhcp-<version-number>/dhcpd.conf.sample /etc/dhcpd.conf

(où <version-number> correspond à la version DHCP que vous utilisez).

Pour obtenir une liste complète des options et de leur fonction, reportez-vous à la page de
manuel relative à dhcp-options.

2.2. Base de données d'attribution


Sur le serveur DHCP, le fichier /var/lib/dhcpd/dhcpd.leases stocke la base de données
d'attribution client DHCP. Ne modifiez pas ce fichier. Les informations d'attribution DHCP pour
toutes les adresses IP récemment attribuées sont automatiquement stockées dans cette base
de données. Ces informations comprennent la durée de l'attribution, le destinataire de de
l'adresse IP, les dates de début et de fin pour l'attribution et l'adresse MAC de la carte
d'interface réseau qui a été utilisée pour l'attribution.

Toutes les heures de la base de données d'attribution sont des heures 'Coordinated Universal
Time' (UTC) et non pas des heures locales.

La base de données d'attribution est recréée de temps en temps de façon à ce que sa taille ne
soit pas trop grande. Tout d'abord, toutes les attributions connues sont sauvegardées dans une
base de données d'attribution temporaire. Le fichier dhcpd.leases est renommé dhcpd.leases~
et la base de données d'attribution temporaire est copiée dans dhcpd.leases.

Le démon DHCP peut être anéanti et le système peut se bloquer après le changement de nom
de la base de données d'attribution, mais avant la création du nouveau fichier. Si tel est le cas,
le fichier dhcpd.leases n'existe pas, mais il est nécessaire pour lancer le service. Dans ce cas,
ne créez pas de nouveau fichier d'attribution. Si vous le faites, toutes les anciennes attributions
seront perdues et cela entraînera de nombreux problèmes. Vous devez dans ce cas changer le
nom du fichier de sauvegarde dhcpd.leases~ par dhcpd.leases, puis lancer le démon.

2.3. Lancement et interruption du serveur

62
2.3. Lancement et interruption du serveur

Important
La première fois que vous lancez le serveur DHCP, celui-ci ne fonctionnera pas si
le fichier dhcpd.leases n'existe pas préalablement. Si le fichier n'existe pas, utilisez
la commande touch /var/lib/dhcpd/dhcpd.leases pour le créer.

Si le même serveur est également entrain de démarrer BIND comme un serveur


DNS, cette étape n'est pas nécessaire car le démarrage du service named vérifie
automatiquement si le fichier dhcpd.leases existe.

Pour lancer le service DHCP, utilisez la commande /sbin/service dhcpd start. Pour
interrompre le serveur DHCP, utilisez la commande /sbin/service dhcpd stop.

Si vous avez plusieurs interfaces réseau attachées au système, mais que vous voulez le
démarrage du serveur DHCP uniquement sur l'une d'entre elles, vous pouvez configurer le
serveur DHCP afin qu'il démarre uniquement sur ce périphérique. Dans /etc/sysconfig/dhcpd,
ajoutez le nom de l'interface à la liste de DHCPDARGS :
# Options de ligne de commande ici
DHCPDARGS=eth0

Cela est utile si vous avez un ordinateur protégé par un pare-feu et doté de deux cartes réseau.
L'une d'elles peut être configurée comme client DHCP pour récupérer une adresse IP d'internet.
L'autre peut servir de serveur DHCP pour le réseau interne se trouvant derrière le pare-feu. En
ne spécifiant que la carte réseau connectée au réseau interne, votre système sera plus sûr
puisque les utilisateurs ne pourront pas se connecter au démon par le biais de l'internet.

Options de ligne de commande pouvant être spécifiées dans /etc/sysconfig/dhcpd :

• -p <portnum> — Spécifie le numéro de port udp sur lequel dhcpd devrait être en écoute. Le
port par défaut est le 67. Le serveur DHCP transmet les réponses aux clients DHCP à un
numéro de port supérieur au port udp spécifié. Par exemple, si vous acceptez le port 67
(port par défaut), le serveur attend sur le port 67 les requêtes et sur le port 68 les réponses
au client. Si vous spécifiez un port et que vous utilisez l'agent de relais DHCP, vous devez
spécifier le même port d'attente pour l'agent de relais DHCP. Pour obtenir de plus amples
informations, reportez-vous à Section 2.4, « Agent de relais DHCP ».

• -f— Exécute le démon comme processus de front. Cette option est principalement utilisée
pour le débogage.

• -d — Inscrit le démon du serveur DHCP dans le descripteur d'erreurs standard. Cette option
est principalement utilisée pour le débogage. Si elle n'est pas spécifiée, l'inscription est faite
dans /var/log/messages.

• -cf <nomfichier> — Spécifie l'emplacement du fichier de configuration, par défaut /


etc/dhcpd.conf.

• -lf <nomfichier> — Spécifie l'emplacement du fichier de la base de données d'attribution.


Si ce fichier existe déjà, il est très important que le même fichier soit utilisé chaque fois que

63
2.4. Agent de relais DHCP

le serveur DHCP est démarré. Il est fortement recommandé de n'utiliser cette option qu'à
des fins de débogage sur des machines non productives. L'emplacement par défaut est /
var/lib/dhcpd/dhcpd.leases.

• -q — N'imprime pas l'intégralité du message de copyright au démarrage du démon.

2.4. Agent de relais DHCP


L'agent de relais DHCP (dhcrelay) vous permet de relayer les requêtes DHCP et BOOTP d'un
sous-réseau ne disposant pas de serveur DHCP vers un ou plusieurs serveurs DHCP sur
d'autres sous-réseaux.

Lorsqu'un client DHCP demande des informations, l'agent de relais DHCP transfère la requête
à la liste de serveurs DHCP spécifiés lors du démarrage de l'agent de relais DHCP. Lorsqu'un
serveur DHCP renvoie une réponse, la réponse est diffusée sur le réseau ayant envoyé la
requête d'origine.

L'agent de relais DHCP attend les requêtes DHCP sur toutes les interfaces à moins que les
interfaces ne soient spécifiées dans /etc/sysconfig/dhcrelay avec la directive INTERFACES.

Pour démarrer l'agent de relais DHCP, utilisez la commande service dhcrelay start.

3. Configuration d'un client DHCP


Pour configurer manuellement un client DHCP, vous devez modifier le fichier /
etc/sysconfig/network afin d'activer la mise en réseau et le fichier de configuration pour chacun
des périphériques réseau dans le répertoire /etc/sysconfig/network-scripts. Dans ce
répertoire, chaque périphérique doit disposer d'un fichier de configuration nommé ifcfg-eth0,
eth0 correspondant au nom du périphérique réseau.

Le fichier /etc/sysconfig/network doit contenir la ligne suivante :


NETWORKING=yes

La variable NETWORKING doit être réglée sur yes pour que la mise en réseau soit activée au
démarrage.

Le fichier /etc/sysconfig/network-scripts/ifcfg-eth0 doit contenir les lignes ci-dessous :


DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes

Il vous faut un fichier de configuration pour chacun des périphériques que vous souhaitez
configurer afin d'utiliser DHCP.

Parmi les autres options pour le script réseau figurent :

• DHCP_HOSTNAME — N'utilisez cette option que si le serveur DHCP nécessite que le client
spécifie le nom d'hôte avant de recevoir une adresse IP. (Le démon du serveur DHCP dans
Red Hat Enterprise Linux ne prend pas en charge cette fonction.)

64
4. Ressources supplémentaires

• PEERDNS=<réponse>, où <réponse> figure parmi :

• yes — Modifie /etc/resolv.conf avec les informations du serveur. Si vous utilisez DHCP,
yes est alors la valeur par défaut.

• no — Ne modifie pas /etc/resolv.conf.

• SRCADDR=<adresse>, où <adresse> est l'adresse IP source spécifiée pour les paquets sortants.

• USERCTL=<réponse>, où <réponse> figure parmi :

• yes — Les utilisateurs autres que le super-utilisateur sont autorisés à contrôler ce


périphérique.

• no— Les utilisateurs autres que le super-utilisateur ne sont pas autorisés à contrôler ce
périphérique.

Si vous préférez utiliser une interface graphique pour la configuration d'un client DHCP,
reportez-vous au Chapitre 2, Configuration réseau pour obtenir des instructions sur l'utilisation
de l'Outil d'Administration Réseau permettant de configurer une interface réseau qui utilisera
DHCP.

Astuce
Pour obtenir des options avancées sur les configurations du client DHCP comme
par exemple le protocole de temps, les pré-requis et requêtes de bail, le support
dynamique DNS, les alliases, ainsi qu'une grande variété de valeurs a écraser,
préfixer ou ajouter aux configurations côté client, reportez-vous aux manuels
dhclient et dhclient.conf.

4. Ressources supplémentaires
Pour des options de configuration supplémentaires, veuillez vous reporter aux ressources
suivantes.

4.1. Documentation installée

• La page de manuel relative à dhcpd — Décrit le fonctionnement du démon DHCP.

• La page de manuel relative à dhcpd.conf — Explique comment configurer le fichier de


configuration DHCP et fournit des exemples.

• La page de manuel relative à dhcpd.leases — Explique comment configurer le fichier


d'attribution DHCP et fournit des exemples.

• La page de manuel relative à dhcp-options — Explique la syntaxe de déclaration des


options DHCP dans dhcpd.conf et fournit des exemples.

65
4.1. Documentation installée

• La page de manuel relative à dhcrelay — Explique le fonctionnement de l'agent de relais


DHCP et les options de configuration correspondantes.

• /usr/share/doc/dhcp-<version>/ — Contient des fichiers d'exemple, des fichiers README


et des notes de mise à jour pour les versions courantes du service DHCP.

66
Configuration du système
Une des fonctions d'un administrateur de système est de configurer le système pour différentes
tâches, les types d'utilisateurs et les configurations de matériel. Cette section expose comment
configurer un système Red Hat Enterprise Linux.
Chapitre 5. Configuration du
système X Window
Durant l'installation, les paramètres du système concernant le moniteur, la carte vidéo et
l'affichage sont configurés. Pour modifier l'un de ces paramètres après l'installation, utilisez
l'&RHXFREE86TOOL;.

Pour lancer l'&RHXFREE86TOOL;, allez à System (on the panel) => Administration =>
Affichage, ou tapez la commande system-config-display à l'invite du shell (par exemple, dans
un terminal XTerm ou GNOME). Si le système X Window n'est pas en cours d'exécution, une
petite version de X est lancée pour exécuter le programme.

Après la modification des paramètres, déconnectez-vous du bureau graphique et connectez-


vous de nouveau pour activer les changements.

1. Paramètres d'affichage
L'onglet Paramètres permet aux utilisateurs de modifier la résolution et la profondeur de
couleurs. L'affichage d'un moniteur est composé de petits points appelés pixels. Le nombre de
pixels affichés est appelé la résolution. Par exemple, la résolution 1024x768 signifie que 1024
pixels horizontaux et 768 pixels verticaux sont utilisés. Plus la résolution est élevée, plus les
images apparaissent petites.

La profondeur de couleurs de l'affichage détermine le nombre de couleurs affichées. Plus la


profondeur de couleurs est élevée, plus le contraste entre couleurs est approfondi.

68
2. Afficher les paramètres matériels

Figure 5.1. Paramètres d'affichage

2. Afficher les paramètres matériels


Au lancement, l'&RHXFREE86TOOL; détecte le moniteur et la carte vidéo. Si le matériel est
détecté correctement, ses informations sont affichées dans l'onglet Matériel comme l'illustre la
Figure 5.2, « Afficher les paramètres matériels ».

69
3. Paramètres d'affichage du double écran

Figure 5.2. Afficher les paramètres matériels

Pour changer le type de moniteur ou un autre de ses paramètres, cliquez sur le bouton
Configurer correspondant. Pour changer le type de carte vidéo ou un autre de ses paramètres,
cliquez sur le bouton Configurer à côté de ses paramètres.

3. Paramètres d'affichage du double écran


Si plusieurs cartes vidéo sont installées sur le système, le support double écran est disponible
et configurable via l'onglet Double écran, comme l'illustre la Figure 5.3, « Paramètres
d'affichage du double écran ».

70
3. Paramètres d'affichage du double écran

Figure 5.3. Paramètres d'affichage du double écran

Pour activer l'utilisation du double écran, cochez la case Utiliser le double écran.

Pour configurer le second type de moniteur, cliquez sur le bouton Configurer correspondant.
Vous pouvez également configurer les autres paramètres du double écran en utilisant la liste
déroulante correspondante.

Pour l'option Disposition du bureau, sélectionner Bureaux multi-écran permet aux deux
moniteurs d'utiliser un espace élargi. Sélectionner Bureaux individuels permet le partage de la
souris et du clavier entre les affichages mais restreint les fenêtres à un seul affichage.

71
Sécurité et authentification
Que ce soit pour sécuriser leurs systèmes, leurs services ou des données, Red Hat Enterprise
Linux fournit aux administrateurs de systèmes un choix d'outils et de méthodes disponibles en
tant que stratégie de sécurité approfondie.

Ce chapitre introduit la sécurité de façon générale, en particulier du point de vue de Red Hat
Enterprise Linux il fournit des informations conceptuelles concernant les secteurs d'évaluation
de la sécurité, les exploits communs et les réponses aux intrusions et incidents. De même il
offre des informations de configuration conceptuelles et spécifiques sur l'utilisation de SELinux
pour renforcer Workstation, Server, VPN, les pare-feux et autresimplémentations.

Ce chapitre présuppose que vous possédez déjà une connaissance de la sécurité informatique,
et par conséquent ne fournit qu'une couverture limitée des pratiques de sécurité communes
comme le contrôle de l'accès physique, les politiques et procédures d'une bonne gestion de
compte, l'audit etc. Le cas échéant, des références à des ressources externes et à des
informations se rapportant à ces sujets seront mentionnées.
Chapitre 6. Aperçu sur la sécurité
Parce que notre dépendance est de plus en plus prononcée vis à vis des ordinateurs puissants
mis en réseau pour faire des affaires et garder des archives de nos informations personnelles,
de nombreuses industries ont émergées dans le domaine de la sécurité réseau et informatique.
Maintes entreprises ont recours aux services d'experts en sécurité afin qu'ils analysent leurs
systèmes de manière adéquate et élaborent des solutions adaptées aux besoins opérationnels
de la société. Parce que la plupart des sociétés sont dynamiques par nature, les employés
accédant aux ressources IT localement et à distance, la nécessité de disposer
d'environnements informatiques sécurisés est de plus en plus prononcée.

Regrettablement, la plupart des sociétés (et des utilisateurs individuels) voient la sécurité
comme une considération après coup, un processus négligé au profit d'une puissance et
productivité accrues et de considérations budgétaires. L'implémentation d'une sécurité
appropriée a souvent lieu de manière rétrospective — par exemple, suite à une intrusion non
autorisée. Les experts en sécurité reconnaissent que le fait de prendre les mesures appropriées
avant même de connecter un site à un réseau qui n'est pas digne de confiance, tel que
l'internet, représente la meilleure façon de contrer la plupart des tentatives d'intrusion.

1. Évaluation des vulnérabilités


Avec du temps, des ressources et de la motivation, un pirate peut rentrer dans pratiquement
n'importe quel système. À la fin, toutes les procédures et les technologies de sécurité
actuellement disponibles ne peuvent pas vous garantir que vos systèmes sont protégés contre
les intrusions. Les routeurs peuvent aider à sécuriser les passerelles vers l'internet. Les pare-
feu peuvent aider à sécuriser les bords du réseau. Les réseaux privés virtuels peuvent
transmettre vos données en toute sécurité dans un flux crypté. Les systèmes de détection
d'intrusions peuvent vous prévenir de toute activité malveillante. Cependant, la réussite de
chacune de ces technologies dépend d'un certain nombre de variables, y compris :

• Les compétences du personnel responsable de la configuration, du contrôle et de la


maintenance des technologies.

• La capacité d'insérer des correctifs et de mettre à jour des services et des noyaux
rapidement et efficacement.

• La capacité des responsables de rester vigilants sur le réseau.

Vu l'état dynamique des technologies et des systèmes de données, la sécurisation de vos


ressources d'entreprise peut devenir complexe. À cause de cette complexité, il est souvent
difficile de trouver des ressources spécialisées pour tous vos systèmes. Alors qu'il est possible
d'avoir un personnel avec des connaissances de haut niveau dans de nombreux domaines de
la sécurité de l'information, il est plus difficile de garder les employés qui sont spécialistes dans
plus de quelques sujets. Cela vient principalement du fait que chaque sujet en sécurité de
l'information demande une attention et une concentration constantes. La sécurité de
l'information ne reste pas en place.

1.1. Penser comme l'ennemi

73
1.2. Définition des évaluations et des essais

Supposez que vous administrez un réseau d'entreprise. De tels réseaux sont couramment
constitués de systèmes d'exploitation, d'applications, de serveurs, de contrôleurs de réseau, de
pare-feu, de systèmes de détection d'intrusions et bien plus encore. Imaginez maintenant
d'essayer de rester à jour pour chacun d'entre eux. Vu la complexité des environnements
réseaux et logiciels d'aujourd'hui, les exploits et les bogues sont d'une certitude. Rester au
courant des correctifs et des mises à jour pour un réseau entier peut s'avérer devenir une tâche
décourageante dans une grande société avec des systèmes hétérogènes.

En combinant les besoins d'expertise avec la tâche de rester au courant, il devient inévitable
que des incidents négatifs se produisent, que les protections de systèmes soient brisées, que
des données soient corrompues et que le service soit interrompu.

Pour augmenter les technologies de sécurité et aider à protéger les systèmes, les réseaux et
les données, essayez de penser comme un pirate et mesurez la sécurité des systèmes en
vérifiant leurs faiblesses. Des évaluations de vulnérabilités préventives sur vos propres
systèmes et ressources réseaux peuvent révéler des problèmes possibles qui peuvent être
traités avant qu'un pirate ne les trouve.

Si vous deviez effectuer une évaluation des vulnérabilités de votre maison, vous vérifieriez
sûrement chaque porte pour voir si elles sont bien fermées et verrouillées. Vous vérifieriez
également chaque fenêtre, vous assurant qu'elles sont bien fermées. Le même concept
s'applique aux systèmes, réseaux et données électroniques. Les utilisateurs malveillants sont
les voleurs et les vandales de vos données. Concentrez vous sur leurs outils, leur mentalité et
leurs motivations et vous pourrez alors réagir rapidement à leurs actions.

1.2. Définition des évaluations et des essais


Les évaluations de vulnérabilités peuvent être séparées en deux types : de l'extérieur vers
l'intérieur et de l'intérieur vers l'intérieur.

Lors d'une évaluation de vulnérabilités de l'extérieur vers l'intérieur, vous essayez de


compromettre vos systèmes de l'extérieur. Être en dehors de votre société vous offre le point de
vue du pirate. Vous pouvez voir ce qu'un pirate voit — les adresses IP routables de façon
publique, les systèmes sur votre DMZ, les interfaces externes de votre pare-feu et bien plus
encore. DMZ signifie zone démilitarisée (de l'anglais demilitarized zone) et correspond à un
ordinateur ou un petit sous-réseau qui se situe entre un réseau interne de confiance, comme un
LAN privé, et un réseau externe qui n'est pas de confiance, comme l'internet public. Une DMZ
contient normalement des périphériques accessibles au trafic Internet, comme les serveurs
Web (HTTP), les serveurs FTP, les serveurs SMTP (courrier électronique) et les serveurs DNS.

Lors d'une évaluation de vulnérabilités de l'intérieur vers l'intérieur, vous avez un avantage vu
que vous êtes interne et que votre statut devient de confiance. Ceci est le point de vue que vos
collègues et vous possédez une fois connectés sur vos systèmes. Vous verrez les serveurs
d'impression, les serveurs de fichiers, les bases de données et d'autres ressources.

Il existe de grandes différences entre ces deux types d'évaluation de vulnérabilités. Être à
l'intérieur de votre société vous donne des privilèges élevés supérieurs à toute autre personne
de l'extérieur. De nos jours, dans la plupart des sociétés, la sécurité est toujours configurée de
manière à garder les intrus dehors. Peu est fait pour sécuriser les internes de la société
(comme les pare-feu de départements, les contrôles d'accès au niveau de l'utilisateur, les
procédures d'authentification pour les ressources internes et autres). En général, il existe bien

74
1.2. Définition des évaluations et des essais

plus de ressources de l'intérieur vu que la plupart des systèmes sont internes à la société. Une
fois que vous devenez externe à la société, votre statut n'est immédiatement plus de confiance.
Les systèmes et les ressources qui vous sont disponibles de l'extérieur sont généralement bien
plus limités.

Considérez la différence entre les évaluations de vulnérabilités et les essais de pénétration.


Pensez à l'évaluation de vulnérabilités comme la première étape d'un essai de pénétration. Les
informations glanées depuis l'évaluation seront utilisées dans les essais. Alors que l'évaluation
vérifie les trous et les vulnérabilités potentielles, les essais de pénétration essaient en fait
d'exploiter les conclusions.

L'évaluation d'une infrastructure réseau est un processus dynamique. La sécurité, des


informations et physique, est dynamique. Effectuer une évaluation offre une vue d'ensemble,
qui peut trouver des faux positifs et des faux négatifs.

Les administrateurs de sécurité sont aussi compétents que les outils qu'ils utilisent et les
connaissances qu'ils retiennent. Prenez n'importe quel outil d'évaluation actuellement
disponible, exécutez-le sur votre système et il est pratiquement garanti qu'il existera au moins
plusieurs faux positifs. Que ce soit une faute de programme ou une erreur d'utilisateur, les
résultats seront les mêmes. L'outil peut trouver des vulnérabilités qui, en fait, n'existent pas
(faux positifs) ; ou, au pire, l'outil peut ne pas trouver des vulnérabilités qui existent bien (faux
négatifs).

Maintenant que la différence entre l'évaluation de vulnérabilités et l'essai de pénétration a été


établie, il est souvent de bonne habitude de rassembler les conclusions de l'évaluation et de les
passer en revue avec attention avant de procéder à un essai de pénétration.

Avertissement
Essayer d'exploiter les vulnérabilités de ressources de production peut avoir des
effets négatifs sur la productivité et l'efficacité de vos systèmes et réseaux.

La liste suivante examine certains avantages liés au fait d'effectuer des évaluations de
vulnérabilités.

• Accent proactif porté sur la sécurité des informations

• Exploits potentiels découverts avant que les pirates ne les trouvent

• Systèmes habituellement à jour et avec des correctifs

• Amélioration et aide au développement de l'expertise du personnel

• Réduction de perte financière et de mauvaise publicité

1.2.1. Établissement d'une méthodologie


Pour aider à sélectionner les outils pour des évaluations de vulnérabilités, il est utile d'établir
une méthodologie d'évaluation de vulnérabilités. Malheureusement, il n'existe à ce jour aucune

75
1.3. Évaluation des outils

méthodologie approuvée par l'industrie ou prédéfinie ; cependant, du bon sens et de bonnes


habitudes peuvent suffisamment servir de guide.

Quelle est la cible ? Faisons-nous face à un serveur ou à notre réseau entier et tout ce qui s'y
trouve ? Sommes-nous externes ou internes à la société ? Les réponses à ces questions sont
importantes vu qu'elles vous aideront à déterminer non seulement les outils à sélectionner,
mais également la manière de les utiliser.

Pour en savoir plus sur l'établissement de méthodologies, veuillez consulter les sites Web
suivants :

• http://www.isecom.org/projects/osstmm.htmLe manuel Open Source de méthodologie de


test de la sécurité (OSSTMM)

• http://www.owasp.org/Le projet de sécurité des applications Open Web

1.3. Évaluation des outils


Une évaluation typique peut commencer en utilisant un outil pour rassembler des informations.
Lors de l'évaluation du réseau entier, faites une projection de la structure pour trouver les hôtes
qui sont en cours d'exécution. Une fois situés, examinez chaque hôte individuellement. Cela
demandera l'utilisation d'un autre ensemble d'outils. Savoir quels outils utiliser représente
l'étape la plus cruciale dans la détermination de vulnérabilités.

Comme dans les aspects de la vie de tous les jours, il existe de nombreux différents outils pour
effectuer la même tâche. Ce concept s'applique également aux évaluations de vulnérabilités.
Certains outils sont spécifiques aux systèmes d'exploitation, aux applications et même aux
réseaux (selon les protocoles utilisés). Certains outils sont gratuits. Certains outils sont intuitifs
et faciles à utiliser, alors que d'autres sont plus compliqués et mal documentés, mais possèdent
des fonctionnalités que d'autres outils n'ont pas.

Trouver les bons outils peut être une tâche difficile. À la fin, l'expérience compte. Si possible,
configurez un exercice de tests et essayez autant d'outils que vous le pouvez, notant les
qualités et les faiblesses de chacun. Passez en revue le fichier README ou la page de manuel
de l'outil. De plus, regardez sur l'internet pour trouver davantage d'informations, comme des
articles, des guides étape-par-étape ou même des listes de diffusion spécifiques à l'outil.

Les outils examinés ci-dessous ne sont qu'un échantillon des outils disponibles.

1.3.1. Analyse des hôtes avec Nmap


Nmap est un outil populaire inclus dans Red Hat Enterprise Linux qui peut être utilisé pour
déterminer la structure d'un réseau. Nmap est disponible depuis de nombreuses années et est
sûrement l'outil le plus souvent utilisé pour rassembler des informations. Une excellente page
de manuel est incluse qui fournit une description détaillée de ses options et de son utilisation.
Les administrateurs peuvent utiliser Nmap sur un réseau pour trouver les systèmes hôtes et les
ports ouverts sur ces systèmes.

Nmap est une première étape compétente dans l'évaluation de vulnérabilités. Vous pouvez
déterminer tous les hôtes sur votre réseau et même passer une option qui lui permettra
d'identifier le système d'exploitation en cours d'exécution sur un hôte particulier. Nmap est une

76
1.3. Évaluation des outils

bonne base pour établir une politique sur l'utilisation de services sécurisés et l'arrêt de services
non utilisés.

1.3.1.1. Utilisation de Nmap

Nmap peut être exécuté depuis une invite de shell. Saisissez la commande nmap suivie du nom
d'hôte ou de l'adresse IP de la machine que vous souhaitez analyser.
nmap foo.example.com

Les résultats de l'analyse (qui peut prendre quelques minutes selon l'emplacement de l'hôte)
devrait ressembler à l'exemple suivant :
Starting nmap V. 3.50 ( www.insecure.org/nmap/ ) Interesting ports on localhost.localdomain (127.0.0.1): (T

Nmap teste les ports de communication réseau les plus courants pour identifier des services en
écoute ou en attente. Un administrateur qui souhaite fermer tout service non nécessaire,
trouvera ces informations utiles.

Pour de plus amples informations sur l'utilisation de Nmap, veuillez consulter la page d'accueil
officielle à l'URL suivant :

http://www.insecure.org/

1.3.2. Nessus
Nessus est un scanneur de sécurité de services entiers. L'architecture plugin de Nessus permet
aux utilisateurs de le personnaliser pour leurs systèmes et réseaux. Comme avec tout
scanneur, Nessus n'offre qu'autant que la base de données de signatures sur laquelle il
dépend. Heureusement, Nessus est fréquemment mis à jour. Ses fonctions comprennent un
rapportage complet, la vérification d'hôtes et des recherches de vulnérabilités en temps réel.
Souvenez-vous qu'il peut exister des faux positifs et des faux négatifs, même dans un outil
aussi puissant et fréquemment mis à jour que Nessus.

Remarque
Nessus n'est pas inclus dans Red Hat Enterprise Linux et n'est pas supporté. Il a
été inclus dans ce document en tant que référence pour les utilisateurs qui sont
intéressés par cette application populaire.

Pour de plus amples informations sur l'utilisation de Nessus, veuillez consulter la page d'accueil
officielle à l'URL suivant :

http://www.nessus.org/

1.3.3. Nikto
Nikto est un excellent scanneur de scripts CGI (common gateway interface). Nikto peut non
seulement vérifier les vulnérabilités de CGI, mais également le faire d'une manière évasive,
pour échapper aux systèmes de détection d'intrusions. Sa documentation est excellente et

77
2. Exploits et attaques courants

devrait être lue attentivement avant d'exécuter le programme. Lorsque vous avez des serveurs
Web qui servent des scripts CGI, Nikto peut alors être une ressource excellente pour vérifier la
sécurité de ces serveurs.

Remarque
Nikto n'est pas inclus dans Red Hat Enterprise Linux et n'est pas supporté. Il a été
inclus dans ce document en tant que référence pour les utilisateurs qui sont
intéressés par cette application populaire.

De plus amples informations sur Nikto se trouvent à l'URL suivant :

http://www.cirt.net/code/nikto.shtml

1.3.4. VLAD le scanneur


VLAD est un scanneur de vulnérabilités développé par l'équipe RAZOR à Bindview, Inc. qui
peut être utilisé pour vérifier les vulnérabilités. Il utilise la liste des dix problèmes de sécurité les
plus courants de SANS (problèmes de SNMP, partage de fichiers, etc). Bien qu'il ne possède
pas autant de fonctionnalités que Nessus, VLAD vaut la peine d'être examiné.

Remarque
VLAD n'est pas inclus dans Red Hat Enterprise Linux et n'est pas supporté. Il a été
inclus dans ce document en tant que référence pour les utilisateurs qui sont
intéressés par cette application populaire.

De plus amples informations sur VLAD se trouvent sur le site Web de l'équipe RAZOR à l'URL
suivant :

http://www.bindview.com/Support/Razor/Utilities/

1.3.5. Anticipation de vos prochains besoins


Selon votre objectif et vos ressources, de nombreux outils sont disponibles. Il existe des outils
pour les réseaux sans-fil, les réseaux Novell, les systèmes Windows, les systèmes Linux et
autres. Une autre partie essentielle des évaluations inclut la revue de la sécurité physique, la
sélection du personnel ou l'évaluation du réseau voice/PBX. De nouveaux concepts, comme «
war walking » analysant le périmètre des structures physiques de votre entreprise pour trouver
des vulnérabilités de réseau sans fil sont des concepts prometteurs que vous pouver examiner
et, au besoin, incorporer dans vos évaluations. L'imagination et l'exposition sont les seules
limites pour planifier et conduire des évaluations de vulnérabilités.

2. Exploits et attaques courants

78
2. Exploits et attaques courants

Tableau 6.1, « Exploits courants » détaille certains des exploits et des points d'entrée les plus
courants utilisés par les intrus pour accéder aux ressources réseau organisationnelles. La clé
de ces exploits courants vient des explications sur la manière dont ils sont effectués et la
manière dont les administrateurs peuvent protéger correctement leur réseau contre de telles
attaques.

Exploit Description Remarques

Mots de passe Laisser les mots de passe


par défaut ou d'administration vides ou utiliser un Généralement associé à du matériel
vides mot de passe par défaut fourni par réseau tel que des routeurs, pare-
le vendeur du produit. Ceci est des feu, VPN, et des dispositifs de
plus courants dans le matériel stockage reliés au réseau (NAS).
comme les routeurs et les pare-feu, Commun dans plusieurs systèmes
bien que certains services qui sont d'exploitation, spécialement OSes
exécutés sur Linux peuvent contenir qui intègre ces services (comme
des mots de passe d'administration Unix ou Windows)
par défaut (bien que Red Hat Les administrateurs crées parfois à
Enterprise Linux 5 ne soit pas vendu la volée des comptes utilisateurs
avec). privilégiés et laissent le mot de
passe null, un point d'entrée parfait
pour les utilisateurs malicieux qui
découvrent le compte.

Clés partagées Les services sécurisés contiennent


par défaut parfois des clés de sécurité par Plus courant dans les points d'accès
défaut pour le développement ou le au réseau sans fil et les serveurs
test d'évaluation. Si ces clés ne sont sécurisés préconfigurés.
pas modifiées et sont placées dans
un environnement de production sur
l'internet, tous les utilisateurs avec
les mêmes clés par défaut auront
accès aux ressources de cette clé
partagée et toutes les informations
importantes qu'elle contient.

Usurpation Une machine distante agit comme


d'identité (IP un noeud sur votre réseau local, L'usurpation est assez difficile car
spoofing) trouve les vulnérabilités de vos l'agresseur doit deviner les numéros
serveurs et installe un programme TCP/IP SYN-ACK afin de
de porte dérobée ou cheval de Troie coordonner une connexion vers les
pour obtenir le contrôle sur vos systèmes cibles. Cependant
ressources réseau. plusieurs outils sont disponibles
pour que les craqueurs puissent
utiliser cette vulnérabilité.
Cela dépend des services exécutés
sur le système cible (comme rsh,
telnet, FTP et autres) qui utilisent
des techniques d'authentification
basées sur la source, qui sont en
général déconseillées comparées à

79
2. Exploits et attaques courants

Exploit Description Remarques

PKI ou à d'autres formes


d'authentification de cryptage
comme celles utilisées dans ssh ou
SSL/TLS.

Écoute Rassembler des données qui


clandestine passent entre deux noeuds activés Ce type d'attaque fonctionne la plus
sur un réseau en écoutant sur la part du temps avec des protocoles
connexion entre les deux noeuds. de transmission de texte tels que
Telnet, FTP, et les transferts HTTP.
Celui qui attaque à distance doit
avoir accès à un système
compromis sur un réseau local afin
de mettre en oeuvre une telle
attaque; généralement le craqueur
utilise une attaque active (comme
l'IP spoofing ou "man-in-the-middle")
afin de compromettre un système
sur le réseau local.
Les mesures préventives inclues
des services avec des échanges de
clés cryptées, des mots de passe
avec essai unique ou des
authentifications encryptées afin
d'empêcher le "snooping"; les
encryptions durant la transmission
sont également conseillées.

Vulnérabilités Un pirate trouve une faille ou une


des services lacune dans un service exécuté sur Les services HTTP comme CGI
l'internet ; à travers cette sont vulnérables pour l'exécution
vulnérabilité, le pirate compromet le des commandes à distance et les
système entier et toutes les accès intractifs au shell. Même si le
données qu'il peut contenir et peut service HTTP démarre avec un
également compromettre d'autres utilisateur sans privilège tel que
systèmes sur le réseau. "nobody", les fichiers de
configuration et les mappages
réseaux peuvent être lus, ou
l'agresseur peut commencer une
attaque par déni de service qui
épuise les ressources systèmes ou
les rend indisponibles aux autres
utilisateurs.
Les services peuvent avoir parfois
des vulnérabilités qui passent
inaperçues lors du développement
et des tests; ces vulnérabilités
(comme buffer overflows, où les
agresseurs crashent un service en

80
2. Exploits et attaques courants

Exploit Description Remarques

utilisant des valeurs qui remplissent


la mémoire tampon d'une
application, en donnant à
l'agresseur un invité de commandes
interactives à partir duquel il peut
exécuter arbitrairement des
commandes) peuvent donner un
contrôle administratif complet à un
agresseur.
Les administrateurs devraient
s'assurer que les services ne
démarrent pas avec l'utilisateur root,
et devraient être vigilants des
patchs et mises à jours errata des
applications des vendeurs ou des
organisations de sécurité telles que
CERT and CVE.

Vulnérabilités Les pirates trouvent des fautes dans


des applications les applications de bureau et de Les postes de travail et les bureaux
poste de travail, comme les clients sont plus enclin à l'exploitation. En
de messagerie électronique, et effet, leurs utilisateurs ne possèdent
exécutent le code binaire, pas l'expertise ou l'expérience pour
implantent des chevaux de Troie éviter ou pour détecter un
pour de futurs compromis ou compromis; il est impératif
bloquent les systèmes. Le système d'informer les individus des risques
peut être bien plus exploité si le qu'ils prennent lorsqu'ils installent
poste de travail compromis a des des logiciels non autorisés ou
privilèges d'administration sur le ouvrent des messages non
reste du réseau. sollicités.
Des protections peuvent être mises
en place de telle manière que les
logiciels clients de messagerie
n'ouvrent ou n'exécutent pas
automatiquement les pièces jointes.
En outre, la mise à jour automatique
de logiciels de poste de travail via
Red Hat Network ou autre service
de gestion de systèmes peut
soulager le poids des déploiements
de sécurité sur de multiples
ordinateurs.

Attaques par Un pirate ou un groupe de pirates


déni de service coordonnent une attaque sur le Les cas les plus fréquents d'attaque
(Denial of réseau ou sur les ressources du par déni de service (DoS) aux États-
Service ou Dos) serveur d'une organisation en Unis se sont passés en 2000.
envoyant des paquets non autorisés Plusieurs sites commerciaux and
gouvernementaux dont le traffic est

81
3. Mises à jour de sécurité

Exploit Description Remarques

vers la machine cible (soit le important ont été indisponibles à


serveur, le routeur ou le poste de cause d'une attaque coordonnée
travail). Cela oblige la ressource à d'inondation de ping en utilisant
devenir indisponible pour les plusieurs systèmes compromis avec
utilisateurs légitimes. de larges bandes passantes qui se
comportent comme des zombies, ou
des noeux de redirection broadcast.
Les paquets initiaux sont
habituellement falsifiés (ainsi que
rediffusés), ce qui rend l'attaque à la
source plus difficile.
Les avancées à l'entrée des filtres
(IETF rfc2267) utilisant iptables et
Network IDSes tel que snort
assistent les administrateurs en
capturant et en empêchant les
attaques distribuées DoS.

Tableau 6.1. Exploits courants

3. Mises à jour de sécurité


Lorsque des vulnérabilités de sécurité sont découvertes, les logiciels touchés doivent être
corrigés afin de limiter les risques de sécurité possibles. Si le logiciel fait partie d'un paquetage
au sein d'une distribution Red Hat Enterprise Linux actuellement supportée, Red Hat, Inc. se
doit de publier des paquetages mis à jour réparant les brèches de sécurité dès que possible.
Souvent, l'annonce d'un exploit de sécurité est accompagné d'un correctif (ou de code source
corrigeant le problème). Le correctif est alors appliqué au paquetage de Red Hat Enterprise
Linux testé par l'équipe d'assurance qualité de Red Hat et édité en tant que mise à jour d'errata.
Toutefois, si l'annonce n'inclut pas de correctif, un développeur de Red Hat travaillera avec la
personne qui s'occupe du logiciel pour résoudre le problème. Une fois le problème corrigé, le
paquetage est testé et édité en tant que mise à jour d'errata.

Si une mise à jour d'errata est publiée pour un logiciel utilisé sur votre système, il est fortement
recommandé que vous mettiez à jour les paquetages concernés dès que possible, afin de
réduire la période pendant laquelle votre système est potentiellement exploitable.

3.1. Mise à jour des paquetages


Lors de la mise à jour de logiciels sur votre système, il est important de télécharger ces mises à
jour à partir d'une source digne de confiance. Un pirate peut facilement reconstruire la version
d'un paquetage avec le même numéro de version que celui qui est supposé corriger le
problème, mais avec un exploit de sécurité différent et le publier sur l'internet. Dans une telle
situation, l'utilisation de mesures de sécurité consistant à vérifier les fichiers avec le RPM
original, ne détecteront pas l'exploit. Il est donc très important de télécharger les RPM de

82
3.1. Mise à jour des paquetages

sources dignes de confiance comme le site Red Hat, Inc., et de vérifier la signature du
paquetage afin de contrôler son intégrité.

Red Hat offre deux méthodes pour obtenir des informations sur les mises à jour d'errata :

1. Répertoriées et disponibles par téléchargement sur le réseau Red Hat

2. Répertoriées et sans liens sur le site Web d'errata de Red Hat

Remarque
En commençant par la ligne de produits de Red Hat Enterprise Linux, les
paquetages mis à jour peuvent uniquement être téléchargés depuis le réseau Red
Hat. Bien que le site Web d'errata de Red Hat contienne des informations à jour, il
ne contient pas les paquetages actuels prêts à être téléchargés.

3.1.1. L'utilisation du site Web d'errata de Red Hat


Le réseau Red Hat vous permet d'automatiser la plupart des processus de mises à jour. Il
détermine les paquetages RPM nécessaires pour votre système, les télécharge depuis un
dépôt sécurisé, vérifie la signature RPM pour s'assurer qu'ils n'ont pas été modifiés et les met à
jour. L'installation de paquetages peut se produire immédiatement ou peut être programmée
lors d'une certaine période de temps.

Le réseau Red Hat requiert un profil de système pour chaque ordinateur devant être mis à jour.
Le profil de système contient des informations matérielles et logicielles sur le système. Ces
informations sont confidentielles et ne sont données à personne d'autre. Elles sont seulement
utilisées pour déterminer les mises à jour d'errata qui peuvent être appliquées à chaque
système. Sans elles, le réseau Red Hat ne peut pas déterminer si un système a besoin de
mises à jour. Lorsqu'un errata de sécurité (ou tout type d'errata) est publié, le réseau Red Hat
envoie un message électronique avec une description de l'errata ainsi qu'une liste des
systèmes affectés. Pour appliquer la mise à jour, utilisez l'agent de mise à jour Red Hat ou
programmez la mise à jour du paquetage grâce au site Web http://rhn.redhat.com.

Astuce
Red Hat Enterprise Linux includes the Red Hat Network Alert Notification Tool,
a convenient panel icon that displays visible alerts when there is an update for a
registered Red Hat Enterprise Linux system. Refer to the following URL for more
information about the applet: https://rhn.redhat.com/rhn/help/quickstart.jsp

83
3.1. Mise à jour des paquetages

Important
Avant d'installer tout errata de sécurité, assurez-vous de bien lire toutes les
instructions spéciales contenues dans le rapport d'errata et appliquez-les comme il
l'est demandé. Reportez-vous à Section 3.1.5, « Application des changements »
pour obtenir des instructions générales sur l'application des modifications résultant
d'une mise à jour d'errata.

3.1.2. L'utilisation du site Web d'errata de Red Hat


Lorsque les rapports d'errata de sécurité sont publiés, ils se trouvent sur le site Web d'errata de
Red Hat disponible à l'adresse http://www.redhat.com/security/. Depuis cette page, sélectionnez
le produit et la version s'appliquant à votre système, puis choisissez security (sécurité) en haut
de la page pour n'afficher que les alertes de sécurité de Red Hat Enterprise Linux. Si le
synopsis de l'une des alertes décrit un paquetage utilisé sur votre système, cliquez sur le
synopsis pour obtenir davantage d'informations.

La page de détails décrit l'exploit de sécurité et toutes autres instructions spéciales qui doivent
être effectuées en plus de la mise à jour pour réparer le trou de sécurité.

Pour télécharger le(s) paquetage(s) mis à jour, cliquez sur le lien pour vous connecter au
réseau Red Hat, cliquez sur le(s) nom(s) de paquetage et enregistrez-le(s) sur le disque dur. Il
est fortement recommandé de créer un nouveau répertoire, comme /tmp/updates et d'y
enregistrer tous les paquetages téléchargés.

3.1.3. Vérification des paquetages signés


Tous les paquetages de Red Hat Enterprise Linux portent la signature de la clé GPG de Red
Hat, Inc. GPG signifie GNU Privacy Guard, ou GnuPG, un paquetage de logiciel libre utilisé
pour assurer l'authenticité des fichiers distribués. Par exemple, une clé privée (clé secrète)
appartenant à Red Hat verrouille le paquetage alors que la clé publique déverrouille et vérifie le
paquetage. Si la clé publique distribuée par Red Hat ne correspond pas à la clé privée durant la
vérification de RPM, il se peut que le paquetage ait été modifié. Il n'est donc pas digne de
confiance.

L'utilitaire RPM dans Red Hat Enterprise Linux essaie automatiquement de vérifier la signature
GPG d'un paquetage RPM avant de l'installer. Si la clé GPG de Red Hat n'est pas installée,
installez la depuis un emplacement sécurisé et statique comme par exemple un CD-ROM
d'installation Red Hat Enterprise Linux.

En supposant que le CD-ROM soit monté sur /mnt/cdrom, utilisez la commande suivante pour
l'importer dans le porte-clés (une base de données de clés sécurisées sur le système) :
rpm --import /mnt/cdrom/RPM-GPG-KEY

Pour afficher la liste de toutes les clés installées pour la vérification de RPM, exécutez la
commande suivante :
rpm -qa gpg-pubkey*

84
3.1. Mise à jour des paquetages

Pour la clé de Red Hat, la sortie inclut les éléments suivants :


gpg-pubkey-db42a60e-37ea5438

Pour afficher les détails d'une clé spécifique, utilisez la commande rpm -qi suivie de la sortie de
la commande précédente, comme dans l'exemple ci-après :
rpm -qi gpg-pubkey-db42a60e-37ea5438

Il est extrêmement important que vous vérifiez la signature des fichiers RPM avant de les
installer afin d'obtenir la garantie qu'ils n'ont pas été modifiés par rapport à l'édition Red Hat,
Inc. des paquetages. Pour vérifier l'ensemble des paquetages téléchargés en une seule
opération, exécutez la commande suivante :
rpm -K /tmp/updates/*.rpm

Pour chaque paquetage, si la clé GPG est bien vérifiée, la commande renvoie en sortie gpg OK.
Si elle ne l'est pas, assurez-vous que vous utilisez la bonne clé publique de Red Hat et que
vous vérifiez la source du contenu. Les paquetages qui ne passent pas les vérifications GPG ne
devraient pas être installés. En effet, il est possible qu'ils aient été modifiés par un tiers.

Après la vérification de la clé GPG et le téléchargement de tous les paquetages associés au


rapport d'errata, installez ces derniers depuis une invite du shell en étant connecté en tant que
super-utilisateur.

3.1.4. Installation de paquetages signés


Cette opération peut être effectuée en toute sécurité pour la plupart des paquetages (à
l'exception des paquetages du noyau) en exécutant la commande suivante :
rpm -Uvh /tmp/updates/*.rpm

Pour les paquetages du noyau, utilisez la commande suivante :


rpm -ivh /tmp/updates/<kernel-package>

Remplacez <kernel-package> dans l'exemple précédent par le nom du RPM du noyau.

Une fois que l'ordinateur a été redémarré en toute sécurité en utilisant le nouveau noyau, il est
possible de supprimer l'ancien à l'aide de la commande suivante :
rpm -e <old-kernel-package>

Remplacez <old-kernel-package> dans l'exemple précédent par le nom du RPM de l'ancien


noyau.

Remarque
Vous n'avez pas besoin de supprimer l'ancien noyau. Le chargeur de démarrage
par défaut, GRUB, permet d'installer de multiples noyaux, sélectionnés depuis un
menu au démarrage.

85
3.1. Mise à jour des paquetages

Important
Avant d'installer tout errata de sécurité, assurez-vous de bien lire toutes les
instructions spéciales contenues dans le rapport d'errata et appliquez-les comme il
l'est demandé. Reportez-vous à Section 3.1.5, « Application des changements »
pour obtenir des instructions générales sur l'application des modifications résultant
d'une mise à jour d'errata.

3.1.5. Application des changements


Après le téléchargement et l'installation d'errata de sécurité via le réseau Red Hat ou le site
Web d'errata de Red Hat, il est important de ne plus utiliser les anciens logiciels et de n'utiliser
que les nouveaux. La manière de procéder dépend du type des logiciels qui ont été mis à jour.
La liste suivante énumère de manière détaillée les catégories générales des logiciels et fournit
des instructions quant à l'utilisation des versions mises à jour après la mise à niveau d'un
paquetage.

Remarque
D'une manière générale, le redémarrage du système est la manière la plus sûre de
garantir que la nouvelle version d'un paquetage de logiciels est bien utilisée ;
néanmoins, cette option n'est pas toujours offerte à l'administrateur système.

Applications
Les applications de l'espace utilisateur représentent tout programme pouvant être démarré
par un utilisateur du système. De manière générale, de telles applications sont utilisées
seulement lorsqu'un utilisateur, un script ou un utilitaire de tâches automatisées les lance et
que l'opération ne dure pas longtemps.

Une fois qu'une application de l'espace utilisateur est mise à jour, arrêtez toute instance de
l'application sur le système et relancez le programme afin d'utiliser la version mise à jour.

Noyau
Le noyau est l'élément logiciel de base du système d'exploitation Red Hat Enterprise Linux.
Il gère l'accès à la mémoire, le processeur et les périphériques ainsi que toutes les tâches
programmées.

En raison de sa fonction centrale, le noyau ne peut pas être redémarré sans arrêter
également l'ordinateur. Par conséquent, une version mise à jour du noyau ne peut être
utilisée avant que le système ne soit redémarré.

Bibliothèques partagées
Les bibliothèques partagées sont des unités de code, comme glibc, qui sont utilisées par
un certain nombre d'applications et de services. Étant donné que les applications utilisant
une bibliothèque partagée chargent le code lors de leur initialisation, il est nécessaire

86
3.1. Mise à jour des paquetages

d'arrêter et de redémarrer toute application utilisant une bibliothèque mise à jour.

Afin de déterminer les applications en cours d'exécution qui sont liées à une bibliothèque
particulière, utilisez la commande lsof, comme dans l'exemple suivant :
lsof /usr/lib/libwrap.so*

Cette commande renvoie une liste de tous les programmes en cours d'exécution qui
utilisent les enveloppeurs TCP pour le contrôle de l'accès des hôtes. Par conséquent, tout
programme faisant partie de la liste doit être arrêté et redémarré si le paquetage
tcp_wrappers est mis à jour.

Services SysV
Les services SysV sont des programmes serveur persistants lancés lors du processus de
démarrage. Parmi des exemples de services sysV figurent sshd, vsftpd et xinetd.

Parce que ces programmes restent en mémoire tant que l'ordinateur est opérationnel,
chaque service SysV mis à jour doit être arrêté et redémarré après la mise à niveau du
paquetage. Pour ce faire, utilisez l'outil de configuration des services ou connectez-vous
dans un shell root et à l'invite exécutez la commande /sbin/service comme dans l'exemple
ci-après :
/sbin/service <service-name> restart

Dans l'exemple précédent, remplacez <service-name> par le nom du service, tel que sshd.

Services xinetd
Les services contrôlés par le super-service xinetd tournent seulement lorsqu'une connexion
active existe. Parmi des exemples de services contrôlés par xinetd figurent Telnet, IMAP et
POP3.

Étant donné que de nouvelles instances de ces services sont lancées par xinetd lors de la
réception de toute nouvelle requête, les connexions établies après une mise à niveau sont
traitées par le logiciel mis à jour. Toutefois, s'il existe des connexions actives lors de la mise
à niveau du service contrôlé par xinetd, ces dernières seront traitées par l'ancienne version
du logiciel.

Pour arrêter d'anciennes instances d'un service particulier contrôlé par xinetd, mettez à
niveau le paquetage de ce service, puis arrêtez tous les processus actuellement en cours
d'exécution. Pour déterminer si le processus tourne, utilisez la commande ps, puis utilisez
kill ou killall pour arrêter les instances courantes du service.

Par exemple, si des paquetages imap d'errata de sécurité sont publiés, mettez à niveau les
paquetages, puis, en tant que super-utilisateur, saisissez la commande suivante à une
invite du shell :
ps -aux | grep imap

Cette commande renvoie toutes les sessions IMAP actives. Des sessions individuelles
peuvent alors être arrêtées en exécutant la commande suivante :
kill <PID>

87
3.1. Mise à jour des paquetages

Si il n'est pas possible de terminer la session, utiliser cette commande à la place :


kill -9 <PID>

Dans l'exemple précédent, remplacez <PID> par le numéro d'identification du processus (qui
se trouve dans la deuxième colonne de la commande ps) correspondant à une session
IMAP.

Pour mettre fin à toutes les sessions IMAP, exécutez la commande suivante :
killall imapd

88

Вам также может понравиться