Академический Документы
Профессиональный Документы
Культура Документы
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.
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.
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
v
Introduction
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.
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 :
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.
/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.
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 :
3
2.1. Interfaces Ethernet
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.
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 :
PEERDNS=<answer>
où <answer> correspond à l'une des valeurs suivantes :
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.
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
• no— Les utilisateurs autres que le super-utilisateur ne sont pas autorisés à contrôler ce
périphérique.
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.
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.
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.
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
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.
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.
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.
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
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.
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.
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
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.
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.
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 :
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
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.
/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
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.
15
1. Présentation
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 :
16
2. Mise en place d'une connexion Ethernet
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.
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.
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.
17
2. Mise en place d'une connexion 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
Assurez-vous de bien sélectionner Fichier => Enregistrer afin d'enregistrer vos 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 »..
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.
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.
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
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.
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
Assurez-vous de bien sélectionner Fichier => Enregistrer afin d'enregistrer vos 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.
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.
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
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
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.
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/.
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
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.
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
Assurez-vous de bien sélectionner Fichier => Enregistrer afin d'enregistrer vos 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.
30
7. Mise en place d'une connexion sans fil
Suivez les étapes suivantes afin d'ajouter une connexion Ethernet sans fil :
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
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.
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
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.
33
8. Gestion des paramètres DNS
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.
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.
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
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.
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
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
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.
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
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
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
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 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
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.
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.
À 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.
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.
4. Le client distant peut interagir avec l'hôte distant au moyen d'une connexion cryptée.
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 :
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.
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.
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.
• 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).
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).
• 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_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.
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
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.
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>
Pour transférer le fichier local shadowman vers le répertoire personnel de votre compte dans
50
6.3. Utilisation de la commande sftp
La syntaxe générale correspondant au transfert d'un fichier distant vers un système est la
suivante :
scp username@tohostname:<remotefile><newlocalfile>
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/
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
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.
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).
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.
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.
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.
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.
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 ».
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.
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.
Afin d'enregistrer votre phrase d'accès lors d'une session GNOME, suivez les étapes
suivantes :
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.
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.
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.
• 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.
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).
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.
• 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.
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.
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;
}
}
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
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;
}
}
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";
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;
}
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
Pour obtenir une liste complète des options et de leur fonction, reportez-vous à la page de
manuel relative à dhcp-options.
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.
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.
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.
• -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.
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.
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.
La variable NETWORKING doit être réglée sur yes pour que la mise en réseau soit activée au
démarrage.
Il vous faut un fichier de configuration pour chacun des périphériques que vous souhaitez
configurer afin d'utiliser DHCP.
• 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
• yes — Modifie /etc/resolv.conf avec les informations du serveur. Si vous utilisez DHCP,
yes est alors la valeur par défaut.
• SRCADDR=<adresse>, où <adresse> est l'adresse IP source spécifiée pour les paquets sortants.
• 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.
65
4.1. Documentation installée
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.
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.
68
2. Afficher les paramètres matériels
69
3. Paramètres d'affichage du double écran
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.
70
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.
• La capacité d'insérer des correctifs et de mettre à jour des services et des noyaux
rapidement et efficacement.
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.
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.
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).
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.
75
1.3. Évaluation des outils
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 :
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.
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.
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.
http://www.cirt.net/code/nikto.shtml
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/
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.
79
2. Exploits et attaques courants
80
2. Exploits et attaques courants
81
3. Mises à jour de sécurité
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.
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 :
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.
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.
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.
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 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.
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>
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.
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
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
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