<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
[
<!ENTITY howto "http://www.traduc.org/docs/howto/lecture/">
<!ENTITY guide "http://www.traduc.org/docs/guides/lecture/">
<!ENTITY traduc "http://www.traduc.org">
]>
<article lang="fr">
<articleinfo>
<title>Guide pratique de mise en œuvre de XDMCP sous Linux</title>
<subtitle>
Version française du <foreignphrase lang="en">Linux XDMCP
HOWTO</foreignphrase>
</subtitle>
<author>
<firstname>Thomas</firstname>
<surname>Chao</surname>
<email>tomchao CHEZ lucent POINT com</email>
</author>
<othercredit role="traduction" class="translator">
<firstname>Denis</firstname>
<surname>Berhaut</surname>
<contrib>Adaptation française</contrib>
<email>denis POINT berhaut CHEZ free POINT fr</email>
</othercredit>
<othercredit role="relecture" class="translator">
<firstname>Éric</firstname>
<surname>Madesclair</surname>
<contrib>Relecture de la version française</contrib>
<email>eric TIRET m CHEZ wanadoo POINT fr</email>
</othercredit>
<othercredit role="publication" class="copyeditor">
<firstname>Jean-Philippe</firstname>
<surname>Guérard</surname>
<contrib>Préparation de la publication de la v.f.</contrib>
<email>fevrier CHEZ tigreraye POINT org</email>
</othercredit>
<releaseinfo>Version : 1.3.fr.1.0</releaseinfo>
<pubdate>26 janvier 2005</pubdate>
<revhistory>
<revision>
<revnumber>1.3.fr.1.0</revnumber>
<date>2005-01-26</date>
<authorinitials>DB, ÉM, JPG</authorinitials>
<revremark>Première version française.</revremark>
</revision>
<revision>
<revnumber>1.3</revnumber>
<date>2003-01-02</date>
<authorinitials>TC</authorinitials>
<revremark>
Ajout d'informations pour la configuration de Red Hat 7.3
& 8.0, Mandrake 8.2 & 9.0, SuSE et mise à jour de
contenu.
</revremark>
</revision>
<revision>
<revnumber>1.2</revnumber>
<date>2002-03-15</date>
<authorinitials>TC</authorinitials>
<revremark>
Ajout d'informations sur la configuration de Linux Red Hat
7.2, Mandrake 8.1 et Slackware 8.0 ainsi que sur le
transfert de X11 sous SSH.
</revremark>
</revision>
<revision>
<revnumber>1.1</revnumber>
<date>2001-03-20</date>
<authorinitials>TC</authorinitials>
<revremark>Révision et ajout de RH 7.0.</revremark>
</revision>
<revision>
<revnumber>1.0</revnumber>
<date>2000-11-01</date>
<authorinitials>TC</authorinitials>
<revremark>Première révision et diffusion.</revremark>
</revision>
</revhistory>
<abstract><para>
Ce guide pratique explique comment utiliser ensemble un
gestionnaire d'affichage X (xdm, kdm et gdm) et XDMCP (le
protocole de contrôle du gestionnaire d'affichage X) pour fournir
une solution de terminaux X et une plate-forme d'exécution
efficace d'applications X à distance. Ce document met l'accent sur
la configuration d'une connexion X avec XDMCP.
</para></abstract>
</articleinfo>
<sect1 id="intro">
<title>Introduction</title>
<para>
XDMCP signifie <quote>protocole de contrôle du gestionnaire
d'affichage X</quote> ; c'est un protocole réseau. Il constitue
un moyen de faire tourner un terminal X sur votre PC (ou votre MAC)
en utilisant le serveur X qui fournira une interface client-serveur
entre le matériel d'affichage (la souris, le clavier et les
affichages vidéo) et l'environnement de l'ordinateur, tout en
offrant l'infrastructure d'affichage et une interface d'application
standardisée (référence issue de la page d'accueil du projet
Xfree86). Le terminal X peut être affiché dans une fenêtre
individuelle ou dans de multiples fenêtres, en fonction des
capacités logicielles et de la configuration de votre système
d'affichage X.
</para>
<para>
Je recherche toujours la meilleure façon d'utiliser Linux, que ce
soit à la maison au travail. L'un de ses avantages entre tous est sa
capacité à réutiliser les vieux systèmes (tels que des 486 et des
Pentium, Pentium II) comme terminaux X (en utilisant les
applications Win32 telles que Exceed (de Hummingbird), Reflection X,
X-Win32 or X-ThinPro ; sous MAC, essayez eXodus) pour
s'exécuter à distance sur n'importe lequel de vos PC. J'ai découvert
avec une certaine surprise qu'il y a beaucoup de documents sur
Internet qui peuvent vous aider à le configurer, mais pas sous forme
de guide pas à pas !Voici pourquoi j'en suis venu à écrire ce
document qui m'a paru être une manière de partager mes expériences
avec tous les utilisateurs. En utilisant X et XDMCP, vous pouvez
bâtir pour la maison ou le travail une bonne solution, fiable et bon
marché.
</para>
<sect2 id="disclaimer">
<title>Limitations de responsabilité</title>
<para>
Aucune responsabilité légale ne sera acceptée quant au contenu de
ce document. L'utilisation des concepts, exemples et autres
contenus du document s'effectue à vos risques et périls. Dans la
mesure où il s'agit d'une nouvelle édition de ce document, il peut
comporter des erreurs ou des inexactitudes, évidemment
susceptibles d'endommager votre système. Procédez prudemment, et
bien que cela soit improbable, le ou les auteurs refusent toute
responsabilité à ce sujet.
</para>
<para>
Sauf mention spécifique, les droits d'auteur sont la possession de
leurs propriétaires respectifs. L'utilisation d'un terme dans ce
document ne doit pas être considérée comme ayant une influence sur
la validité d'une quelconque marque déposée ou marque de services.
</para>
<para>
Le fait de nommer un produit ou une marque ne doit pas être
considéré comme une recommandation.
</para>
<para>
Nous vous recommandons fortement d'effectuer une sauvegarde de
votre système avant toute installation importante et d'effectuer
des sauvegardes à intervalles réguliers.
</para>
</sect2>
<sect2 id="nouvelles-versions">
<title>
Nouvelles versions de ce document
</title>
<para>
Vous trouverez la plus récente version française de ce document à
l'adresse : <ulink url="&howto;XDMCP-HOWTO.html"/>.
</para>
<para>
La plus récente version originale de ce document est disponible à
l'adresse : <ulink
url="http://tldp.org/HOWTO/XDMCP-HOWTO/index.html"/>.
</para>
</sect2>
<sect2 id="feedback">
<title>Commentaires et réactions</title>
<para>
Les commentaires sur ce document sont bienvenus. Sans vos
suggestions et autres apports, ce document n'existerait pas.
Envoyez-moi (en anglais) vos ajouts, commentaires et critiques à
l'adresse suivante :
<email>tomchao CHEZ lucent POINT com</email>.
</para>
<para>
N'hésitez pas à faire parvenir vos commentaires et suggestions
concernant l'adaptation française de ce document au projet
<ulink url="&traduc;">Traduc.org</ulink> à l'adresse :
<email>commentaires CHEZ traduc POINT org</email>.
</para>
</sect2>
</sect1>
<sect1 id="procedure">
<title>La procédure</title>
<para>
Cette section détaille la procédure de configuration d'un terminal X
avec XDMCP. Comme pré-requis, vous devez avoir n'importe quelle
distribution Linux installée, ainsi que X.
</para>
<sect2>
<title>Avant de commencer, quelques notions</title>
<para>
Avant de commencer, il vaut mieux comprendre globalement le
fonctionnement. (Vous trouverez plus de détails <ulink
url="#REFS">Ressources</ulink> ci-dessous et sur le site de <ulink
url="&traduc;">Traduc.org</ulink>)
</para>
<para>
D'habitude, le serveur X est lancé à partir d'un gestionnaire
d'affichage X. Presque toutes les distributions Linux embarquent
xdm, kdm et gdm. Le choix de l'un d'entre eux est libre. (Ce
document se servira de gdm et kdm comme exemples). Le gestionnaire
d'affichage constitue une interface agréable et uniforme pour les
utilisateurs lambda (ouverture de session graphique, démarrage
d'un gestionnaire de fenêtre, horloge, et cætera). Un gestionnaire
d'affichage contrôle une série d'affichages X, qui peuvent être
situés sur l'hôte local ou sur des serveurs distants. Il est bon
de noter que ce qu'exécute votre environnement est le fichier
<filename>Xsession</filename>.
</para>
<para>
Quand xdm s'exécute, il propose deux manières différentes de gérer
l'affichage. Il peut gérer un serveur X qui s'exécute sur la
machine locale (indiqué dans <filename>Xservers</filename>) et des
serveurs X distants (en général des terminaux X) en utilisant
XDMCP (en fonction de ce qui est indiqué dans le fichier
<filename>Xaccess</filename> — voir les pages de manuel de
xdm).
</para>
<para>
Quant à kdm (qui fait partie de l'environnement graphique KDE),
c'est un remplaçant de xdm qui se configure de façon identique, à
ceci près que ses fichiers sont <filename>/etc/X11/kdm</filename>
pour Caldera, dans <filename>/etc/kde/kdm</filename> pour Red Hat,
et dans <filename>/usr/share/config/kdm</filename> pour Mandrake.
</para>
<para>
Le gdm (Gestionnaire d'affichage Gnome) est une réécriture du
fameux xdm. Les fonctions de gdm sont similaires à celles de xdm
et kdm. Gdm (gdm) est le gestionnaire d'affichage de Gnome, et ses
fichiers de configuration sont situés dans
<filename>/etc/X11/gdm/gdm.conf</filename>. Le fichier
<filename>gdm.conf</filename> contient un ensemble de variables et
un grand nombre d'options pour gdm. Le répertoire Sessions
contient un script pour chaque option de session ; chaque script
appelle <filename>/etc/X11/xdm/Xsession</filename> avec l'option
appropriée. Gdm offre des fonctions similaires à xdm et kdm, mais
a été écrit à partir de zéro et ne contient aucun code originaire de XDM
ou du consortium X.
</para>
<para>
Avec RH 8.0, une nouvelle interface graphique appelée
<quote>Bluecurve</quote> apparaît. Son objectif est d'imiter
l'apparence de XP. Dans ce cas, il n'y a aucune différence de
configuration !
</para>
<para>
On peut trouver d'autres bonnes références pour une configuration
similaire dans les documents suivants :
</para>
<itemizedlist>
<listitem><para>
Le petit guide <ulink url="&howto;XDM-Xterm.html">XDM et les
terminaux X</ulink>, écrit par Kevin Taylor.
</para></listitem>
<listitem><para>
Le <ulink url="&howto;Remote-X-Apps.html">Petit guide
d'exécution à distance des applications X</ulink>, une
excellente référence d'approche pratique et théorique
d'exécution de X à distance. Écrit par Vincent Zweije.
</para></listitem>
<listitem><para>
Le petit guide <ulink
url="http://ftp.traduc.org/projets/howto/obsoletes/X-Terminal.html">
Xterminal</ulink>, écrit par Scot W. Stevenson.
</para></listitem>
</itemizedlist>
</sect2>
<sect2 id="security">
<title>Rappel de sécurité</title>
<para>
L'utilisation de XDMCP est par définition dangereuse, ce qui fait
que la plupart des distributions ont désactivé son utilisation par
défaut. Si vous devez utiliser XDMCP, ne le faîtes qu'au sein de
réseaux sécurisés, tels que des réseaux d'entreprises protégées par un
pare-feu. Malheureusement, XDMCP utilise le port UDP 177 et TCP le port
6000 ; il n'est donc pas possible de l'utiliser nativement avec SSH.
Actuellement, SSH1 et SSH2 ne permettent pas de transmettre les
communications UDP de manière sécurisée.
</para>
<para>
La technique de sécurisation des connexions via SSH est appelée
transfert de port X11 TCP/IP (X11 TCP/IP Port Forwarding).
Rendez-vous sur <ulink
url="http://www.ox.compsoc.net/~steve/portforwarding.html">Why
Port Forwarding?</ulink> et dans la section <ulink
url="#REFS">Ressources</ulink> pour des informations
complémentaires (en anglais). Au cas où vous voudriez
l'expérimenter, j'ai ajouté une petite section plus bas pour vous
montrer son fonctionnement. Je vous décrirai sommairement son
fonctionnement ; je laisse les autres experts et/ou les guides
pratiques vous expliquer son utilisation avancée.
</para>
</sect2>
<sect2 id="system">
<title>Mon système</title>
<para>
J'ai testé les configurations de GNOME (gdm) et de KDE (kdm) sur
Red Hat 6.0, 6.2 et Red Hat 7.x et 8.0. J'ai eu aussi la chance de
les tester sur Mandrake 7.2, 8.0, 8.2 et 9.0. Les configurations
de SuSE 7.2 and Slakware 8.0 ont été testées par les
utilisateurs ; merci à Peter Van Aerten et à tous ceux qui
m'ont aidé à la préparation de ce guide pratique. Je désire
remercier tous les utilisateurs qui m'ont aidé à réaliser ce
projet. J'ai aussi essayé sur Caldera eDesktop 2.4, dont la
configuration est similaire à celle de RH, à la différence qu'il
utilise KDE. Je n'ai pas eu l'occasion de tester sur d'autres
variantes telles que Debian ou Slackware (les utilisateurs de
Slackware m'ont rapporté que le fonctionnement est identique à
celui décrit dans ce document). Cependant, la configuration
devrait être similaire et devrait bien fonctionner. Si vous avez
réussi à configurer sur d'autres distributions que Red Hat,
Caldera et Mandrake, faites-moi partager votre expérience. Je
l'ajouterai à ce document.
</para>
<para>
Le PC que j'utilise est un compatible IBM, équipé d'un AMD Athlon
XP 1800+, de 384 Mo de mémoire et d'un disque dur de 60 Go
ATA-100. Cette machine a été mise à jour à partir d'un PC équipé
d'un Intel Pentium II 500 MHz (je me suis aperçu que mon vieux PC
Pentium 100 MHz marche très bien). J'utilise une carte Fast
Ethernet intégrée dans ma nouvelle carte mère AMD. Sur mon vieux
PC, j'utilise l'adaptateur 3Com 10/100 (3C509B), un cédérom 48X et
un disque ZIP IOMEGA. J'ai aussi effectué des tests avec mon
portable Toshiba Tecra 8100 connecté par carte sans fil Agere.
</para>
</sect2>
<sect2 id="remote">
<title>Pièces rapportées</title>
<para>
J'utilise Exceed 7.0 (Exceed 6.x fonctionne aussi correctement)
sur mon PC, et je les ai testé sous Windows 98 SE, Windows NT 4.0
et Windows 2000 Pro. J'ai aussi constaté que X-Win32 et X-ThinPro
sont d'autres choix répandus. Il existe également beaucoup
d'applications, libres ou commerciales.
</para>
</sect2>
<sect2 id="prep">
<title>Préparation du serveur</title>
<para>
Sous RH 7.x, il faut configurer la recherche des DNS, pour
permettre à certaines fonctions de réseau de fonctionner
correctement (comme <command>telnet</command> qui sera utilisée
pour tester la configuration). Vous pouvez saisir
<userinput>netstat -r</userinput> ou
<userinput>arp -a</userinput> pour vérifier la configuration
des DNS ou les temps de réponse. Si vous êtes dans un petit
environnement (comme à la maison ou un petit réseau d'entreprise)
qui n'a pas son propre serveur DNS et qui utilise le serveur DNS
du FAI, ajoutez l(es) adresse(s) des serveurs de noms dans le
fichier <filename>resolv.conf</filename>. Si vous l'utilisez
uniquement à la maison ou au labo, vous pouvez alors ajouter dans
votre fichier local les noms d'hôte de toutes les stations de
travail <filename>host</filename>.
</para>
<para>
Pour que votre serveur X accepte une session XDMCP, assurez-vous
que les éléments suivants sont bien installés :
</para>
<orderedlist inheritnum="ignore" continuation="restarts">
<listitem><para>
Installez votre OS Linux. Dans mon cas, j'ai installé Red Hat
7.3 (installation personnalisée). Si vous projetez d'utiliser
SSH pour faire du transfert de port, il vous faudra installer
le paquetage OpenSSH ou compiler SSH dans le kernel. De plus,
RH 7.x est fourni avec un pare-feu installé par défaut (à
moins que vous ne fassiez pas ce choix). Vous pourrez
rencontrer des problèmes si vous n'ajoutez pas des règles à
votre pare-feu ou si vous ne le neutralisez pas temporairement
le temps de configurer XDMCP. Je ne détaillerai pas
les règles du pare-feu dans la mesure où ce n'est pas l'objet
de ce document. Je montrerai seulement comment le faire
fonctionner, à charge pour vous de le régler finement.
</para>
<para>
Avec le noyau 2.2x, vous afficherez les règles de votre
pare-feu en saisissant la commande
<userinput>ipchains -L</userinput>. Pour le désactiver
temporairement, utilisez la commande
<userinput>ipchains -F</userinput> pour effacer les
règles (pas de panique, elles seront restaurées en les
rechargeant ou au redémarrage). Avec le noyau 2.4x, remplacez
la commande <command>ipchains</command> par
<command>iptables</command>. Un utilisateur m'a indiqué qu'en
ajoutant cette règle, vous n'aurez pas besoin de désactiver
votre pare-feu et que vous pourrez accéder au serveur X (vous
pouvez le vérifier par vous-même).
</para>
<screen>
ipchains -A input -p udp -i $extint --dport 177 -j ACCEPT
</screen>
<para>
Vous devriez pouvoir utiliser la commande
<command>iptables</command> de manière identique. (Vous
trouverez des références à iptables dans les <ulink
url="#REFS">Ressources</ulink>).
</para>
<para>
Pour plus de détails sur les pare-feu, rendez-vous sur la page
du <ulink url="&howto;IP-Masquerade-HOWTO.html">Guide pratique
de masquage IP</ulink>.
</para>
<para>
Il est aussi possible d'ajouter des règles pour qu'il accepte
uniquement les adresses IP des stations de travail de
confiance. Vous pouvez utiliser la commande
<command>iptables</command> à votre gré. Je rappelle que sa
description n'est pas l'objet de ce document. J'ai de la
chance dans le sens où j'utilise le pare-feu de ma société.
</para></listitem>
<listitem><para>
Configuration du réseau. Vous pouvez utiliser les commandes
<command>ping</command>, <command>ftp</command> et
<command>telnet</command> pour tester le fonctionnement de
votre réseau. Pour des raisons de sécurité, le démon de la commande
<command>telnet</command> est désactivé sur RH 7.x et versions
ultérieures. Pensez à l'activer
si vous désirez l'utiliser pour effectuer vos tests. Vous
pourrez toujours le désactiver (avec la commande
<command>ntsysv</command>) lorsque vous en aurez terminé. Il
est aussi bon de se souvenir que les règles du pare-feu sont
actives. Ajoutez vos propres règles ou désactivez les
temporairement (comme mentionné plus haut) pour permettre
l'exécution de ces commandes.
</para></listitem>
<listitem><para>
Configuration de X
</para>
<para>
<emphasis>Ne configurez pas X</emphasis> avec une résolution
plus haute que celle dont les utilisateurs distants pourront
disposer. Testez le serveur X en saisissant soit
<command>startx</command> soit <command>telinit 5</command>.
Assurez-vous que X fonctionne correctement.
</para>
</listitem>
<listitem>
<para>Créez les comptes indispensables (et les groupes associés)
pour les utilisateurs devant accéder par le terminal X.</para>
</listitem>
</orderedlist>
</sect2>
<sect2 id="steps">
<title>Procédures à suivre</title>
<para>J'ai utilisé les étapes suivantes pour configurer le serveur X
afin qu'il accepte les requêtes XDMCP :
<orderedlist inheritnum="ignore" continuation="restarts">
<listitem>
<para>Dans un environnement grahique Linux, les polices utilisées
sont soit celles du serveur X (xfs), soit celles dont le chemin est
spécifié dans les fichiers de configuration XF86Config ou
XF86Config-4. .Si vous prévoyez d'utiliser le serveur de polices
xfs (cliquez ici pour voir les
<ulink url="http://www.redhat.com/docs/manuals/linux/RHL-7.3-Manual/ref-guide/s1-x-fonts.html">
avantages de xfs</ulink>), pour RH 6.2 et Mandrake 8.x et 9.0,
modifiez le fichier
<filename>/etc/rc.d/init.d/xfs</filename> et
apportez-y les modifications suivantes. Changez tout ce qui suit
(cela concerne le port du serveur de polices) :</para>
<screen>daemon xfs -droppriv -daemon -port
-1</screen>
<para>en:</para>
<screen>daemon xfs -droppriv -daemon -port
7100</screen>
<para>Dans la Mandrake 7.2, le port est déjà 7100. De plus, sur la
RH 7.x, l'écoute sur un port TCP est à présent désactivée par
défaut pour des raisons de sécurité ! Si vous désirez paramétrer le
serveur de polices de X, suivez les étapes
</para>
<para>
Changez la ligne suivante du fichier
<filename>/etc/rc.d/init.d/xfs</filename> :
</para>
<screen>
daemon xfs -droppriv -daemon
</screen>
<para>en :</para>
<screen>
daemon xfs -droppriv -daemon -port 7100
</screen>
<para>
Puis, dans <filename>/etc/X11/fs/config</filename>, mettez
cette ligne en commentaires :
</para>
<screen>
# Ne pas écouter sur les ports TCP (pour des raisons de sécurité)
#no-listen = tcp
</screen>
<para>
Si vous changez ou ajoutez le port, utilisez cette commande
pour redémarrer votre serveur de polices X (nécessite les droits de
root) :
</para>
<screen>
service xfs restart
</screen>
<para>
Le port 7100 n'est pas obligatoire. Vous pouvez choisir un
autre port, dans la mesure où vous aurez vérifié soigneusement
que ce port n'occasionne pas de conflit. Il est de bon ton de
consulter votre administrateur Linux avant de le faire, afin
qu'il sache que le port est utilisé ! Les différentes
distributions Linux peuvent placer xfs dans différents
répertoires sous /etc/rc.d. Si c'est le cas, vous pouvez le
rechercher.
</para></listitem>
<listitem><para>
Modifiez <filename>/etc/X11/xdm/xdm-config</filename> en
effectuant les modifications suivantes : Par défaut dans
la plupart des distributions Linux, cette ligne est active, ce
qui fait qu'il n'écoute pas les connexions XDMCP. Ceci pour
des raisons de sécurité. Pour Caldera et en utilisant kdm, le
fichier est situé en <filename>/etc/X11/kdm</filename>.
Trouvez cette ligne :
</para>
<screen>
DisplayManager.requestPort: 0
</screen>
<para>
et mettez la en commentaire comme ceci :
</para>
<screen>
! DisplayManager.requestPort: 0
</screen>
<para>
Rappelez vous que ceci n'affecte pas gdm. La configuration de
gdm se trouve dans la section suivante.
</para></listitem>
<listitem><para>
Dans le fichier <filename>/etc/X11/xdm/Xaccess</filename>
modifiez ce qui suit. (cela permet à tous les hôtes de se
connecter). Pour Caldera, et en utilisant kdm, le fichier est
situé en <filename>/etc/X11/kdm</filename>. Changez les droits
d'accès en 644 (chmod 644) :
</para>
<screen>
#* # any host can get a login window
</screen>
<para>
en :
</para>
<screen>
* # any host can get a login window
</screen>
<para>
La configuration ci-dessus est en mode Diffusion (Broadcast),
qui permet d'établir la liste de tous les serveurs X écoutant les
demandes de prise en charge de connexion X et en mesure de
l'effectuer. Si vous désirez n'autoriser que certaines
connexions, utilisez la section <command>CHOOSER</command> du
même fichier. Vous trouverez un exemple dans les <ulink
url="#REFS">Ressources</ulink>.
</para></listitem>
<listitem><para>
J'utilise gdm par défaut ainsi que l'invite de connexion gdm
pour permuter KDE et GNOME. Pour gdm, éditez le fichier
<filename>/etc/X11/gdm/gdm.conf</filename>. Ce qui suit active
XDMCP, en le faisant écouter les requêtes. Pour kdm (si vous
avez choisi KDE comme gestionnaire d'affichage lors de
l'installation), éditez le fichier <filename>
/usr/share/config/kdm/kdmrc</filename> pour Mandrake et
<filename>/etc/kde/kdm/kdmrc</filename> pour Red Hat ou
<filename>/opt/kde2/share/config/kdm/kdmrc</filename> pour
Slackware version (KDE2). Modifiez cette ligne :
</para>
<screen>
[xdmcp]
# false peut être remplacé par 0 dans certaines distributions
Enable=false
</screen>
<para>en :</para>
<screen>
# true peut être remplacé par 1 dans certaines distributions
Enable=true
</screen>
<para>
Assurez-vous que <literal>Port=177</literal> est présent à la
fin de ce bloc.
</para></listitem>
<listitem><para>
À présent, éditez le fichier <filename>/etc/inittab</filename>
et modifiez la ligne suivante :
</para>
<screen>
id:3:initdefault:
</screen>
<para>en:</para>
<screen>
id:5:initdefault:
</screen>
<para>
Dans la Slackware, le mode graphique (X11) est
<literal>4</literal> et non <literal>5</literal>.
</para>
<para>
Ceci fait passer la connexion du mode ligne de commande en
mode graphique. Vous pouvez utiliser la commande
<command>telinit</command> pour effectuer un test avant de
modifier cette ligne. Utilisez soit <command>telinit
3</command> pour passer au niveau 3, ou <command>telinit
5</command> pour passer au niveau 5 en mode graphique (vous
pouvez essayer cette commande sur la deuxième machine reliée
par telnet à votre serveur).
</para>
</listitem>
<listitem>
<para>Assurez-vous que les attributs de sécurité du fichier
<filename>/etc/X11/xdm/Xservers</filename> sont
fixés à 444 (chmod 444).</para>
</listitem>
<listitem>
<para>Localisez
<filename>/etc/X11/xdm/Xsetup_0</filename> et
exécutez
<command>chmod 755</command> sur ce fichier.</para>
</listitem>
<listitem>
<para>
Éditez le fichier <filename>XF86Config</filename> (si vous
utilisez Xfree86 4.x, le fichier se nomme
<filename>XF86Config-4</filename>) situé en
<filename>/etc/X11</filename> et modifiez la ligne :
</para>
<screen>
FontPath "unix/:-1"
</screen>
<para>en :</para>
<screen>
FontPath "unix/:7100"
</screen>
<para>
Si vous décidez d'utiliser un port différent du traditionnel
port 7100, assurez-vous de le modifier à la fois dans le
fichier <filename>/etc/rc.d/init.d/xfs</filename> et
ici !
</para>
<para>
Afin de vous économiser du temps et de l'énergie, je vous
recommande d'ajouter le chemin des polices (FontPath) dans les
fichiers de configuration XF86Config et XF86Config-4. Si vous
n'êtes pas certain de la disponibilité des polices, vous
pouvez utiliser cette commande pour le vérifier (avec les
droits de root) :
</para>
<screen>
chkfontpath --list
</screen>
<para>
Les polices suivantes constituent quelques exemples de
référence. Assurez-vous de disposer de ces polices avant
d'éditer ces chemins.
</para>
<screen>
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/"
FontPath "/usr/X11R6/lib/X11/fonts/misc/"
FontPath "/usr/X11R6/lib/X11/fonts/CID/"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo/"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/"
FontPath "/usr/X11R6/lib/X11/fonts/Type1/"
</screen>
</listitem>
<listitem><para>
(Il <emphasis>n'est pas nécessaire</emphasis> d'effectuer
cette modification. Vous pouvez laisser les paramètres par
défaut, cependant je préfère ce réglage. En cas de doute,
laissez-les tels quels). Modifiez cette ligne à la fin du
fichier <filename>/etc/inittab</filename> :
</para>
<screen>
x:5:respawn:/usr/bin/gdm
</screen>
<para>
Si vous décidez de ne pas modifier cette ligne, tant
mieux ! Ce n'est pas une étape nécessaire, mais une
préférence personnelle !
</para></listitem>
</orderedlist></para>
<para>
À présent, vous allez pouvoir effectuer un test.
</para>
<para>
Un autre point à connaître (qui a été demandé par certains), est
la manière d'afficher le message au chargement avec
<command>Willing to manage</command>. D'après ce que je sais,
cette opération est possible dans xdm en ajoutant ce qui suit au
fichier <filename>/etc/X11/xdm/xdm-config</filename>.
</para>
<screen>
DisplayManager.willing: su noboby -c /etc/X11/xdm/Xwilling
</screen>
<para>
Le script Xwilling devant être présent sur votre système.
</para>
<para>
Pour gdm, ajoutez cette ligne au fichier
<filename>/etc/X11/gdm/gdm.conf</filename> dans la section
<filename>[security]</filename> :
</para>
<screen>
Willing=/etc/X11/gdm/Xwilling
</screen>
<para>
Vous trouverez ici un exemple du <ulink
url="http://www.penguinlovers.net/linux/Xwilling">script
Xwilling</ulink> à titre de référence. La décision d'ajouter ou
non
ce script vous appartient. Ce n'est pas une étape nécessaire
ici !
</para>
</sect2>
<sect2 id="testing">
<title>Tests</title>
<para>
Pour tester si votre XDMCP fonctionnant avec le serveur X est prêt
à accepter les connexions, suivez ces étapes. Je trouve qu'il est
plus aisé d'utiliser le serveur X et un autre poste pour effectuer
les tests.
</para>
<orderedlist inheritnum="ignore" continuation="restarts">
<listitem><para>
(Re)lancez X (situé dans le niveau d'exécution n°5). Si vous
ne savez pas trop comment le faire, redémarrez simplement votre
système (ce n'est cependant pas nécessaire si vous savez comment le
redémarrer en ligne de commande. C'est toute la beauté de Linux,
comparée à Windows).
</para></listitem>
<listitem><para>
Si vous n'avez pas procédé à la modification des règles de
votre pare-feu, il vous faut le désactiver temporairement par
le commande <userinput>iptables -F</userinput> (ou
<userinput>ipchains -F</userinput>).
</para></listitem>
<listitem><para>
Vérifiez que l'invite de connexion apparaît. Vérifiez que la
résolution d'affichage et que la souris fonctionnent.
Connectez-vous depuis la console pour voir si l'accès en local est
possible. Si oui, ne vous déconnectez pas.
</para></listitem>
<listitem><para>
Paramétrez Exceed (ou tout autre logiciel de client graphique
(X)) pour soit appeler cette machine (par son adresse IP ou
son nom DSN totalement qualifié), soit pour utiliser le
paramètre de diffusion de XDMCP (XDMCP-Broadcast) et essayez
de vous connecter au serveur X. Vous devriez voir apparaître
l'écran de la session X et l'invite de connexion.
</para></listitem>
</orderedlist>
</sect2>
</sect1>
<sect1 id="ssh">
<title>Transfert X11 à l'aide de SSH</title>
<para>
Comme je l'ai expliqué précédemment, utiliser XDMCP pour afficher
une interface graphique via Internet est fondamentalement un
non-sens, car les données ne sont pas chiffrées lors de leur passage sur
Internet. Une des manières de renforcer la sécurité du transfert est
de recourir à SSH par appel de X11 dans un tunnel sécurisé ou par
transfert de port. SSH (Secure Shell, <quote>interpréteur de
commandes sécurisé</quote> a été développé en 1995 par Tatu Ylonen
pour remplacer les telnet, ftp, scp, rcp, rlogin, rsh, etc, par
nature non sécurisés. La première chose à savoir est que le
transfert X11 avec SSH est différent de votre façon habituelle et
non sécurisée de faire tourner un fenêtrage X.
</para>
<para>
Avant de commencer cette configuration, il vous faut des
informations complémentaires. Premièrement, il faut que le paquetage
SSH soit installé. Dans Linux, il s'agit des paquetages OpenSSH.
Vérifiez dans votre distribution les paquetages à installer
(certaines l'installent par défaut). Deuxièmement, il vous faut un
client SSH Windows (client SSH Windows (des versions pour d'autres
systèmes d'exploitation tels que MAC, sont aussi
disponibles). Je recommande PuTTY. C'est un merveilleux client SSH
libre. Vous pouvez le télécharger de <ulink
url="http://www.chiark.greenend.org.uk/~sgtatham/putty/">ce
lien</ulink>. N'oubliez pas de télécharger la documentation et de la
lire soigneusement. Un autre bon client SSH libre est Tera
Term Pro + TTSSH, qui constitue une extension SSH à Tera Term. Celui-ci
est un client SSH édité par SSH.com (gratuit pour des utilisations
non commerciales). Je vais procéder de nouveau par étapes, de façon
à vous permettre de suivre facilement.
</para>
<orderedlist inheritnum="ignore" continuation="restarts">
<listitem><para>
Ouvrez le programme <command>putty.exe</command> en
double-cliquant dessus. Cela va lancer l'interface.
Premièrement, renseignez les informations de connexion dans le
champ <quote lang="en">Host Name (or IP address)</quote> avec le
nom de l'hôte distant ou son adresse IP et sélectionnez SSH (SSH
utilise le port 22). Dans la fenêtre <quote
lang="en">Category</quote>, trouvez la branche <quote
lang="en">Connection</quote>. Dans SSH, développez-la et vous
verrez la fenêtre <quote lang="en">Tunnels</quote>. Cliquez sur
<quote lang="en">Enable X11 forwarding</quote> (autoriser le
transfert de port). Il configurera l'affichage graphique par
défaut à <literal>localhost:0</literal>. À présent, retournez à
la fenêtre <quote lang="en">Session</quote> et sauvegardez cette
session sous le nom de votre choix. J'utilise normalement le nom
d'hôte pour me rappeler facilement où je désire me connecter.
</para></listitem>
<listitem><para>
Dans l'exemple d'Exceed, voici comment faire. (Pour les autres
clients X, la configuration est analogue). Ouvrez Xconfig de
votre répertoire Exceed. Dans votre écran Screen Definition
(définition de l'écran), passez le <quote lang="en">Window
mode</quote> à <quote lang="en">Multiple</quote> et
sauvegardez-le. Appelez ensuite votre icône <quote
lang="en">Communication</quote> et définissez le mode <quote
lang="en">Startup</quote> à <quote lang="en">Passive</quote>.
</para></listitem>
<listitem><para>
C'est terminé. Afin d'effectuer les tests, nous allons d'abord
utiliser PuTTY (ou un autre client SSH) pour se connecter sur le
serveur. À la première connexion, il vous demandera si vous
désirez conserver la clé de sécurité. (<quote lang="en">Yes</quote>
(oui) est le choix par défaut). Une fois
connecté, lancez Exceed. Il demeurera en tâche de fond. Vous
pouvez à présent exécuter n'importe quelle application X ;
l'application X devrait être transmise à travers SSH à votre
écran local. Par exemple :
</para>
<screen>
$ xclock &
</screen>
<para>
Vous devriez voir Xclock tourner sur votre écran local.
</para></listitem>
</orderedlist>
<para>
Vous constatez à présent la différence : vous ne voyez pas toutes
vos fenêtres graphiques. Vous exécutez simplement vos applications
une par une et elles sont routées via SSH vers votre écran local. Ce
qui fait qu'il vous faut connaître la commande de chaque application
à lancer. Tous les contrôles s'effectuent à l'intérieur de la
fenêtre du client SSH. Pour moi, la sécurité est plus importante que
ce léger inconvénient !
</para>
<para>
Si vous utilisez X-Win32 et que vous désirez mettre en œuvre
<ulink url="http://www.starnet.com/products/ssh.htm">SSH et le
transfert de port</ulink>, vous pouvez avoir recours à cette
référence pour le configurer.
</para>
</sect1>
<sect1 id="ts">
<title>Dépannage</title>
<itemizedlist>
<listitem><para>
Si X ne veut pas démarrer et est cassé :
</para>
<para>
Si X est cassé et que la connexion échoue, dans la plupart
des cas les messages d'erreur suivants s'affichent :
</para>
<screen>
_ FontTransSocketUNIXConnect : Can't connect: errno = 111
failed to set dafault font path 'unix:-1'
Fatal server error:
could not open default font 'fixed'
</screen>
<para>
Il est probable que xfs ne trouve pas le bon port du serveur
de polices ou que le chemin des polices n'est pas configuré
correctement. Pour résoudre le problème, vérifier les étapes 1
et 8 ci-dessus. Vérifiez que la configuration pointe vers le
port 7100 et assurez-vous que les polices suivantes sont
installées (si ce n'est pas le cas, réinstallez les paquetages
des polices de Xfree86 à partir de votre cédérom). Vérifiez la
liste dans le fichier <filename>XF86Config</filename> (si vous
utilisez Xfree86, le fichier est
<filename>XF86Config-4</filename>) situé dans le répertoire
<filename>/etc/X11</filename> :
</para>
<screen>
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/"
FontPath "/usr/X11R6/lib/X11/fonts/misc/"
FontPath "/usr/X11R6/lib/X11/fonts/CID/"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo/"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/"
FontPath "/usr/X11R6/lib/X11/fonts/Type1/"
</screen>
<para>
Saisissez en mode ligne de commande <command>startx</command>
(en local) pour redémarrer le serveur X (ou utilisez la
commande <command>telinit 5</command> pour définir le niveau
d'exécution). Pour redémarrer xfs, utilisez la commande de
l'étape 1.
</para>
<para>
J'ai constaté que dans la RH 7.3 que si mon xfs n'est pas
démarré, la connexion avec Exceed plantera si j'utilise GNOME.
(Avec KDE, le fonctionnement est correct et le GNOME de la
Mandrake n'est pas affecté). Après avoir corrigé et redémarré
xfs, ça marche bien !
</para></listitem>
<listitem><para>
Si Exceed ne répond pas (vous avez un écran blanc) :
</para>
<para>
Dans ce cas, il est très probable que xdm (ou gdm, en fonction
de celui qui est déclaré dans
<filename>/etc/inittab</filename>) ne démarre pas
correctement. Essayez la commande : <command>ps -ef |
grep gdm</command> (ou xdm ou kdm, mettez le bon dans la
commande). De plus, si votre système est configuré pour
utiliser udp avec XDMCP, vous pouvez saisir <command>netstat
-l | grep xdmcp</command>. Vous devriez voir ceci :
</para>
<screen>
udp 0 0 *:xdmcp *:*
</screen>
<para>
Si le processus n'est pas lancé, vérifiez les étapes de la
configuration ci-dessus (assurez-vous qu'il n'y a pas de faute
de frappe et que le chemin déclaré est correct). Redémarrez X
à l'aide de la commande <command>telinit 5</command>. Si XDMCP
n'est pas configuré pour utiliser udp, suivez l'étape 2
ci-dessus.
</para>
<para>
Il est aussi possible que la configuration de votre DNS soit
incorrecte et/ou que votre pare-feu soit actif. Vous pouvez
facilement l'établir en appelant simplement votre hôte par
<command>ping</command> ou <command>telnet</command> ; si
la réponse est longue à arriver, c'est que vous avez un
problème avec votre DNS. Si avec <command>telnet</command>
vous recevez en retour un un message « <computeroutput>Connection
Refused</computeroutput> », alors c'est que le problème vient du
pare-feu (dans la mesure où votre démon telnet est déjà
lancé !) Voyez la section située plus haut pour plus
d'informations sur la manière de résoudre ce problème.
</para></listitem>
<listitem><para>
Ordinateur de type PC Box avec PPPoE (PPP par Ethernet) :
</para>
<para>
Un utilisateur de PPPoE m'a rapporté que si vous utilisez
PPPoE, il se peut que vous rencontriez des difficultés avec
XDMCP. Après l'avoir désinstallé, il devrait être capable de
faire tourner XDMCP. N'ayant pas d'environnement pour
effectuer un test, je vous laisse le soin de le tester
vous-même.
</para></listitem>
<listitem><para>
Exportation d'affichage de Linux à Linux :
</para>
<para>
Si vous utilisez une autre station sous Linux avec X, vous
n'aurez pas besoin d'XDMCP pour gérer votre affichage. En
fait, vous pouvez exporter l'affichage de votre PC. À cet
effet, il vous faut autoriser une autre station à se connecter
au serveur X. Sans cela, les messages d'erreur les plus
fréquents que vous obtiendrez seront :
</para>
<screen>
xlib: Connection refused (error 111): unable to connect to X server
xlib: No such process (error 3): Server error
</screen>
<para>
Pour résoudre le problème, saisissez la commande
ci-dessous :
</para>
<screen>
$ xhost +
$ export DISPLAY=<replaceable>adresse_IP_de_votre_machine</replaceable>:0.0
</screen>
<para>
Souvenez-vous bien qu'il faut autoriser l'accès par la
commande <userinput>xhost -</userinput> une nouvelle
fois. Une chose à retenir est que vous n'en avez pas besoin si
vous utilisez un PC comme terminal X avec XDMCP. Le besoin
existe si vous utilisez une connexion Linux vers Linux ou
Linux vers UNIX.
</para>
<para>
Si vous utilisez un grand nombre de stations Linux sous X et
que vous désirez pouvoir choisir à quel serveur X vous connecter,
il vous faudra décommenter ce qui suit dans le fichier
<filename>/etc/X11/gdm/gdm.conf</filename> :
</para>
<screen>
[daemon]
Chooser=/usr/bin/gdmchooser --disable-sound --disable-crash-dialog
...
[xdmcp]
Enable=1
HonorIndirect=1
</screen>
</listitem>
<listitem><para>
J'ai un message d'erreur
<computeroutput>Signal 11</computeroutput> :
</para>
<para>
Le message d'erreur
<computeroutput>Signal 11</computeroutput>, nommé
également <computeroutput>Segmentation Fault</computeroutput>
(Erreur de segmentation), peut parfois avoir pour cause un
problème matériel ou logiciel. Si vous rencontrez ce problème
en démarrant votre serveur X, il vous faudra régler ce
problème avant de configurer XDMCP. Malheureusement, un tel
problème n'est pas facile à régler, en raison de nombreuses
causes possibles. Pour plus d'informations, rendez-vous sur ce
site (en anglais) consacré à l'erreur 11 lors de la
compilation du noyau <ulink
url="http://www.bitwizard.nl/sig11/">SIG 11 while compiling
the Kernel.</ulink>
</para></listitem>
</itemizedlist>
</sect1>
<sect1 id="gdm">
<title>
XDMCP et GDM (le Gestionnaire d'affichage Gnome)
</title>
<para>
Ce qui suit est tiré du <ulink
url="http://www.jirka.org/gdm-documentation/t1.html">Manuel de
référence du Gestionnaire d'Affichage Gnome</ulink> :
</para>
<para>
GDM est également compatible avec le protocole de gestionnaire
d'affichage X (XDMCP) pour la gestion des affichages distants. GDM
écoute le port UDP 177 et répond aux requêtes QUERY (vers un hôte) et
aux requêtes BROADCAST (appel général au réseau) en envoyant un
paquet WILLING à l'initiateur de la requête. Il est également
possible de configurer GDM pour qu'il honore les requêtes indirectes
et qu'il présente un écran de choix d'hôtes à l'affichage distant.
GDM mémorisera le choix de l'utilisateur et transmettra les requêtes
sous-jacentes au gestionnaire retenu. GDM est uniquement compatible
avec le système d'authentification MIT-MAGIC-COOKIE-1. Les autres
possibilités ont peu de valeur ajoutée, et aucun effort n'a été
consacré à leur mise en œuvre. Dans la mesure où il est très facile
de lancer une attaque en déni de service contre le service XDMCP,
GDM comporte quelques dispositifs pour s'en protéger. Pour plus
d'informations, référez vous à la section de référence de XDMCP
ci-dessous.
</para>
<para>
Même si GDM tente de berner les attaquants potentiels, nous vous
conseillons cependant de faire en sorte que votre pare-feu bloque le
port 177, à moins que vous n'en ayez réellement besoin. GDM protège
des attaques en déni de service ; il n'en demeure pas moins que
le protocole X est encore non sécurisé par nature, et qu'il devrait
être utilisé uniquement dans des environnements protégés. Même si
votre affichage est protégé par un dispositif, les événements de X
et donc les caractères tapés au clavier lorsque vous saisissez votre
mot de passe passeront en clair à travers le réseau. Il est enfantin
de les capturer. Il vous faut aussi savoir que les dispositifs de
sécurité, s'ils sont placés dans un répertoire monté par NFS, sont
susceptible d'être écoutés.
</para>
</sect1>
<sect1 id="refs">
<title>Ressources</title>
<para>
Quelques références complémentaires sur le sujet :
</para>
<itemizedlist>
<listitem><para>
Votre page de manuel locale de xdm.
</para></listitem>
<listitem><para>
Votre page de manuel locale de gdm.
</para></listitem>
<listitem><para>
<ulink
url="http://ftp.traduc.org/doc-vf/gazette-linux/html/1999/lecture/issue-43/lg43-fr-2.html">Configuration
de XDM</ulink>
</para></listitem>
<listitem><para>
<ulink
url="http://www.me.umn.edu/~kaszeta/unix/xterminal/config.html">Configuration
du gestionnaire de ressources X (en anglais)</ulink>
</para></listitem>
<listitem><para>
<ulink
url="http://www.certa.ssi.gouv.fr/site/CERTA-2002-AVI-059/">xdmcp
sur udp</ulink>
</para></listitem>
<listitem><para>
<ulink url="http://nlsn.free.fr/lin-docs/xterminal/diskless-xterminal/node12.html">
Documentation XDMCP pour quasi-terminaux</ulink>
</para></listitem>
<listitem><para>
<ulink
url="http://www-uxsup.csx.cam.ac.uk/security/probing/about/xdmcp.html">Faut-il
mettre en œuvre XDMCP ?</ulink> (en anglais)
</para></listitem>
<listitem><para>
<ulink
url="http://www.linuxgazette.com/issue27/kaszeta.html">Terminaux X
(en anglais)</ulink>
</para></listitem>
<listitem><para>
<ulink url="http://cygwin.com">Accéder à des terminaux X à partir
de Windows : Cygwin (en anglais)</ulink>
</para></listitem>
<listitem><para>
<ulink
url="http://www.linux-france.org/prj/edu/p-mcurie/xterm9x/">Installer
et configurer X-Win32</ulink>
</para></listitem>
<listitem><para>
<ulink
url="http://www.rru.com/~meo/pubsntalks/xrj/xdm.html">Apprivoiser
le gestionnaire d'affichage X (en anglais)</ulink>
</para></listitem>
<listitem><para>
<ulink
url="http://www.ox.compsoc.net/~steve/portforwarding.html">
Pourquoi recourir au transfert de port ? (en
anglais)</ulink> ; <ulink
url="http://www.ssh.com/products/ssh/administrator30/Port_Forwarding.html">
Transfert de port (en anglais)</ulink> ; <ulink
url="http://www.ssh.com/products/ssh/administrator30/X11_Forwarding.html">
SSH : Transfert X11</ulink>
</para></listitem>
<listitem><para>
<ulink url="http://www.5z.com/jirka/gdm.html">Gestionnaire
d'affichage GNOME (en anglais)</ulink>
</para></listitem>
<listitem><para>
<ulink
url="http://www.onlamp.com/pub/a/onlamp/2001/10/19/firewalls.html">
aperçu d'un pare-feu basé sur ip-tables en 10 minutes (en
anglais)</ulink> ; <ulink
url="http://www.onlamp.com/linux/cmd/i/iptables.html">
Initiation aux commandes iptables (en anglais)</ulink>
</para></listitem>
<listitem><para>
<ulink
url="http://www.linuxsecurity.com/resource_files/host_security/securing-debian-howto/ch-sec-services.en.html">
Comment sécuriser les services de votre système (en
anglais)</ulink> (Debian)
</para></listitem>
<listitem><para>
<ulink url="&howto;KDE-GUI-Login-Configuration-HOWTO.html">
Guide pratique de configuration du gestionnaire de connexion
KDM</ulink>
</para></listitem>
</itemizedlist>
</sect1>
<sect1 id="au">
<title>Auteurs</title>
<para>Auteur actuel : Thomas Chao, Lucent Technologies.
<email>tomchao CHEZ lucent POINT com</email></para>
</sect1>
<sect1 id="tr">
<title>Traducteurs</title>
<para>
Traducteur version française : Denis Berhaut.
<email>denis POINT berhaut CHEZ free POINT fr</email>
</para>
<para>
Relecteur version française : Éric Madesclair.
<email>eric TIRET m CHEZ wanadoo POINT fr</email>
</para>
</sect1>
<sect1 id="copyright">
<title>Droits d'utilisation</title>
<para>
La version originale de ce document est copyright © 2000-2003
Thomas Chao et est diffusé selon les termes de la licence du Projet
de documentation Linux (LDP), telle qu'indiquée ci-dessous.
</para>
<para>
L'adaption française de ce document est copyright © 2004-2005
Denis Berhaut, Éric Madesclair et Jean-Philippe Guérard et est
diffusé selon les termes de la licence du Projet de documentation
Linux (LDP), telle qu'indiquée ci-dessous.
</para>
<para>
Sauf mention du contraire, les droits d'auteurs des Guides pratiques
Linux (<foreignphrase lang="en">Linux HOWTO</foreignphrase>)
appartiennent à leurs auteurs respectifs. Les Guides pratiques Linux
peuvent être reproduits et diffusés en totalité ou en partie, sur
n'importe que support, physique ou électronique, tant que cette
mention des droits d'auteur et d'utilisation est conservée sur
toutes les copies. La diffusion à titre commercial est autorisée et
encouragée ; cependant, les auteurs souhaitent être avertis de
toute diffusion de ce type.
</para>
<para>
Toute traduction, œuvre dérivée ou œuvre incorporant un
quelconque Guide pratique Linux doit être réalisé dans le cadre de
cette licence. Autrement dit, vous n'avez pas le droit de produire
une œuvre dérivée de ce Guide pratique en imposant des
restrictions supplémentaires à sa diffusion. Des exceptions à ces
règles peuvent être accordées dans certains cas ; veuillez
contacter (en anglais) le coordinateur des Guides pratiques Linux à
l'adresse indiquée ci-dessous.
</para>
<para>
En résumé, nous souhaitons promouvoir une large diffusion de ces
informations au travers du plus grand nombre de supports possibles.
Cependant, nous souhaitons conserver nos droits d'auteur sur ce
document et nous voudrions être notifié de tout projet de diffusion
de ces guides pratiques.
</para>
<para>Pour toute question, veuillez contacter :
<email>linux TIRET howto AT metalab DOT unc DOT edu</email>
</para>
</sect1>
</article>