diff --git a/fr_FR.ISO8859-1/books/handbook/Makefile b/fr_FR.ISO8859-1/books/handbook/Makefile index 115afdf654..12e9b466bd 100644 --- a/fr_FR.ISO8859-1/books/handbook/Makefile +++ b/fr_FR.ISO8859-1/books/handbook/Makefile @@ -2,7 +2,7 @@ # The FreeBSD French Documentation Project # # $FreeBSD$ -# Original revision: 1.79 +# Original revision: 1.90 # # Build the FreeBSD Handbook. # @@ -26,6 +26,7 @@ # easily be imported into PGP/GPG. # # ------------------------------------------------------------------------ +.PATH: ${.CURDIR}/../../share/sgml/glossary MAINTAINER=blackend@FreeBSD.org @@ -42,6 +43,7 @@ IMAGES = advanced-networking/isdn-bus.eps IMAGES+= advanced-networking/isdn-twisted-pair.eps IMAGES+= advanced-networking/natd.eps IMAGES+= advanced-networking/net-routing.pic +IMAGES_EN+= advanced-networking/static-routes.pic IMAGES_EN+= install/userconfig.scr IMAGES_EN+= install/userconfig2.scr IMAGES_EN+= install/hdwrconf.scr @@ -149,12 +151,15 @@ IMAGES_LIB+= callouts/10.png # SGML content SRCS+= book.sgml +SRCS+= colophon.sgml +SRCS+= freebsd-glossary.sgml SRCS+= advanced-networking/chapter.sgml SRCS+= basics/chapter.sgml SRCS+= bibliography/chapter.sgml -SRCS+= config/chapter.sgml SRCS+= boot/chapter.sgml +SRCS+= config/chapter.sgml SRCS+= cutting-edge/chapter.sgml +SRCS+= desktop/chapter.sgml SRCS+= disks/chapter.sgml SRCS+= eresources/chapter.sgml SRCS+= install/chapter.sgml @@ -162,21 +167,21 @@ SRCS+= introduction/chapter.sgml SRCS+= kernelconfig/chapter.sgml SRCS+= l10n/chapter.sgml SRCS+= linuxemu/chapter.sgml +SRCS+= mac/chapter.sgml SRCS+= mail/chapter.sgml SRCS+= mirrors/chapter.sgml SRCS+= multimedia/chapter.sgml -SRCS+= desktop/chapter.sgml +SRCS+= network-servers/chapter.sgml SRCS+= pgpkeys/chapter.sgml +SRCS+= ports/chapter.sgml SRCS+= ppp-and-slip/chapter.sgml +SRCS+= preface/preface.sgml SRCS+= printing/chapter.sgml SRCS+= security/chapter.sgml SRCS+= serialcomms/chapter.sgml SRCS+= users/chapter.sgml SRCS+= vinum/chapter.sgml SRCS+= x11/chapter.sgml -SRCS+= ports/chapter.sgml -SRCS+= preface/preface.sgml -SRCS+= colophon.sgml # Entities SRCS+= chapters.ent @@ -187,9 +192,7 @@ SYMLINKS= ${DESTDIR} index.html handbook.html CHAPTERS?= ${SRCS:M*chapter.sgml} SGMLFLAGS+= ${CHAPTERS:S/\/chapter.sgml//:S/^/-i chap./} -.if defined(WITH_GLOSSARY) && !empty(WITH_GLOSSARY) SGMLFLAGS+= -i chap.freebsd-glossary -.endif # XXX The Handbook build currently overflows some internal, hardcoded # limits in pdftex. Until we split the Handbook up, build the PDF @@ -204,9 +207,7 @@ book.pdf: book.ps ${PS2PDF} book.ps book.pdf pgpkeyring: pgpkeys/chapter.sgml - @${JADE} -V nochunks ${JADEOPTS} -d ${DSLPGP} -t sgml ${MASTERDOC} - -DOC_PREFIX?= ${.CURDIR}/../../.. + @${JADE} -V nochunks ${OTHERFLAGS} ${JADEOPTS} -d ${DSLPGP} -t sgml ${MASTERDOC} # # Handbook-specific variables @@ -225,6 +226,9 @@ SRCS+= eresources.sgml.www.inc CLEANFILES+= eresources.sgml.www.inc CLEANFILES+= eresources.sgml.www.inc.tmp +URL_RELPREFIX?= ../../../.. +DOC_PREFIX?= ${.CURDIR}/../../.. + .include "${DOC_PREFIX}/share/mk/doc.project.mk" .for p in ftp cvsup diff --git a/fr_FR.ISO8859-1/books/handbook/advanced-networking/chapter.sgml b/fr_FR.ISO8859-1/books/handbook/advanced-networking/chapter.sgml index 36f116afa3..84669fb79c 100644 --- a/fr_FR.ISO8859-1/books/handbook/advanced-networking/chapter.sgml +++ b/fr_FR.ISO8859-1/books/handbook/advanced-networking/chapter.sgml @@ -3,7 +3,7 @@ The FreeBSD French Documentation Project $FreeBSD$ - Original revision: 1.323 + Original revision: 1.335 --> @@ -13,14 +13,8 @@ Synopsis - Ce chapitre abordera certains des services réseaux - les plus fréquemment utilisés sur les - systèmes &unix;. Nous verrons comment définir, - mettre en place, tester et maintenir tous les services - réseaux qu'utilise &os;. De plus, des exemples de - fichier de configuration ont été inclus tout au - long de ce chapitre pour que vous puissiez en - bénéficier. + Ce chapitre abordera certains nombre de sujets réseau + avancés. Après la lecture de ce chapitre, vous connaîtrez: @@ -40,45 +34,16 @@ (“bridge”). - - Comment configurer le système de fichiers - réseau. - - Comment configurer le démarrage via le réseau pour une machine sans disque dur. - - Comment mettre en place un serveur d'information sur le - réseau pour partager les comptes utilisateurs. - - - - Comment configurer le paramétrage réseau - automatique en utilisant DHCP. - - - - Comment configurer un serveur de noms de domaine. - - - - Comment synchroniser l'heure et la date, et mettre en - place en serveur de temps, avec le protocole NTP. - - Comment configurer la translation d'adresse réseau. - - Comment gérer le “daemon” - inetd. - - Comment connecter deux ordinateurs via PLIP. @@ -90,7 +55,6 @@ Comment configurer ATM sous &os; 5.X. - Avant de lire ce chapitre, vous devrez: @@ -105,6 +69,16 @@ Etre familier avec la terminologie réseau de base. + + + Savoir comment configurer et installer un nouveau noyau + &os; (). + + + + Savoir comment installer des logiciels tierce-partie + (). + @@ -2275,668 +2249,6 @@ net.link.ether.bridge.ipfw=1 - - - - - Tom - Rhodes - Réorganisé et augmenté par - - - - - Bill - Swingle - Ecrit par - - - - NFS - - NFS - Parmi les différents systèmes de fichiers que - &os; supporte se trouve le système de fichiers - réseaux, connu sous le nom de NFS. - NFS permet à un système de - partager des répertoires et des fichiers avec d'autres - systèmes par l'intermédiaire d'un réseau. En - utilisant NFS, les utilisateurs et les - programmes peuvent accéder aux fichiers sur des - systèmes distants comme s'ils étaient des fichiers - locaux. - - Certains des avantages les plus remarquables offerts par - NFS sont: - - - - Les stations de travail utilisent moins d'espace disque - en local parce que les données utilisées en - commun peuvent être stockées sur une seule - machine tout en restant accessibles aux autres machines sur le - réseau. - - - - Les utilisateurs n'ont pas besoin d'avoir un - répertoire personnel sur chaque machine du - réseau. Les répertoires personnels pourront se - trouver sur le serveur NFS et seront - disponibles par l'intermédiaire du - réseau. - - - - Les périphériques de stockage comme les - lecteurs de disquettes, de CDROM, de disquettes ZIP peuvent - être utilisés par d'autres machines sur le - réseau. Cela pourra réduire le nombre de - lecteurs de medias amovibles sur le réseau. - - - - - Comment <acronym>NFS</acronym> fonctionne - - NFS consiste en deux - éléments principaux: un serveur et un ou - plusieurs clients. Le client accède à distance - aux données stockées sur la machine serveur. - Afin que tout cela fonctionne correctement quelques processus - doivent être configurés et en - fonctionnement. - - Avec &os; 5.X, l'utilitaire - portmap a été - remplacé par rpcbind. Aussi - sous &os; 5.X l'utilisateur doit remplacer chaque - instance de portmap avec - rpcbind dans les exemples qui - suivent. - - Sur le serveur, les “daemons” suivants - doivent tourner: - - NFS - serveur - - - portmap - - - mountd - - - nfsd - - - - - - - - - - Daemon - Description - - - - - nfsd - Le “daemon” NFS - qui répond aux requêtes des clients - NFS. - - - mountd - Le “daemon” de montage - NFS qui traite les requêtes que - lui passe &man.nfsd.8;. - - - portmap - Le “daemon portmapper” permet aux - clients NFS de trouver le port que - le serveur NFS utilise. - - - - - - Le client peut également faire tourner un - “daemon” connu sous le nom de - nfsiod. Le “daemon” - nfsiod traite les requêtes en - provenance du serveur NFS. Ceci est - optionnel, et améliore les performances, mais n'est pas - indispensable pour une utilisation normale et correcte. - Consultez la page de manuel &man.nfsiod.8; pour plus - d'informations. - - - - Configurer <acronym>NFS</acronym> - - NFS - configuration - - - La configuration de NFS est une - opération relativement directe. Les processus qui - doivent tourner peuvent tous être lancés au - démarrage en modifiant légèrement votre - fichier /etc/rc.conf. - - Sur le serveur NFS, assurez-vous que - les options suivantes sont configurées dans le fichier - /etc/rc.conf: - - portmap_enable="YES" -nfs_server_enable="YES" -mountd_flags="-r" - - mountd est automatiquement - exécuté dès que le serveur - NFS est activé. - - Sur le client, assurez-vous que cette option est - présente dans le fichier - /etc/rc.conf: - - nfs_client_enable="YES" - - Le fichier /etc/exports indique quels - systèmes de fichiers NFS devraient - être exportés (parfois on utilise le terme de - “partagés”). Chaque ligne dans - /etc/exports précise un - système de fichiers à exporter et quelles - machines auront accès à ce système de - fichiers. En plus des machines qui auront accès, des - options d'accès peuvent également être - présentes. Ces options sont nombreuses mais seules - quelques unes seront abordées ici. Vous pouvez - aisément découvrir d'autres options en lisant la - page de manuel &man.exports.5;. - - Voici quelques exemples d'entrées du fichier - /etc/exports: - - - NFS - exemples d'exportation - - - Les exemples suivants donnent une idée de comment - exporter des systèmes de fichiers bien que certains - paramètres peuvent être différents en - fonction de votre environnement et votre configuration - réseau. Par exemple, pour exporter le - répertoire /cdrom - pour les trois machines d'exemple qui appartiennent au - même domaine que le serveur (d'où l'absence du - nom de domaine pour chacune d'entre elles) ou qui ont une - entrée dans votre fichier - /etc/hosts. Le paramètre - limite l'accès en lecture seule au - système de fichiers exporté. Avec ce - paramètre, le système distant ne pourra pas - écrire sur le système de fichiers - exporté. - - /cdrom -ro host1 host2 host3 - - La ligne suivante exporte /home pour les trois machines en - utilisant les adresses IP. C'est une configuration utile si - vous disposez d'un réseau privé sans serveur - DNS configuré. Le fichier - /etc/hosts pourrait éventuellement - être configuré pour les noms de machines - internes, consultez la page de manuel &man.hosts.5; pour plus - d'information. Le paramètre - autorise l'utilisation des sous-répertoires en tant que - point de montage. En d'autres termes, il ne montera pas les - sous-répertoires mais autorisera le client à ne - monter que les répertoires qui sont nécessaires - ou désirés. - - /home -alldirs 10.0.0.2 10.0.0.3 10.0.0.4 - - La ligne suivante exporte /a pour que deux clients d'un - domaine différent puissent y accéder. Le - paramètre autorise - l'utilisateur root du système - distant à écrire des données sur le - système de fichiers exporté en tant que - root. Si le paramètre - -maproot=root n'est pas - précisé, même si un utilisateur dispose - d'un accès root sur le - système distant, il ne pourra pas modifier de fichiers - sur le système de fichiers exporté. - - /a -maproot=root host.example.com box.example.org - - Afin de pouvoir accéder à un système - de fichiers exporté, le client doit avoir les - permissions de le faire. Assurez-vous que le client est - mentionné dans votre fichier - /etc/exports. - - Dans /etc/exports, chaque ligne - représente l'information d'exportation d'un - système de fichiers vers une machine. Une machine - distante ne peut être spécifiée qu'une - fois par système de fichiers, et ne devrait avoir - qu'une seule entrée par défaut. Par exemple, - supposons que /usr soit - un seul système de fichiers. Le fichier - /etc/exports suivant serait - invalide: - - /usr/src client -/usr/ports client - - Un système de fichiers, - /usr, a deux lignes - précisant des exportations vers la même machine, - client. Le format correct pour une telle - situation est: - - /usr/src /usr/ports client - - Les propriétes d'un système de fichiers - exporté vers une machine donnée devraient - apparaître sur une ligne. Les lignes sans client sont - traitées comme destinée à une seule - machine. Cela limite la manière dont vous pouvez - exporter les systèmes de fichiers, mais pour la plupart - des gens cela n'est pas un problème. - - Ce qui suit est un exemple de liste d'exportation valide, - où les répertoires /usr et /exports sont des systèmes - de fichiers locaux: - - # Exporte src et ports vers client01 et client02, mais seul -# client01 dispose des privilèges root dessus -/usr/src /usr/ports -maproot=root client01 -/usr/src /usr/ports client02 -# Les machines clientes ont les privilèges root et peuvent monter tout -# de /exports. N'importe qui peut monter en lecture seule -# /exports/obj -/exports -alldirs -maproot=root client01 client02 -/exports/obj -ro - - Vous devez relancer mountd - à chaque fois que vous modifiez - /etc/exports pour que les changements - puissent prendre effet. Cela peut être effectué - en envoyant le signal HUP au processus - mountd: - - &prompt.root; kill -HUP `cat /var/run/mountd.pid` - - De plus, un redémarrage permettra à &os; de - tout configurer proprement. Un redémarrage n'est - cependant pas nécéssaire. Exécuter les - commandes suivantes en tant que root - devrait mettre en place ce qui est nécessaire. - - Sur le serveur NFS: - - &prompt.root; portmap -&prompt.root; nfsd -u -t -n 4 -&prompt.root; mountd -r - - Sur le client NFS: - - &prompt.root; nfsiod -n 4 - - Maintenant il devrait être possible de monter un - système de fichiers distant. Dans nos exemples le nom - du serveur sera serveur et le nom du client - client. Si vous voulez monter temporairement - un système de fichiers distant ou vous voulez - simplement tester la configuration, exécutez juste une - commande comme celle-ci en tant que root - sur le client: - - NFS - montage - - - &prompt.root; mount serveur:/home /mnt - - Cela montera le répertoire /home situé sur le serveur - au point /mnt sur le - client. Si tout est correctement configuré vous - devriez être en mesure d'entrer dans le - répertoire /mnt - sur le client et de voir tous les fichiers qui sont sur le - serveur. - - Si vous désirez monter automatiquement un - système de fichiers distant à chaque - démarrage de l'ordinateur, ajoutez le système de - fichiers au fichier /etc/fstab. Voici un - exemple: - - server:/home /mnt nfs rw 0 0 - - La page de manuel &man.fstab.5; liste toutes les options - disponibles. - - - - Exemples pratiques d'utilisation - - Il existe de nombreuses applications pratiques de - NFS. Les plus communes sont - présentés ci-dessous: - - - NFS - utilisations - - - - Configurer plusieurs machines pour partager un CDROM - ou un autre médium. C'est moins cher et souvent une - méthode plus pratique pour installer des logiciels - sur de multiples machines. - - - - Sur les réseaux importants, il peut être - plus pratique de configurer un serveur - NFS central sur lequel tous les - répertoires utilisateurs sont stockés. Ces - répertoires utilisateurs peuvent alors être - exportés vers le réseau, les utilisateurs - devraient alors toujours avoir le même - répertoire utilisateur indépendamment de la - station de travail sur laquelle ils ouvrent une - session. - - - - Plusieurs machines pourront avoir un répertoire - /usr/ports/distfiles - commun. De cette manière, quand vous avez besoin - d'installer un logiciel porté sur plusieurs machines, - vous pouvez accéder rapidement aux sources sans les - télécharger sur chaque machine. - - - - - - - - - Wylie - Stilwell - Contribution de - - - - - Chern - Lee - Réécrit par - - - - Montages automatiques avec - <application>amd</application> - - amd - daemon de montage - automatique - - &man.amd.8; (“automatic mounter - daemon”—“daemon” de montage - automatique) monte automatiquement un système de - fichiers distant dès que l'on accède à un - fichier ou un répertoire contenu par ce système - de fichiers. Les systèmes de fichiers qui sont - inactifs pendant une certaine période seront - automatiquement démontés par - amd. L'utilisation - d'amd offre une alternative simple - aux montages permanents qui sont généralement - listés dans /etc/fstab. - - amd opère en s'attachant - comme un serveur NFS aux répertoires /host et /net. Quand on accède - à un fichier à l'intérieur de ces - répertoires, amd recherche - le montage distant correspondant et le monte automatiquement. - /net est utilisé - pour monter un système de fichiers exporté - à partir d'une adresse IP, alors que /host est utilisé pour - monter un système de fichiers exporté à - partir d'un nom de machine distant. - - Un accès à un fichier dans /host/foobar/usr demandera - à amd de tenter de monter - l'export /usr sur la - machine foobar. - - - Monter un systèmes de fichiers exporté - avec <application>amd</application> - - Vous pouvez voir les systèmes de fichiers - exportés par une machine distante avec la commande - showmount. Par exemple, pour voir les - répertoires exportés par une machine - appelée foobar, vous pouvez - utiliser: - - &prompt.user; showmount -e foobar -Exports list on foobar: -/usr 10.10.10.0 -/a 10.10.10.0 -&prompt.user; cd /host/foobar/usr - - - Comme on le voit dans l'exemple, - showmount liste /usr comme une exportation. Quand - on change de répertoire pour - /host/foobar/usr, - amd tente de résoudre le nom - de machine foobar et de monter - automatiquement le système exporté - désiré. - - amd peut être - lancé par les procédures de démarrage en - ajoutant les lignes suivantes dans le fichier - /etc/rc.conf: - - amd_enable="YES" - - De plus, des paramètres peuvent être - passés à amd à - l'aide de l'option amd_flags. Par - défaut, l'option amd_flags est - possitionnée à: - - amd_flags="-a /.amd_mnt -l syslog /host /etc/amd.map /net /etc/amd.map" - - Le fichier /etc/amd.map - définit les options par défaut avec lesquelles - les systèmes exportés sont montés. Le - fichier /etc/amd.map définit - certaines des fonctionnalités les plus avancées - de amd. - - Consultez les pages de manuel de &man.amd.8; et - &man.amd.conf.5; pour plus d'informations. - - - - - - - John - Lind - Contribution de - - - - Problèmes d'intégration avec d'autres - systèmes - - Certaines cartes Ethernet ISA présentent des - limitations qui peuvent poser de sérieux - problèmes sur un réseau, en particulier avec - NFS. Ce n'est pas une particularité de &os;, mais &os; - en est également affecté. - - Ce problème se produit pratiquement à chaque - fois que des systèmes (&os;) PC sont sur le même - réseau que des stations de travail très - performantes, comme celles de Silicon Graphics, Inc. et Sun - Microsystems, Inc. Les montages NFS se feront sans - difficulté, et certaines opérations pourront - réussir, puis soudain le serveur semblera ne plus - répondre au client, bien que les requêtes vers ou - en provenance d'autres systèmes continueront à - être traitées normalement. Cela se manisfeste - sur la machine cliente, que ce soit le système &os; ou - la station de travail. Sur de nombreux systèmes, il - n'est pas possible d'arrêter le client proprement une - fois que ce problème apparaît. La seule solution - est souvent de réinitialiser le client parce que le - problème NFS ne peut être résolu. - - Bien que la solution “correcte” est - d'installer une carte Ethernet plus performante et de plus - grande capacité sur le système &os;, il existe - une solution simple qui donnera satisfaction. Si le - système &os; est le serveur, - ajoutez l'option lors du montage sur - le client. Si le système &os; est le - client, alors montez le système de - fichiers NFS avec l'option . Ces - options peuvent être spécifiées dans le - quatrième champ de l'entrée - fstab sur le client pour les montages - automatiques, ou en utilisant le paramètre - de la commande &man.mount.8; pour les - montages manuels. - - Il faut noter qu'il existe un problème - différent, que l'on confond parfois avec le - précédent, qui peut se produire lorsque les - serveurs et les clients NFS sont sur des réseaux - différents. Si c'est le cas, - assurez-vous que vos routeurs - transmettent bien les informations UDP nécessaires, ou - vous n'irez nulle part, quoi que vous fassiez par - ailleurs. - - Dans les exemples suivants, fastws est le - nom de la station de travail (interface) performante, et - freebox celui d'une machine (interface) &os; - avec une carte Ethernet moins performante. /sharedfs est le système de - fichiers NFS qui sera exporté (consulter la page de - manuel &man.exports.5;), et /project sera le point de montage - sur le client pour le système de fichiers - exporté. Dans tous les cas, des options - supplémentaires, telles que - et seront - peut-être nécessaires pour vos - applications. - - Exemple d'extrait du fichier - /etc/fstab sur freebox - quand le système &os; (freebox) est le - client: - - fastws:/sharedfs /project nfs rw,-r=1024 0 0 - - Commande de montage manuelle sur - freebox: - - &prompt.root; mount -t nfs -o -r=1024 fastws:/sharedfs /project - - Exemple d'extrait du fichier - /etc/fstab sur fastws - quand le système &os; est le serveur: - - freebox:/sharedfs /project nfs rw,-w=1024 0 0 - - Commande de montage manuelle sur - fastws: - - &prompt.root; mount -t nfs -o -w=1024 freebox:/sharedfs /project - - Presque n'importe quelle carte Ethernet 16 bits - permettra d'opérer sans l'utilisation des - paramètres restrictifs précédents sur les - tailles des tampons de lecture et d'écriture. - - Pour ceux que cela intéresse, voici ce qui se passe - quand le problème survient, ce qui explique - également pourquoi ce n'est pas - récupérable. NFS travaille - généralement avec une taille de - “bloc” de 8 k (bien qu'il arrive qu'il les - fragmente en de plus petits morceaux). Comme la taille - maximale d'un paquet Ethernet est de 1500 octets, le - “bloc” NFS est divisé en plusieurs paquets - Ethernet, bien qu'il soit toujours vu comme quelque chose - d'unitaire par les couches supérieures du code, et doit - être réceptionné, assemblé, et - acquitté comme tel. Les stations - de travail performantes peuvent traiter les paquets qui - composent le bloc NFS les uns après les autres, - pratiquement aussi rapidement que le standard le permet. Sur - les cartes les plus petites, de moindre capacité, les - derniers paquets d'un même bloc écrasent les - paquets précédents avant qu'ils aient pû - être transmis à la machine et le bloc ne peut - être réassemblé ou acquitté. Avec - pour conséquence, le dépassement du délai - d'attente sur la station de travail qui recommence alors la - transmission, mais en renvoyant l'intégralité - des 8 K, et ce processus se repète à - l'infini. - - En définissant la taille de bloc inférieure - à la taille d'un paquet Ethernet, nous nous assurons - que chaque paquet Ethernet complet sera acquitté - individuellement, évitant ainsi la situation de - blocage. - - Des écrasements peuvent toujours survenir quand des - stations de travail performantes surchargent un système - PC de données, mais avec de meilleures cartes, de tels - écrasements ne sont pas systématiques pour les - “blocs” NFS. Quand un écrasement - apparaît, les blocs affectés sont retransmis, et - ils y a de fortes chances pour qu'ils soient reçus, - assemblés et acquittés. - - - @@ -3232,11 +2544,7 @@ Exports list on foobar: 3.0 ne fait pas partie du système de base. Vous devrez installer le logiciel porté net/isc-dhcp3-server ou - la version pré-compilée correspondante. - Veuillez vous référer au pour des informations sur les logiciels - portés et les logiciels - pré-compilés. + la version pré-compilée correspondante. Une fois ISC DHCP installé, il nécessite un fichier de @@ -4266,3586 +3574,6 @@ Liaison ISDN BRI - - - - - Bill - Swingle - Ecrit par - - - - - Eric - Ogren - Augmenté par - - - Udo - Erdelhoff - - - - NIS/YP - - - Qu'est-ce que c'est? - NIS - Solaris - HP-UX - AIX - Linux - NetBSD - OpenBSD - NIS, qui signifie “Network Information - Services” (services d'information réseau), fut - développé par Sun Microsystems pour centraliser - l'administration de systèmes &unix; (à l'origine - &sunos;). C'est devenu aujourd'hui un standard industriel; tous - les systèmes importants de type &unix; (&solaris;, HP-UX, - &aix;, Linux, NetBSD, OpenBSD, &os;, etc.) supportent - NIS. - - yellow pagesNIS - NIS était appelé au départ - “Yellow Pages” (page jaunes), mais étant - donné que c'était marque déposée, - Sun changea le nom. L'ancienne appelation (et yp) est toujours - rencontrée et utilisée. - - - NIS - domaines - - C'est un système client/serveur basé sur les - RPCs qui permet à un groupe de machines d'un domaine NIS - de partager un ensemble de fichiers de configuration communs. - Cela permet à un administrateur système de mettre - en place des clients NIS avec un minimum de configuration et - d'ajouter, modifier ou supprimer les informations de - configuration à partir d'un unique emplacement. - - Windows NT - C'est similaire au système de domaine &windowsnt;; - bien que l'implémentation interne des deux n'est pas du - tout identique, les fonctionnalités de base sont - comparables. - - - - Termes/processus à connaître - - Il existe plusieurs termes et processus utilisateurs que - vous rencontrerez lors de la configuration de NIS sous &os;, - que vous vouliez mettre en place un serveur NIS ou un client - NIS: - - - portmap - - - - - - - - - - Terme - Description - - - - - Nom de domaine NIS - Un serveur maître NIS et tous ses clients - (y compris ses serveurs esclaves) ont un domaine NIS. - Similaire au nom de domaine &windowsnt;, le nom de - domaine NIS n'a rien à voir avec le - système DNS. - - - portmap - Doit tourner afin d'activer les RPC (Remote - Procedure Call, appel de procédures distantes, un - protocole réseau utilisé par NIS). Si - portmap ne tourne pas, il - sera impossible de faire fonctionner un serveur NIS, ou - jouer le rôle d'un client NIS. - - - ypbind - Fait pointer un client NIS vers son serveur NIS. - Il récupérera le nom de domaine NIS - auprès du système, et en utilisant les - RPC, se connectera au serveur. - ypbind est le coeur de la - communication client-serveur dans un environnement NIS; - si ypbind meurt sur une - machine cliente, elle ne sera pas en mesure - d'accéder au serveur NIS. - - - ypserv - Ne devrait tourner que sur les serveurs NIS, - c'est le processus serveur en lui-même. Si - &man.ypserv.8; meurt, alors le serveur ne pourra plus - répondre aux requêtes NIS (avec un peu de - chance, un serveur esclave prendra la relève). - Il existe des implémentations de NIS (mais ce - n'est pas le cas de celle de &os;), qui n'essayent pas - de se reconnecter à un autre serveur si le - serveur utilisé précédement meurt. - Souvent, la seule solution dans ce cas est de relancer - le processus serveur (ou même redémarrer le - serveur) ou le processus - ypbind sur le client. - - - rpc.yppasswdd - Un autre processus qui ne devrait tourner que sur - les serveurs maître NIS; c'est un - “daemon” qui permettra aux clients de - modifier leur mot de passe NIS. Si ce - “daemon” ne tourne pas, les utilisateurs - devront ouvrir une session sur le serveur maître - NIS et y changer à cet endroit leur mot de - passe. - - - - - - - - - Comment cela fonctionne-t-il? - - Dans un environnement NIS il y a trois types de machines: - les serveurs maîtres, les serveurs esclaves et les - clients. Les serveurs centralisent les informations de - configuration des machines. Les serveurs maîtres - détiennent l'exemplaire de référence de - ces informations, tandis que les serveurs esclaves en ont un - double pour assurer la redondance. Les clients attendent des - serveurs qu'ils leur fournissent ces informations. - - Le contenu de nombreux fichiers peut être - partagé de cette manière. Les fichiers - master.passwd, - group, et hosts sont - fréquemment partagés par l'intermédiaire - de NIS. A chaque fois qu'un processus d'une machine cliente a - besoin d'une information qu'il trouverait normalement - localement dans un de ces fichiers, il émet une - requête au serveur NIS auquel il est rattaché - pour obtenir cette information. - - - Type de machine - - - - NIS - serveur maître - - - Un serveur NIS maître. - Ce serveur, analogue à un contrôleur de - domaine &windowsnt; primaire, gère les fichiers - utilisés par tous les clients NIS. Les fichiers - passwd, group, - et les autres fichiers utilisés par les clients NIS - résident sur le serveur maître. - - - Il est possible pour une machine d'être - un serveur NIS maître pour plus qu'un domaine NIS. - Cependant, ce cas ne sera pas abordé dans cette - introduction, qui suppose un environnement NIS - relativement petit. - - - - NIS - serveur esclave - - - Serveurs NIS esclaves. - Similaire aux contrôleurs de domaine &windowsnt; de - secours, les serveurs NIS esclaves possèdent une - copie des fichiers du serveur NIS maître. Les - serveurs NIS esclaves fournissent la redondance - nécessaire dans les environnements importants. Ils - aident également à à la - répartition de la charge du serveur maître: - les clients NIS s'attachent toujours au serveur NIS dont - ils reçoivent la réponse en premier, y - compris si c'est la réponse d'un serveur - esclave. - - - NIS - client - - - Clients NIS. - Les clients NIS, comme la plupart des stations de - travail &windowsnt;, s'identifient auprès du - serveur NIS (ou le contrôleur de domaine - &windowsnt; dans le cas de stations de travail - &windowsnt;) pour l'ouverture de sessions. - - - - - - - Utiliser NIS/YP - - Cette section traitera de la configuration d'un - exemple d'environnement NIS. - - Dans cette section on suppose que vous utilisez - &os; 3.3 ou une version suivante. Les instructions - fournies fonctionneront probabablement - avec n'importe quelle version de &os; supérieure - à 3.0, mais il n'y a aucune garantie que cela soit le - cas. - - - Planification - - Supposons que vous êtes l'administrateur d'un - petit laboratoire universitaire. Ce laboratoire dispose de - 15 machines &os;, et ne possède pas actuellement de - point central d'administration; chaque machine a ses propres - fichiers /etc/passwd et - /etc/master.passwd. Ces fichiers sont - maintenus à jour entre eux grâce à des - interventions manuelles; actuellement quand vous ajoutez un - utilisateur pour le laboratoire, vous devez exécuter - adduser sur les 15 machines. Cela doit - changer, vous avez donc décidé de convertir le - laboratoire à l'utilisation de NIS en utilisant deux - machines comme serveurs. - - La configuration du laboratoire ressemble à - quelque chose comme: - - - - - - Nom de machine - Adresse IP - Rôle de la machine - - - - - ellington - 10.0.0.2 - Maître NIS - - - coltrane - 10.0.0.3 - Esclave NIS - - - basie - 10.0.0.4 - Station de travail - - - bird - 10.0.0.5 - Machine cliente - - - cli[1-11] - 10.0.0.[6-17] - Autres machines clientes - - - - - - Si vous mettez en place un système NIS pour la - première fois, c'est une bonne idée de penser - à ce que vous voulez en faire. Peu importe la taille - de votre réseau, il y a quelques décisions - à prendre. - - - Choisir un nom de domaine NIS - - - NIS - nom de domaine - - Ce n'est pas le “nom de domaine” dont vous - avez l'habitude. Il est plus exactement appelé - “nom de domaine NIS”. Quand un client diffuse - des requêtes pour obtenir des informations, il y - inclut le nom de domaine NIS auquel il appartient. C'est - ainsi que plusieurs serveurs d'un même réseau - peuvent savoir lequel d'entre eux doit répondre aux - différentes requêtes. Pensez au nom de domaine - NIS comme le nom d'un groupe de machines qui sont - reliées entre elles. - - Certains choississent d'utiliser leur nom de domaine - Internet pour nom de domaine NIS. Ce n'est pas - conseillé parce que c'est une source de confusion - quand il faut résoudre un problème - réseau. Le nom de domaine NIS devrait être - unique sur votre réseau et est utile s'il - décrit le groupe de machines qu'il - représente. Par exemple, le département - artistique de Acme Inc. pourrait avoir - “acme-art” comme nom de domaine NIS. Pour - notre exemple, nous supposerons que vous avez choisi le - nom test-domain. - - SunOS - Cependant, certains systèmes d'exploitation - (notamment &sunos;) utilisent leur nom de domaine NIS pour - nom de domaine Internet. Si une ou plusieurs machines sur - votre réseau présentent cette restriction, - vous devez utiliser votre nom de - domaine Internet pour nom de domaine NIS. - - - - Contraintes au niveau du serveur - - Il y a plusieurs choses à garder à - l'esprit quand on choisit une machine destinée - à être un serveur NIS. Un des - problèmes du NIS est le degré de - dépendance des clients vis à vis du serveur. - Si un client ne peut contacter le serveur de son domaine - NIS, la plupart du temps la machine n'est plus utilisable. - L'absence d'information sur les utilisateurs et les - groupes bloque la plupart des systèmes. Vous devez - donc vous assurer de choisir une machine qui ne sera pas - redémarrée fréquement, ni - utilisée pour du développement. - Idéalement, le serveur NIS devrait être une - machine dont l'unique utilisation serait d'être un - serveur NIS. Si vous avez un réseau qui n'est pas - très chargé, il peut être - envisagé de mettre le serveur NIS sur une machine - fournissant d'autres services, gardez juste à - l'esprit que si le serveur NIS n'est pas disponible - à un instant donné, cela affectera - tous vos clients NIS. - - - - - Serveurs NIS - - La copie de référence de toutes les - informations NIS est stockée sur une seule machine - appelée serveur NIS maître. Les bases de - données utilisées pour le stockage de ces - informations sont appelées tables NIS (“NIS - maps”). Sous &os; ces tables se trouvent dans - /var/yp/[domainname] où - [domainname] est le nom du domaine NIS - concerné. Un seul serveur NIS peut gérer - plusieurs domaines à la fois, il peut donc y avoir - plusieurs de ces répertoires, un pour chaque domaine. - Chaque domaine aura son propre jeu de tables. - - Les serveurs NIS maîtres et esclaves traitent - toutes les requêtes NIS à l'aide du - “daemon” ypserv. - ypserv reçoit les - requêtes des clients NIS, traduit le nom de domaine et - le nom de table demandés en chemin d'accès - à la base de données correspondante et - transmet l'information de la base de données au - client. - - - Configurer un serveur NIS maître - - NIS - configuration du serveur - - Selon vos besoins, la configuration d'un serveur NIS - maître peut être relativement simple. &os; - offre par défaut un support direct du NIS. Tout ce - dont vous avez besoin est d'ajouter les lignes qui suivent - au fichier /etc/rc.conf, et &os; - s'occupera du reste pour vous. - - - - nisdomainname="test-domain" - Cette ligne définie le nom de domaine NIS, - test-domain, à la - configuration du réseau (e.g. au - démarrage). - - - nis_server_enable="YES" - Demandera à &os; de lancer les processus du - serveur NIS dès que le réseau est en - fonctionnement. - - - nis_yppasswdd_enable="YES" - Ceci activera le “daemon” - rpc.yppasswdd, qui, comme - mentionné précedement, permettra aux - utilisateurs de modifier leur mot de passe à - partir d'une machine cliente. - - - - - Selon votre configuration NIS, vous aurez - peut-être à ajouter des entrées - supplémentaires. Consultez la section sur les - serveurs NIS qui sont également des clients - NIS, plus bas, pour plus de détails. - - - Maintenant, tout ce que vous devez faire est - d'exécuter la commande - /etc/netstart en tant que - super-utilisateur. Elle configurera tout en utilisant les - valeurs que vous avez définies dans - /etc/rc.conf. - - - - Initialisation des tables NIS - - NIS - tables - - Les tables NIS sont des fichiers - de base de données, qui sont conservés dans le - répertoire /var/yp. Elles sont - générées à partir des fichiers - de configuration du répertoire /etc du serveur NIS - maître, avec une exception: le fichier - /etc/master.passwd. Et cela pour une - bonne raison, vous ne voulez pas divulguer les mots de passe - pour l'utilisateur root et autres - comptes d'administration aux autres serveurs du domaine NIS. - Par conséquent, avant d'initialiser les tables NIS, - vous devrez faire: - - &prompt.root; cp /etc/master.passwd /var/yp/master.passwd - &prompt.root; cd /var/yp - &prompt.root; vi master.passwd - - Vous devrez effacer toutes les entrées - concernant les comptes système - (bin, tty, - kmem, games, - etc.), tout comme les comptes que vous ne désirez - pas propager aux clients NIS (par exemple - root et tout autre compte avec un UID - 0 (super-utilisateur)). - - Assurez-vous que le fichier - /var/yp/master.passwd n'est pas - lisible par son groupe ou le reste du monde (mode 600)! - Utilisez la commande chmod si - nécessaire. - - Tru64 UNIX - Cela achevé, il est temps d'initialiser les - tables NIS! &os; dispose d'une procédure - appelée ypinit pour le faire - à votre place (consultez sa page de manuel pour plus - d'informations). Notez que cette procédure est - disponible sur la plupart des systèmes d'exploitation - du type &unix;, mais pas tous. Sur Digital UNIX/Compaq - Tru64 UNIX, elle est appelée - ypsetup. Comme nous voulons - générer les tables pour un maître NIS, - nous passons l'option à - ypinit. Pour générer les - tables NIS, en supposant que vous avez effectué les - étapes précédentes, lancez: - - ellington&prompt.root; ypinit -m test-domain -Server Type: MASTER Domain: test-domain -Creating an YP server will require that you answer a few questions. -Questions will all be asked at the beginning of the procedure. -Do you want this procedure to quit on non-fatal errors? [y/n: n] n -Ok, please remember to go back and redo manually whatever fails. -If you don't, something might not work. -At this point, we have to construct a list of this domains YP servers. -rod.darktech.org is already known as master server. -Please continue to add any slave servers, one per line. When you are -done with the list, type a <control D>. -master server : ellington -next host to add: coltrane -next host to add: ^D -The current list of NIS servers looks like this: -ellington -coltrane -Is this correct? [y/n: y] y - -[..output from map generation..] - -NIS Map update completed. -ellington has been setup as an YP master server without any errors. - - ypinit devrait avoir - créé /var/yp/Makefile - à partir de - /var/yp/Makefile.dist. Une fois - créé, ce fichier suppose que vous être - dans un environnement composé uniquement de - machines &os; et avec un seul serveur. Comme - test-domain dispose également - d'un serveur esclave, vous devez éditer - /var/yp/Makefile: - - ellington&prompt.root; vi /var/yp/Makefile - - Vous devez commenter la ligne - - NOPUSH = "True" - - (si elle n'est pas déjà - commentée). - - - - Configurer un serveur NIS esclave - - NIS - serveur esclave - - Configurer un serveur NIS esclave est encore plus - simple que de configurer un serveur maître. Ouvrez - une session sur le serveur esclave et éditez le - fichier /etc/rc.conf comme - précédemment. La seule différence est - que nous devons maintenant utiliser l'option - avec ypinit. - L'option a besoin du nom du serveur NIS - maître, donc notre ligne de commande ressemblera - à: - - coltrane&prompt.root; ypinit -s ellington test-domain - -Server Type: SLAVE Domain: test-domain Master: ellington - -Creating an YP server will require that you answer a few questions. -Questions will all be asked at the beginning of the procedure. - -Do you want this procedure to quit on non-fatal errors? [y/n: n] n - -Ok, please remember to go back and redo manually whatever fails. -If you don't, something might not work. -There will be no further questions. The remainder of the procedure -should take a few minutes, to copy the databases from ellington. -Transferring netgroup... -ypxfr: Exiting: Map successfully transferred -Transferring netgroup.byuser... -ypxfr: Exiting: Map successfully transferred -Transferring netgroup.byhost... -ypxfr: Exiting: Map successfully transferred -Transferring master.passwd.byuid... -ypxfr: Exiting: Map successfully transferred -Transferring passwd.byuid... -ypxfr: Exiting: Map successfully transferred -Transferring passwd.byname... -ypxfr: Exiting: Map successfully transferred -Transferring group.bygid... -ypxfr: Exiting: Map successfully transferred -Transferring group.byname... -ypxfr: Exiting: Map successfully transferred -Transferring services.byname... -ypxfr: Exiting: Map successfully transferred -Transferring rpc.bynumber... -ypxfr: Exiting: Map successfully transferred -Transferring rpc.byname... -ypxfr: Exiting: Map successfully transferred -Transferring protocols.byname... -ypxfr: Exiting: Map successfully transferred -Transferring master.passwd.byname... -ypxfr: Exiting: Map successfully transferred -Transferring networks.byname... -ypxfr: Exiting: Map successfully transferred -Transferring networks.byaddr... -ypxfr: Exiting: Map successfully transferred -Transferring netid.byname... -ypxfr: Exiting: Map successfully transferred -Transferring hosts.byaddr... -ypxfr: Exiting: Map successfully transferred -Transferring protocols.bynumber... -ypxfr: Exiting: Map successfully transferred -Transferring ypservers... -ypxfr: Exiting: Map successfully transferred -Transferring hosts.byname... -ypxfr: Exiting: Map successfully transferred - -coltrane has been setup as an YP slave server without any errors. -Don't forget to update map ypservers on ellington. - - Vous devriez avoir un répertoire appelé - /var/yp/test-domain. Des copies des - tables du serveur NIS maître devraient se trouver - dans ce répertoire. Vous devrez vous assurer que - ces tables restent à jour. Les entrées - suivantes dans /etc/crontab sur vos - serveurs esclaves s'en chargeront: - - 20 * * * * root /usr/libexec/ypxfr passwd.byname -21 * * * * root /usr/libexec/ypxfr passwd.byuid - - Ces deux lignes obligent le serveur esclave à - synchroniser ses tables avec celles du serveur - maître. Bien que ces entrées ne soient pas - indispensables puisque le serveur maître essaye de - s'assurer que toute modification de ses tables NIS soit - répercutée à ses serveurs esclaves et - comme l'information sur les mots de passe est vitale pour - les systèmes qui dépendent du serveur, il - est bon de forcer les mises à jour. C'est d'autant - plus important sur les réseaux chargés - où il n'est pas certain que les mises à jour - soient intégrales. - - Maintenant, exécutez la commande - /etc/netstart sur le serveur esclave, - ce qui lancera le serveur NIS. - - - - - Clients NIS - - Un client NIS établit une connexion avec un - serveur NIS donné par l'intermédiaire du - “daemon” ypbind. - ypbind consulte le nom de domaine - par défaut du système (défini par la - commande domainname), et commence - à diffuser des requêtes RPC sur le - réseau local. Ces requêtes précisent le - nom de domaine auquel ypbind - essaye de se rattacher. Si un serveur configuré pour - ce domaine reçoit une des requêtes - diffusées, il répond à - ypbind, qui enregistrera - l'adresse du serveur. S'il y a plusieurs serveurs - disponibles (un maître et plusieurs esclaves par - example), ypbind utilisera - l'adresse du premier à répondre. Dès - lors, le système client dirigera toutes ses - requêtes NIS vers ce serveur. - ypbind enverra de temps en temps - des requêtes “ping” au serveur pour - s'assurer qu'il fonctionne toujours. S'il ne reçoit - pas de réponse dans un laps de temps raisonnable, - ypbind considérera ne plus - être attaché au domaine et recommencera - à diffuser des requêtes dans l'espoir de - trouver un autre seveur. - - - Configurer un client NIS - - NIS - configuration du client - - Configurer une machine &os; en client NIS est assez - simple. - - - - Editez le fichier - /etc/rc.conf et ajoutez les lignes - suivantes afin de définir le nom de domaine NIS - et lancez ypbind au - démarrage du réseau: - - nisdomainname="test-domain" -nis_client_enable="YES" - - - - Pour importer tous les mots de passe disponibles - du serveur NIS, effacez tous les comptes utilisateur de - votre fichier /etc/master.passwd et - utilisez vipw pour ajouter la ligne - suivante à la fin du fichier: - - +::::::::: - - - Cette ligne permet à chaque utilisateur - ayant un compte valide dans les tables de mots de - passe du serveur d'avoir un compte sur le client. Il - y a plusieurs façons de configurer votre client - NIS en modifiant cette ligne. Consultez la section - groupes - réseau plus bas pour plus - d'informations. Pour en savoir plus, reportez-vous - à l'ouvrage Managing NFS and - NIS de chez O'Reilly. - - - - Vous devriez conservez au moins un compte local - (i.e. non-importé via NIS) dans votre fichier - /etc/master.passwd et ce compte - devrait également être membre du groupe - wheel. Si quelque chose se - passe mal avec NIS, ce compte peut être - utilisé pour ouvrir une session à - distance, devenir root, et - effectuer les corrections nécessaires. - - - - - Pour importer tous les groupes disponibles du - serveur NIS, ajoutez cette ligne à votre fichier - /etc/group: - - +:*:: - - - - Une fois que c'est fait, vous devriez être en - mesure d'exécuter ypcat passwd - et voir la table des mots de passe du serveur NIS. - - - - - - Sécurité du NIS - - De façon générale, n'importe quel - utilisateur distant peut émettre une requête RPC - à destination de &man.ypserv.8; et - récupérer le contenu de vos tables NIS, en - supposant que l'utilisateur distant connaisse votre nom de - domaine. Pour éviter ces transactions non - autorisées, &man.ypserv.8; dispose d'une - fonctionnalité appelée “securenets” - qui peut être utilisée pour restreindre - l'accès à un ensemble donné de machines. - Au démarrage, &man.ypserv.8; tentera de charger les - informations sur les “securenets” à partir - d'un fichier nommé - /var/yp/securenets. - - - Ce chemin d'accès peut varier en fonction du - chemin d'accès défini par l'option - . Ce fichier contient des entrées - sous la forme de définitions de réseau et d'un - masque de sous-réseau séparé par une - espace. Les lignes commençant par un “#” - sont considérées comme des commentaires. Un - exemple de fichier securenets peut - ressembler à ceci: - - - # autorise les connexions depuis la machine locale -- obligatoire -127.0.0.1 255.255.255.255 -# autorise les connexions de n'importe quelle machine -# du réseau 192.168.128.0 -192.168.128.0 255.255.255.0 -# autorise les connexions de n'importe quelle machine -# entre 10.0.0.0 et 10.0.15.255 -# y compris les machines du laboratoire de test -10.0.0.0 255.255.240.0 - - Si &man.ypserv.8; reçoit une requête d'une - adresse qui satisfait à ces règles, il la traite - normalement. Si une adresse ne correspond pas aux - règles, la requête sera ignorée et un - message d'avertissement sera enregistré. Si le fichier - /var/yp/securenets n'existe pas, - ypserv autorisera les connexions à - partir de n'importe quelle machine. - - Le programme ypserv supporte - également l'outil tcpwrapper - de Wietse Venema. Cela permet à l'administrateur - d'utiliser les fichiers de configuration de - tcpwrapper pour contrôler les - accès à la place de - /var/yp/securenets. - - - Bien que ces deux mécanismes de contrôle - d'accès offrent une certaine sécurité, il - sont, de même que le test du port - privilégié, vulnérables aux attaques par - “usurpation” d'adresses. Tout le trafic relatif - à NIS devrait être bloqué par votre - coupe-feu. - - Les serveurs utilisant - /var/yp/securenets pourront - échouer à traiter les requêtes de - clients NIS légitimes avec des implémentation - TCP/IP archaïques. Certaines de ces - implémentations positionnent à zéro les - bits de la partie machine de l'adresse IP lors de diffusions - et/ou sont incapables respecter le masque de - sous-réseau lors du calcul de l'adresse de diffusion. - Alors que certains de ces problèmes peuvent - être corrigés en modifiant la configuration du - client, d'autres problèmes peuvent forcer le retrait - des systèmes clients fautifs ou l'abandon de - /var/yp/securenets. - - Utiliser /var/yp/securenets sur un - serveur avec une implémentation TCP/IP archaïque - est une mauvaise idée et sera à l'origine de - pertes de la fonctionnalité NIS pour une grande - partie de votre réseau. - - tcpwrapper - L'utilisation du système - tcpwrapper augmente les temps de - latence de votre serveur NIS. Le délai - supplémentaire peut être suffisament long pour - dépasser le délai d'attente des programmes - clients, tout particulièrement sur des réseaux - chargés ou avec des serveurs NIS lents. Si un ou - plusieurs de vos systèmes clients souffrent de ces - symptômes, vous devrez convertir les systèmes - clients en question en serveurs esclaves NIS et les forcer - à se rattacher à eux-mêmes. - - - - - Interdire l'accès à certains - utilisateurs - - Dans notre laboratoire, il y a une machine - basie qui est supposée être une - station de travail de la faculté. Nous ne voulons pas - retirer cette machine du domaine NIS, le fichier - passwd sur le serveur maître NIS - contient les comptes pour la faculté et les - étudiants. Que pouvons-nous faire? - - Il existe une méthode pour interdire à - certains utilisateurs d'ouvrir une session sur une machine, - même s'ils sont présents dans la base de - données NIS. Pour cela, tout ce dont vous avez besoin - de faire est d'ajouter - -nom_utilisateur - à la fin du fichier - /etc/master.passwd sur la machine - cliente, où nom_utilisateur - est le nom de l'utilisateur auquel vous désirez refuser - l'accès. Ceci doit être fait de - préférence avec vipw, puisque - vipw contrôlera vos changements au - fichier /etc/master.passwd, et - regénérera automatiquement la base de - données à la fin de l'édition. Par - exemple, si nous voulions interdire l'ouverture de session - à l'utilisateur bill sur la - machine basie nous ferions: - - basie&prompt.root; vipw -[add -bill to the end, exit] -vipw: rebuilding the database... -vipw: done - -basie&prompt.root; cat /etc/master.passwd - -root:[password]:0:0::0:0:The super-user:/root:/bin/csh -toor:[password]:0:0::0:0:The other super-user:/root:/bin/sh -daemon:*:1:1::0:0:Owner of many system processes:/root:/sbin/nologin -operator:*:2:5::0:0:System &:/:/sbin/nologin -bin:*:3:7::0:0:Binaries Commands and Source,,,:/:/sbin/nologin -tty:*:4:65533::0:0:Tty Sandbox:/:/sbin/nologin -kmem:*:5:65533::0:0:KMem Sandbox:/:/sbin/nologin -games:*:7:13::0:0:Games pseudo-user:/usr/games:/sbin/nologin -news:*:8:8::0:0:News Subsystem:/:/sbin/nologin -man:*:9:9::0:0:Mister Man Pages:/usr/share/man:/sbin/nologin -bind:*:53:53::0:0:Bind Sandbox:/:/sbin/nologin -uucp:*:66:66::0:0:UUCP pseudo-user:/var/spool/uucppublic:/usr/libexec/uucp/uucico -xten:*:67:67::0:0:X-10 daemon:/usr/local/xten:/sbin/nologin -pop:*:68:6::0:0:Post Office Owner:/nonexistent:/sbin/nologin -nobody:*:65534:65534::0:0:Unprivileged user:/nonexistent:/sbin/nologin -+::::::::: --bill - -basie&prompt.root; - - - - - - - Udo - Erdelhoff - Contribution de - - - - - Utiliser les groupes réseau - (“netgroups”) - groupes réseau - - La méthode présentée dans la section - précédente fonctionne relativement bien si vous - avez besoin de règles spécifiques pour un petit - nombre d'utilisateurs et/ou de machines. Sur les - réseaux plus important, vous - oublierez d'interdire l'accès aux - machines sensibles à certains utilisateurs, ou vous - devrez même modifier chaque machine - séparément, perdant par là même les - avantages du NIS: l'administration - centralisée. - - La solution des développeurs du NIS pour ce - problème est appelé groupes - réseau (“netgroups”). Leur - objet et définition peuvent être comparés - aux groupes utilisés par les systèmes &unix;. - La principale différence étant l'absence - d'identifiants (ID) numériques et la capacité de - définir un groupe réseau à l'aide de - comptes utilisateur et d'autres groupes réseau. - - Les groupes réseau furent développés - pour gérer des réseaux importants et complexes - avec des centaines de machines et d'utilisateurs. C'est une - bonne option si vous êtes forcés de faire avec - une telle situation. Cependant leur complexité rend - impossible une explication avec des exemples simples. - L'exemple utilisé dans le reste de cette section met en - évidence ce problème. - - Supposons que l'introduction avec succès de NIS - dans votre laboratoire a retenu l'attention de vos - supérieurs. Votre mission suivante est - d'étendre la couverture de votre domaine NIS à - d'autres machines sur le campus. Les deux tables contiennent - les noms des nouveaux utilisateurs et des nouvelles machines - ainsi qu'une courte description de chacuns. - - - - - - Nom(s) d'utilisateurs - Description - - - - - - alpha, - beta - Les employés du département IT - (“Information Technology“) - - - - charlie, - delta - Les nouveaux apprentis du département - IT - - - - echo, - foxtrott, - golf, ... - Les employés ordinaires - - - - able, - baker, ... - Les internes actuels - - - - - - - - Nom(s) de machines - Description - - - - - - - war, death, - famine, - pollution - Vos serveurs les plus importants. Seuls les - employés du département IT sont - autorisés à ouvrir des sessions sur ces - machines. - - - - pride, greed, - envy, wrath, - lust, sloth - Serveurs moins importants. Tous les membres du - laboratoire IT sont autorisés à ouvrir des - sessions sur ces machines. - - - - one, two, - three, four, - ... - Stations de travail ordinaires. Seuls les - employés réels sont - autorisés à utiliser ces machines. - - - - trashcan - Une très vielle machine sans - données sensibles. Même les internes - peuvent utiliser cette machine. - - - - - - Si vous avez essayé d'implémenter ces - restrictions en bloquant séparément chaque - utilisateur, vous avez dû ajouter une ligne - -utilisateur - à chaque fichier passwd de chaque - système pour chaque utilisateur non-autorisé - à ouvrir une session sur le système. Si vous - ometter ne serait-ce qu'une entrée, vous aurez des - problèmes. Il doit être possible de faire cela - lors de la configuration initiale, cependant vous - finirez par oublier d'ajouter les lignes - pour de nouveaux utilisateurs lors d'opérations - quotidiennes. Après tout, Murphy était - quelqu'un d'optimiste. - - Traiter cette situation avec les groupes réseau - présente plusieurs avantages. Chaque utilisateur n'a - pas besoin d'être traité - séparément; vous assignez un utilisateur - à un ou plusieurs groupes réseau et autorisez ou - refusez l'ouverture de session à tous les membres du - groupe réseau. Si vous ajoutez une nouvelle machine, - vous n'aurez à définir les restrictions - d'ouverture de session que pour les groupes réseau. - Ces modifications sont indépendantes les unes des - autres, plus de “pour chaque combinaison d'utilisateur - et de machine faire...” Si votre configuration NIS est - réfléchie, vous n'aurez à modifier qu'une - configuration centrale pour autoriser ou refuser - l'accès aux machines. - - La première étape est l'initialisation de la - table NIS du groupe réseau. La version &os; - d'&man.ypinit.8; ne crée pas de table par - défaut, mais son implémentation NIS la - supportera une fois créée. Pour créer - une table vide, tapez simplement - - ellington&prompt.root; vi /var/yp/netgroup - - et commencez à ajouter du contenu. Pour notre - exemple, nous avons besoin de quatre groupes réseau: - les employées du département IT, les apprentis - du département IT, les employés normaux et les - internes. - - IT_EMP (,alpha,test-domain) (,beta,test-domain) -IT_APP (,charlie,test-domain) (,delta,test-domain) -USERS (,echo,test-domain) (,foxtrott,test-domain) \ - (,golf,test-domain) -INTERNS (,able,test-domain) (,baker,test-domain) - - IT_EMP, IT_APP etc. - sont les noms des groupes réseau. Chaque groupement - entre parenthèses ajoute un ou plusieurs comptes - utilisateurs aux groupes. Les trois champs dans un groupement - sont: - - - - Le nom de la/les machine(s) où les - éléments suivants sont valides. Si vous ne - précisez pas un nom de machine, l'entrée est - valide sur toutes les machines. Si vous précisez un - nom de machine, vous pénétrerez dans un - royaume obscure, d'horreur et de confusion totale. - - - - Le nom du compte qui appartient au groupe - réseau. - - - - Le domaine NIS pour le compte. Vous pouvez importer - les comptes d'autres domaines NIS dans votre groupe - réseau si vous êtes une de ces personnes - malchanceuses avec plus d'un domaine NIS. - - - - Chacun de ces champs peut contenir des jokers. Consultez - la page de manuel &man.netgroup.5; pour plus de - détails. - - - groupes réseau - Les noms de groupes réseau plus long que 8 - caractères ne devraient pas être utilisés, - tout particulièrement si vous avez des machines - utilisant d'autres systèmes d'exploitation dans votre - domaine NIS. Les noms sont sensibles à la casse des - caractères; utiliser des majuscules pour vos noms de - groupes réseau est une méthode simple pour - distinguer les utilisateurs, les machines et les noms de - groupes réseau. - - Certains clients NIS (autres que &os;) ne peuvent - gérer les groupes réseau avec un grand nombre - d'entrées. Par exemple, certaines anciennes versions - de &sunos; commencent à causer des problèmes - si un groupe réseau contient plus de 15 - entrées. Vous pouvez contourner - cette limite en créant plusieurs sous-groupes - réseau avec 15 utilisateurs ou moins et un - véritable groupe réseau constitué des - sous-groupes réseau: - - BIGGRP1 (,joe1,domain) (,joe2,domain) (,joe3,domain) [...] -BIGGRP2 (,joe16,domain) (,joe17,domain) [...] -BIGGRP3 (,joe31,domain) (,joe32,domain) -BIGGROUP BIGGRP1 BIGGRP2 BIGGRP3 - - Vous pouvez répéter ce processus si vous - avez besoin de plus de 255 utilisateurs dans un seul groupe - réseau. - - - Activer et propager votre nouvelle table NIS est - simple: - - ellington&prompt.root; cd /var/yp -ellington&prompt.root; make - - Ceci générera les trois tables NIS - netgroup, - netgroup.byhost et - netgroup.byuser. Utilisez &man.ypcat.1; - pour contrôler si vos nouvelles tables NIs sont - disponibles: - - ellington&prompt.user; ypcat -k netgroup -ellington&prompt.user; ypcat -k netgroup.byhost -ellington&prompt.user; ypcat -k netgroup.byuser - - La sortie devrait être semblable au contenu de - /var/yp/netgroup. La deuxième - commande ne produira pas de sortie si vous n'avez pas - précisé les groupes réseau - spécifiques à une machine. La troisième - commande peut être utilisée pour obtenir les - listes des groupes réseau pour un utilisateur. - - La configuration du client est plutôt simple. Pour - configurer le serveur war, vous devez lancer - &man.vipw.8; et remplacer la ligne - - +::::::::: - - par - - +@IT_EMP::::::::: - - Maintenant, seules les données pour les - utilisateurs définis dans le groupe réseau - IT_EMP sont importées dans la base - de données de mots de passe de war et - seuls ces utilisateurs sont autorisés à ouvrir - une session. - - Malheureusement, cette limitation s'applique - également à la fonction ~ de - l'interpréteur de commandes et toutes les routines de - conversion entre nom d'utilisateur et identifiant - numérique d'utilisateur. En d'autres termes, - cd ~utilisateur - ne fonctionnera pas, et ls -l affichera - l'ID numérique à la place du nom d'utilisateur - et find . -user joe -print échouera - avec le message d'erreur No such user. - Pour corriger cela, vous devrez importer toutes les - entrées d'utilisateurs sans leur autoriser - l'ouverture de session sur vos serveurs. - - Cela peut être fait en ajoutant une autre ligne au - fichier /etc/master.passwd. Cette ligne - devrait contenir: - - +:::::::::/sbin/nologin, signifiant - “Importer toutes les entrées mais remplacer - l'interpréteur de commandes avec - /sbin/nologin dans les entrées - importées”. Vous pouvez remplacer n'importe quel - champ dans l'entrée passwd en - plaçant une valeur par défaut dans votre fichier - /etc/master.passwd. - - - - Assurez-vous que - +:::::::::/sbin/nologin est placée - après +@IT_EMP:::::::::. Sinon, - tous les comptes utilisateur importés du NIS auront - /sbin/nologin comme interpréteur - de commandes. - - - Après cette modification, vous ne devrez uniquement - que modifier une des tables NIS si un nouvel employé - rejoint le département IT. Vous pourrez utiliser une - approche similaire pour les serveurs moins importants en - remplaçant l'ancienne ligne - +::::::::: dans leur version locale de - /etc/master.passwd avec quelque chose de - semblable à ceci: - - +@IT_EMP::::::::: -+@IT_APP::::::::: -+:::::::::/sbin/nologin - - Les lignes correspondantes pour les stations de travail - normales seraient: - - +@IT_EMP::::::::: -+@USERS::::::::: -+:::::::::/sbin/nologin - - Tout était parfait jusqu'au changement de politique - quelques semaines plus tard: le département IT - commença à engager des internes. Les internes - du département IT sont autorisés à - utiliser les stations de travail normales et les serveurs les - moins importants; les apprentis du département IT sont - autorisés à ouvrir des sessions sur les serveurs - principaux. Vous ajoutez alors un nouveau groupe - réseau IT_INTERN, ajoutez les - nouveaux internes IT à ce groupe réseau et - commencez à modifier la configuration sur chaque - machine... Comme disait l'ancien: “Erreurs dans la - planification centralisée mènent à un - désordre général”. - - La capacité de NIS à créer des - groupes réseau à partir d'autres groupes - réseau peut être utilisée pour - éviter de telles situations. Une possibilité - est la création de groupes réseau basés - sur le rôle du groupe. Par exemple vous pourriez - créer un groupe réseau appelé - BIGSRV pour définir les restrictions - d'ouverture de session pour les serveurs importants, un autre - groupe réseau appelé SMALLSRV - pour les serveurs moins importants et un troisième - groupe réseau nommé USERBOX - pour les stations de travail normales. Chacun de ces groupes - réseau contient les groupes réseau - autorisés à ouvrir des sessions sur ces - machines. Les nouvelles entrées pour la table NIS de - groupes réseau devrait ressembler à ceci: - - BIGSRV IT_EMP IT_APP -SMALLSRV IT_EMP IT_APP ITINTERN -USERBOX IT_EMP ITINTERN USERS - - Cette méthode qui consiste à définir - des restrictions d'ouverture de session fonctionne - relativement bien si vous pouvez définir des groupes de - machines avec des restrictions identiques. Malheureusement, - ceci est une exception et pas une - généralité. La plupart du temps, vous - aurez besoin de définir des restrictions d'ouverture de - session par machine. - - La définition de groupes réseau - spécifiques aux machines est une autre - possibilité pour traiter la modification de politique - soulignée précédement. Dans ce - scénario, le fichier - /etc/master.passwd de chaque machine - contient deux lignes débutant par “+”. La - première ajoute un groupe réseau avec les - comptes autorisés à ouvrir une session sur cette - machine, la seconde ajoute tous les comptes avec - l'interpréteur de commandes - /sbin/nologin. C'est une bonne - idée d'utiliser des majuscules pour le nom de la - machine ainsi que celui du groupe réseau. Dans - d'autres termes, les lignes en question devraient être - semblables à: - - +@NOMMACHINE::::::::: -+:::::::::/sbin/nologin - - Une fois cette tâche achevée pour toutes vos - machines, vous n'aurez plus jamais à modifier les - versions locales du fichier - /etc/master.passwd. Tous les changements - futurs peuvent être gérés en modifiant la - table NIS. Voici un exemple d'une table de groupes - réseau possible pour ce scénario avec quelques - petits plus: - - # Définir tout d'abord les groupes d'utilisateurs -IT_EMP (,alpha,test-domain) (,beta,test-domain) -IT_APP (,charlie,test-domain) (,delta,test-domain) -DEPT1 (,echo,test-domain) (,foxtrott,test-domain) -DEPT2 (,golf,test-domain) (,hotel,test-domain) -DEPT3 (,india,test-domain) (,juliet,test-domain) -ITINTERN (,kilo,test-domain) (,lima,test-domain) -D_INTERNS (,able,test-domain) (,baker,test-domain) -# -# Définir, maintenant, des groupes basés sur les rôles -USERS DEPT1 DEPT2 DEPT3 -BIGSRV IT_EMP IT_APP -SMALLSRV IT_EMP IT_APP ITINTERN -USERBOX IT_EMP ITINTERN USERS -# -# Et un groupe pour les tâches spéciales -# Permettre à echo et golf d'accéder à notre machine anti-virus -SECURITY IT_EMP (,echo,test-domain) (,golf,test-domain) -# -# les groupes réseau basés sur un ensemble de machines -# Nos principaux serveurs -WAR BIGSRV -FAMINE BIGSRV -# L'utilisateur india a besoin d'un accès à ce serveur -POLLUTION BIGSRV (,india,test-domain) -# -# Celle-ci est très importante et nécessite plus de restrictions d'accès -DEATH IT_EMP -# -# La machine anti-virus mentionnée précédemment -ONE SECURITY -# -# Restreindre l'accès à une machine à un seul utilisateur -TWO (,hotel,test-domain) -# [...d'autres groupes suivent] - - Si vous utilisez une sorte de base de données pour - gérer vos comptes utilisateur, vous devriez pouvoir - créer la première partie de la table avec les - outils de votre base de données. De cette - façon, les nouveaux utilisateurs auront automatiquement - accès aux machines. - - Dernier avertissement: il n'est pas toujours - conseillé d'utiliser des groupes réseau - basés sur les machines. Si vous déployez - quelques douzaines ou même centaines de machines - identiques pour des laboratoires pour étudiants, vous - devriez utiliser des groupes basés sur les types - d'utilisateurs plutôt que sur les machines pour - conserver la taille de la table NIS dans des limites - raisonables. - - - - Les choses importantes à ne pas oublier - - Il y a un certain nombre de choses que vous devrez - effectuer différement maintenant que vous êtes - dans un environnement NIS. - - - - A chaque fois que vous désirez ajouter un - utilisateur au laboratoire, vous devez l'ajouter - uniquement sur le serveur NIS et - vous devez ne pas oublier de reconstruire les - tables NIS. Si vous oubliez de le faire, le - nouvel utilisateur ne pourra pas ouvrir de session en dehors - du serveur maître NIS. Par exemple, si nous devons - ajouter au laboratoire un nouvel utilisateur - jsmith, nous ferions: - - &prompt.root; pw useradd jsmith -&prompt.root; cd /var/yp -&prompt.root; make test-domain - - Vous pouvez lancer adduser jsmith - à la place de pw useradd - jsmith. - - - Conservez les comptes d'administration en - dehors des tables NIS. Vous ne voulez pas - propager les comptes et mots de passe d'administration sur - les machines qui auront des utilisateurs qui ne devraient - pas avoir accès à ces comptes. - - - Sécurisez les serveurs maître - et esclave NIS, et reduisez leur temps - d'arrêt. Si quelqu'un tente soit - d'attaquer soit de simplement arrêter ces machines, de - nombreuses personnes ne pourront plus ouvrir de session dans - le laboratoire. - - C'est la principale faiblesse d'un système - d'administration centralisée. Si vous ne - protégez pas vos serveurs NIS, vous aurez à - faire face à de nombreux utilisateurs - mécontents! - - - - - - Compatibilité NIS version 1 - - ypserv sous &os; offre un - support des clients NIS version 1. L'implémentation - NIS de &os; utilise uniquement le protocole NIS version 2, - cependant d'autres implémentations disposent du support - pour le protocole version 1 pour des raisons de - compatibilité avec d'anciens systèmes. Les - “daemons” ypbind - fournis avec ces systèmes tenteront de s'attacher - à un serveur NIS version 1 même s'ils n'en ont - pas besoin (et ils pourront continuer à diffuser des - requêtes pour en trouver un même après - avoir reçu une réponse d'un serveur NIS version - 2). Notez que bien que les requêtes des clients normaux - soient supportées, cette version - d'ypserv ne supporte pas les - requêtes de tranfert de tables version 1; par - conséquent il n'est pas possible de l'utiliser comme - serveur maître ou esclave avec des serveurs NIS plus - anciens qui ne supportent que la version 1 du protocole. - Heureusement, il n'y a, aujourd'hui, presque plus de serveurs - de ce type actifs. - - - - Serveurs NIS qui sont aussi des clients NIS - - Il faut faire attention quand on utilise - ypserv dans un domaine avec - plusieurs serveurs NIS qui sont également des clients - NIS. Il est en général préférable - de forcer les serveurs de se rattacher à - eux-mêmes plutôt que de les laisser diffuser des - requêtes de rattachement et eventuellement se rattacher - réciproquement les uns aux autres. Il peut en - résulter de curieux problèmes si l'un des - serveurs tombe et que d'autres en dépendent. Tous les - clients finiront par dépasser leur délai - d'attente et se tenteront de se rattacher à d'autres - serveurs, mais ce délai peut être - considérable et le problème persistera puisque - les serveurs peuvent à nouveau se rattacher les uns aux - autres. - - Vous pouvez obliger une machine à se rattacher - à un serveur particulier en exécutant - ypbind avec l'option . - Si vous ne désirez pas faire cela à la main - à chaque fois que vous redémarrez votre serveur - NIS, vous pouvez ajouter les lignes quivantes à votre - fichier /etc/rc.conf: - - nis_client_enable="YES" # run client stuff as well -nis_client_flags="-S NIS domain,server" - - Voir la page de manuel de &man.ypbind.8; pour plus - d'informations. - - - - Formats des mots de passe - - NIS - formats des mots de passe - - Un des problèmes les plus courants que l'on - rencontre en mettant en oeuvre NIS est celui de la - compatibilité des formats de mots de passe. Si votre - serveur NIS utilise des mots de passe chiffrés avec - l'algorithme DES, il ne supportera que les clients utilisant - également DES. Par exemple, si vous avez des client NIS - &solaris; sur votre réseau, alors vous aurez presque - certainement besoin d'utiliser des mots de passe chiffrés - avec le système DES. - - Pour déterminer quel format vos serveurs et clients - utilisent, consultez le fichier - /etc/login.conf. Si la machine est - configurée pour utiliser des mots de passe - chiffrés avec DES, alors la classe - default contiendra une entrée comme - celle-ci: - - default:\ - :passwd_format=des:\ - :copyright=/etc/COPYRIGHT:\ - [Entrées suivantes omises] - - D'autres valeurs possibles pour la capacité - passwd_format sont blf - et md5 (respectivement pour les chiffrages - de mots de passe Blowfish et MD5). - - Si vous avez modifié le fichier - /etc/login.conf, vous devrez - également regénérer la base de - données des capacités de classes de session, ce - qui est accompli en exécutant la commande suivante en - tant que root: - - &prompt.root; cap_mkdb /etc/login.conf - - Le format des mots de passe utilisés dans - /etc/master.passwd ne sera pas mis - à jour avant qu'un utilisateur ne change son mot de - passe pour la première fois - après la - regénération de la base de données des - capacités de classes de session. - - Ensuite, afin de s'assurer que les mots de passe sont - chiffrés avec le format que vous avez choisi, vous - devez vérifier que l'entrée - crypt_default dans le fichier - /etc/auth.conf donne la priorité - au format de mots de passe choisi. Par exemple, quand les - mots de passe DES sont utilisés, l'entrée - serait: - - crypt_default = des blf md5 - - En suivant les points précédents sur chaque - serveur et client NIS sous &os;, vous pouvez être - sûr qu'ils seront tous d'accord sur le format de mot de - passe utilisé dans le réseau. Si vous avez des - problèmes d'authentification sur un client NIS, c'est - probablement la première chose à - vérifier. Rappelez-vous: si vous désirez mettre - en place un serveur NIS pour un réseau - hétérogène, vous devrez probablement - utiliser DES sur tous les systèmes car c'est le - standard le plus courant. - - - - - - - - Greg - Sutter - Ecrit par - - - - DHCP - - - Qu'est-ce que DHCP? - - Dynamic Host Configuration Protocol - DHCP - - - Internet Software Consortium (ISC) - - - DHCP, le protocole d'attribution dynamique des adresses - (“Dynamic Host Configuration Protocol”), - décrit les moyens par lesquels un système peut - se connecter à un réseau et obtenir les - informations nécessaires pour dialoguer sur ce - réseau. &os; utilise l'implémentaion DHCP de - l'ISC (Internet Software Consortium), aussi toutes les - informations spécifiques à - l'implémentation, ici, concernent la version - distribuée par l'ISC. - - - - Ce que traite cette section - - Cette section décrit les composants - côté client et côté serveur du - système DHCP ISC. Le programme client, - dhclient, est intégré - à &os;, la partie serveur est disponible à - partir du logiciel porté net/isc-dhcp3-server. Les pages de - manuel &man.dhclient.8;, &man.dhcp-options.5;, et - &man.dhclient.conf.5;, en plus des références - données plus bas, sont des ressources utiles. - - - - Comment cela fonctionne-t-il? - UDP - - Quand dhclient, le client DHCP, est - exécuté sur la machine cliente, il commence - à diffuser des requêtes de demandes d'information - de configuration. Par défaut, ces requêtes sont - effectuées sur le port UDP 68. Le serveur - répond sur le port UDP 67, fournissant au client une - adresse IP et d'autres informations réseau importantes - comme le masque de sous-réseau, les routeurs, et les - serveurs DNS. Toutes ces informations viennent sous la forme - d'un “bail” DHCP qui est uniquement valide pendant - un certain temps (configuré par l'administrateur du - serveur DHCP). De cette façon, les adresses IP - expirées pour les clients qui ne sont plus - connectés peuvent être automatiquement - récupérées. - - Les clients DHCP peuvent obtenir une grande - quantité d'informations à partir du serveur. - Une liste eshaustive est donnée dans la page de manuel - &man.dhcp-options.5;. - - - - Intégration dans &os; - - Le client DHCP ISC, dhclient, est - complètement intégré à &os;. Le - support du client DHCP est fourni avec l'installeur et le - système de base, rendant évident le besoin d'une - connaissance détaillée des configurations - réseaux pour n'importe quel réseau utilisant un - serveur DHCP. dhclient fait partie de - toutes les versions de &os; depuis la version 3.2. - - sysinstall - - - DHCP est supporté par - sysinstall. Quand on configure une - interface réseau sous - sysinstall, la première - question posée est: “Voulez-vous tenter la - configuration DHCP de cette interface?”. - Répondre par l'affirmative à cette question - lancera dhclient, et en cas de - succès, complètera automatiquement les - informations de configuration réseau. - - Vous devez faire deux choses pour que votre système - utilise DHCP au démarrage: - - DHCP - prérequis - - - - - Assurez-vous que le périphérique - bpf est compilé dans votre - noyau. Pour cela, vous devez ajouter la ligne - device bpf (pseudo-device - bpf sous &os; 4.X) à votre fichier - de configuration du noyau, et recompiler le noyau. Pour - plus d'informations sur la compilation de noyaux, - consultez le . - - Le périphérique - bpf est déjà - présent dans le noyau GENERIC - qui est fourni avec &os;, vous ne devez donc pas - créer de noyau spécifique pour faire - fonctionner DHCP. - - - Ceux qui sont particulièrement conscients de - l'aspect sécurité devraient noter que - bpf est également le - périphérique qui permet le fonctionnement de - “renifleurs” de paquets (de tels programmes - doivent être lancés sous l'utilisateur - root). bpf - est nécessaire pour utiliser - DHCP, mais si vous êtes très sensible - à la sécurité, vous ne devriez - probablement pas ajouter bpf - à votre noyau parce que vous projetez d'utiliser - DHCP dans le futur. - - - - Editez votre fichier /etc/rc.conf - pour y ajouter ce qui suit: - - ifconfig_fxp0="DHCP" - - - Assurez-vous de bien remplacer - fxp0 par l'interface que vous voulez - configurer de façon dynamique comme décrit - dans la . - - - Si vous utilisez un emplacement différent pour - dhclient, ou si vous désirez - passer des arguments supplémentaires à - dhclient, ajoutez ce qui suit (en - effectuant des modifications si nécessaire): - - dhcp_program="/sbin/dhclient" -dhcp_flags="" - - - - - DHCP - serveur - - Le serveur DHCP, dhcpd, fait - partie du logiciel porté net/isc-dhcp3-server disponible dans - le catalogue des logiciels portés. Ce logiciel - porté contient le serveur DHCP ISC et sa - documentation. - - - - Fichiers - - DHCP - fichiers de configuration - - - /etc/dhclient.conf - dhclient nécessite un - fichier de configuration, - /etc/dhclient.conf. - Généralement le fichier ne contient que des - commentaires, les valeurs par défaut étant - suffisantes. Ce fichier de configuration est décrit - par la page de manuel &man.dhclient.conf.5;. - - - /sbin/dhclient - dhclient est lié - statiquement et réside dans le répertoire - /sbin. La page de - manuel &man.dhclient.8; donne beaucoup plus d'informations - au sujet de dhclient. - - - /sbin/dhclient-script - dhclient-script est la - procédure de configuration du client DHCP - spécifique à &os;. Elle est décrite - dans la page de manuel &man.dhclient-script.8;, mais ne - devrait pas demander de modification de la part de - l'utilisateur pour fonctionner correctement. - - - /var/db/dhclient.leases - Le client DHCP conserve une base de données des - baux valides, qui est écrite comme un fichier - journal. La page de manuel &man.dhclient.leases.5; en donne - une description légèrement plus longue. - - - - - - Lecture supplémentaire - - Le protocole DHCP est intégralement décrit - dans la RFC - 2131. Des informations sont également - disponibles à l'adresse dhcp.org. - - - - Installer et configurer un serveur DHCP - - - Ce que traite cette section - - Cette section fournit les informations - nécessaires à la configuration d'un - système &os; comme serveur DHCP en utilisant - l'implémentation ISC (Internet Software Consortium) - de l'ensemble DHCP. - - La partie serveur n'est pas fournie dans le - système de base de &os;, et vous devrez installer - le logiciel porté net/isc-dhcp3-server pour - bénéficier de ce service. Lisez le pour plus d'information sur l'utilisation - du catalogue des logiciels portés. - - - - Installation d'un serveur DHCP - - DHCP - installation - - - Afin de configurer votre système &os; en - serveur DHCP, vous devrez vous assurer que le support du - périphérique &man.bpf.4; est compilé - dans votre noyau. Pour cela ajouter la ligne - device bpf (pseudo-device - bpf sous &os; 4.X) dans votre fichier de - configuration du noyau. Pour plus d'information sur la - compilation de noyaux, consultez le . - - Le périphérique - bpf est déjà - présent dans le noyau GENERIC - qui est fourni avec &os;, vous ne devez donc pas - créer de noyau spécifique pour faire - fonctionner DHCP. - - - Ceux qui sont particulièrement conscients de - l'aspect sécurité devraient noter que - bpf est également le - périphérique qui permet le fonctionnement de - “renifleurs” de paquets (de tels programmes - nécessitent également un accès avec - privilèges). bpf - est nécessaire pour utiliser - DHCP, mais si vous êtes très sensible - à la sécurité, vous ne devriez - probablement pas ajouter bpf - à votre noyau parce que vous projetez d'utiliser - DHCP dans le futur. - - - Il vous reste ensuite à éditer le - fichier dhcpd.conf d'exemple qui a - été installé par le logiciel - porté net/isc-dhcp3-server. Par - défaut, cela sera - /usr/local/etc/dhcpd.conf.sample, et - vous devriez le copier vers - /usr/local/etc/dhcpd.conf avant de - commencer vos modifications. - - - - Configuration du serveur DHCP - - DHCP - dhcpd.conf - - - dhcpd.conf est composé de - déclarations concernant les masques de - sous-réseaux et les machines, il est - peut-être plus facile à expliquer à - l'aide d'un exemple: - - option domain-name "example.com"; -option domain-name-servers 192.168.4.100; -option subnet-mask 255.255.255.0; - -default-lease-time 3600; -max-lease-time 86400; -ddns-update-style none; - -subnet 192.168.4.0 netmask 255.255.255.0 { - range 192.168.4.129 192.168.4.254; - option routers 192.168.4.1; -} - -host mailhost { - hardware ethernet 02:03:04:05:06:07; - fixed-address mailhost.example.com; -} - - - - Cette option spécifie le domaine qui sera - donné aux clients comme domaine par - défaut. Consultez la page de manuel de - &man.resolv.conf.5; pour plus d'information sur sa - signification. - - - - Cette option donne une liste, - séparée par des virgules, de serveurs DNS - que le client devrait utiliser. - - - - Le masque de sous-réseau qui sera fourni - aux clients. - - - - Un client peut demander un bail d'une durée - bien précise. Sinon par défaut le serveur - alloue un bail avec cette durée avant expiration - (en secondes). - - - - C'est la durée maximale d'allocation - autorisée par le serveur. Si un client demande - un bail plus long, le bail sera accordé mais il - ne sera valide que durant - max-lease-time secondes. - - - - Cette option indique si le serveur DHCP doit - tenter de mettre à jour le DNS quand un bail - est accepté ou révoqué. Dans - l'implémentation ISC, cette option est - obligatoire. - - - - Ceci indique quelles adresses IP devraient - être utilisées dans l'ensemble des adresses - réservées aux clients. Les adresses - comprises dans l'intervalle spécifiée sont - allouées aux clients. - - - - Définit la passerelle par défaut - fournie aux clients. - - - - L'adresse matérielle MAC d'une machine (de - manière à ce que le serveur DHCP puisse - reconnaître une machine quand elle envoie une - requête). - - - - Indique que la machine devrait se voir attribuer - toujours la même adresse IP. Notez que - l'utilisation d'un nom de machine ici est correct, - puisque le serveur DHCP effectuera une - résolution de nom sur le nom de la machine - avant de renvoyer l'information sur le bail. - - - - Une fois l'écriture de votre fichier - dhcpd.conf terminée, vous - pouvez lancer le serveur en tapant la commande - suivante: - - &prompt.root; /usr/local/etc/rc.d/isc-dhcpd.sh start - - Si vous devez, dans le futur, effectuer des - changements dans la configuration de votre serveur, il est - important de savoir que l'envoi d'un signal - SIGHUP à - dhcpd ne provoque - pas le rechargement de la - configuration, contrairement à la plupart des - “daemons”. Vous devrez envoyer un signal - SIGTERM pour arrêter le - processus, puis le relancer en utilisant la commande - ci-dessus. - - - - Fichiers - - DHCP - fichier de configuration - - - /usr/local/sbin/dhcpd - dhcpd est lié - statiquement et réside dans le répertoire - /usr/local/sbin. - La page de manuel &man.dhcpd.8; installée avec le - logiciel porté donne beaucoup plus d'informations - au sujet de dhcpd. - - - /usr/local/etc/dhcpd.conf - dhcpd nécessite - un fichier de configuration, - /usr/local/etc/dhcpd.conf avant de - pouvoir commencer à offrir ses services aux - client. Ce fichier doit contenir toutes les - informations à fournir aux clients qui seront - traités, en plus des informations concernant le - fonctionnement du serveur. Ce fichier de configuration - est décrit par la page de manuel - &man.dhcpd.conf.5; installée par le logiciel - porté. - - - /var/db/dhcpd.leases - - Le serveur DHCP conserve une base de - données des baux qu'il a délivré, - qui est écrite comme un fichier journal. La page - de manuel &man.dhcpd.leases.5; installée par le - logiciel porté en donne une description - légèrement plus longue. - - - /usr/local/sbin/dhcrelay - dhcrelay est - utilisé dans les environements avancés - où un serveur DHCP fait suivre la requête - d'un client vers un autre serveur DHCP sur un - réseau séparé. Si vous avez besoin - de cette fonctionnalité, installez alors le - logiciel porté net/isc-dhcp3-server. La page - de manuel &man.dhcrelay.8; fournie avec le logiciel - porté contient plus de détails. - - - - - - - - - - - Chern - Lee - Contribution de - - - - DNS - - - Généralités - BIND - - &os; utilise, par défaut, BIND (Berkeley Internet - Name Domain), qui est l'implémentation la plus courante - du protocole DNS. Le DNS est le protocole qui effectue la - correspondance entre noms et adresses IP, et inversement. Par - exemple une requête pour www.FreeBSD.org aura pour réponse - l'adresse IP du serveur Web du projet &os;, et une - requête pour ftp.FreeBSD.org renverra l'adresse IP de - la machine FTP correspondante. De même, l'opposé - est possible. Une requête pour une adresse IP retourne - son nom de machine. Il n'est pas nécessaire de faire - tourner un serveur DNS pour effectuer des requêtes DNS - sur un système. - - DNS - Le DNS est coordonné sur l'Internet à - travers un système complexe de serveurs de noms racines - faisant autorité, et d'autres serveurs de noms de plus - petites tailles qui hébergent, directement ou font office - de “cache”, l'information pour des domaines - individuels. - - Ce document fait référence à BIND - 8.x, comme c'est la version stable utilsée dand &os;. - BIND 9.x peut être installée à l'aide du - logiciel porté net/bind9. - - Les RFC1034 et RFC1035 régissent le protocole - DNS. - - Actuellement, BIND est maintenu par l'Internet Software Consortium - (www.isc.org). - - - - Terminologie - - Pour comprendre ce document, certains termes relatifs - au DNS doivent être maîtrisés. - - - - - - - - - Terme - Definition - - - - - - “Forward“ DNS - Correspondance noms de machine vers adresses - IP. - - - - Origine - Fait référence au domaine couvert - par un fichier de zone particulier. - - - - named, BIND, serveur - de noms - Noms courants pour le serveur de noms BIND de - &os; - - - resolveur - - Resolveur - Un processus système par - l'intermédiaire duquel une machine contacte un - serveur de noms pour obtenir des informations sur une - zone. - - - DNS inverse - - DNS inverse - C'est l'inverse du DNS “classique” - (“Forward“ DNS). C'est la correspondance - adresses IP vers noms de machine. - - - zone racine - - Zone racine - - Début de la hiérarchie de la zone - Internet. Toutes les zones sont rattachées - à la zone racine, de la même - manière qu'un système de fichier est - rattaché au répertoire racine. - - - - Zone - Un domaine individuel, un sous-domaine, ou une - partie des noms administrés par un même - serveur faisant autorité. - - - - - - - zones - exemples - - - Exemples de zones: - - - - . est la zone racine - - - org. est une zone sous la - zone racine - - - example.org est une - zone sous la zone org. - - - foo.example.org. - est un sous-domaine, une zone sous la zone example.org. - - - - 1.2.3.in-addr.arpa est une zone faisant - référence à toutes les adresses IP - qui appartiennent l'espace d'adresse 3.2.1.*. - - - - Comme on peut le remarquer, la partie la plus - significative d'un nom de machine est à sa gauche. Par - exemple, example.org. est - plus spécifique que org., comme - org. est à son tour plus - spécifique que la zone racine. La constitution de - chaque partie d'un nom de machine est proche de celle d'un - système de fichiers: le répertoire /dev se trouve sous la racine, et - ainsi de suite. - - - - Les raisons de faire tourner un serveur de noms - - Les serveurs de noms se présentent - généralement sous deux formes: un serveur de - noms faisant autorité, et un serveur de noms - cache. - - Un serveur de noms faisant autorité est - nécessaire quand: - - - - on désire fournir des informations DNS au reste - du monde, être le serveur faisant autorité lors - des réponses aux requêtes. - - - un domaine, comme par exemple - example.org, est - enregistré et des adresses IP doivent être - assignées à des noms de machine appartenant - à ce domaine. - - - un bloc d'adresses IP nécessite des - entrées DNS inverses (IP vers nom de machine). - - - un serveur de noms de secours, appelé esclave, - doit répondre aux requêtes quand le serveur - primaire est tombé ou inaccessible. - - - - Un serveur de noms cache est nécessaire - quand: - - - - un serveur de noms local peut faire office de cache - et répondre plus rapidement que l'interrogation - d'un serveur de noms extérieur. - - - une réduction du trafic réseau global - est désirée (il a été - mesuré que 5% ou plus du trafic Internet total - concerne le trafic DNS). - - - - Quand on émet des requêtes pour www.FreeBSD.org, le résolveur - interroge généralement le serveur de noms du - fournisseur d'accès, et récupère la - réponse. Avec un serveur DNS cache local, la - requête doit être effectuée qu'une seule - fois vers le monde extérieur par le serveur DNS cache. - Chaque interrogation suivante n'aura pas à être - transmise en dehors du réseau local, puisque - l'information est désormais disponible localement dans - le cache. - - - - Comment cela fonctionne-t-il? - - Sous &os; le “daemon” BIND est appelé - named pour des raisons - évidentes. - - - - - - Fichier - Description - - - - - - named - le “daemon” BIND - - - - ndc - le programme de contrôle du - “daemon” - - - - /etc/namedb - répertoire où se trouvent les - informations sur les zones de BIND - - - - /etc/namedb/named.conf - le fichier de configuration du - “daemon” - - - - - - Les fichiers de zone sont généralement - stockés dans le répertoire /etc/namedb, et contiennent les - informations concernant les zones DNS gérées par - le serveur de noms. - - - - Lancer BIND - - - BIND - lancement - - Puisque BIND est installé par défaut, sa - configuration est relativement simple. - - Pour s'assurer que le “daemon” - named est lancé au - démarrage, ajoutez la ligne suivante dans - /etc/rc.conf: - - named_enable="YES" - - Pour démarrer le “daemon” manuellement - (après l'avoir configuré): - - &prompt.root; ndc start - - - - Fichiers de configuration - - - BIND - fichiers de configuration - - - Utilisation de - <command>make-localhost</command> - - Assurez-vous d'effectuer: - - &prompt.root; cd /etc/namedb -&prompt.root; sh make-localhost - - pour générer correctement le fichier de - zone DNS inverse - /etc/namedb/localhost.rev. - - - - <filename>/etc/namedb/named.conf</filename> - - // $FreeBSD$ -// -// Reportez-vous à la page de manuel named(8) pour plus de -// détails. Si vous devez configurer un serveur primaire -// assurez-vous d'avoir compris les détails épineux du -// fonctionnement du DNS. Même avec de simples erreurs, vous -// pouvez rompre la connexion entre les parties affectées, ou -// causer un important trafic Internet inutile. - -options { - directory "/etc/namedb"; - -// En plus de la clause "forwarders", vous pouvez forcer votre serveur -// de noms à ne jamais être à l'origine de -// requêtes, mais plutôt faire suivre les demandes en -// activant la ligne suivante: -// -// forward only; - -// Si vous avez accès à un serveur de noms au niveau de -// votre fournisseur d'accès, ajoutez ici son adresse IP, et -// activez la ligne ci-dessous. Cela vous permettra de -// bénéficier de son cache, réduisant ainsi le -// trafic Internet. -/* - forwarders { - 127.0.0.1; - }; -*/ - - Comme les commentaires le précisent, pour - bénéficier d'un cache en amont de votre - connexion, le paramètre forwarders - peut être activé. Dans des circonstances - normales, un serveur de noms interrogera de façon - récursive certains serveurs de noms jusqu'à - obtenir la réponse à sa requête. Avec - ce paramètre activé, votre serveur interrogera - le serveur de noms en amont (ou le serveur de noms fourni) - en premier, en bénéficiant alors de son cache. - Si le serveur en question gère beaucoup de trafic, et - est un serveur rapide, activer cette option peut en valoir - la peine. - - 127.0.0.1 - ne fonctionnera pas ici. Remplacez - cette adresse IP par un serveur de noms en amont de votre - connexion. - - - /* - * S'il y a un coupe-feu entre vous et les serveurs de noms - * avec lesquels vous voulez communiquer, vous aurez - * peut-être besoin de décommenter la directive - * query-source ci-dessous. Les versions - * précédentes de BIND lançaient des - * requêtes à partir du port 53, mais depuis la - * version 8.1, BIND utilise - * par défaut un port quelconque non - * réservé. - */ - // query-source address * port 53; - - /* - * Si exécution dans un "sandbox", vous pourrez avoir - * à indiquer un emplacement différent pour le - * fichier de sortie de la base de données. - */ - // dump-file "s/named_dump.db"; -}; - -// Note: ce qui suit sera supporté dans une future version. -/* -host { any; } { - topology { - 127.0.0.0/8; - }; -}; -*/ - -// Configurer des serveurs secondaires est plus simple et le principe -// général est présenté plus bas. -// -// Si vous activez un serveur de noms local, n'oubliez pas d'entrer -// 127.0.0.1 dans votre fichier /etc/resolv.conf de sorte que ce -// serveur soit interrogé le premier. Assurez-vous -// également de l'activer dans /etc/rc.conf. - -zone "." { - type hint; - file "named.root"; -}; - -zone "0.0.127.IN-ADDR.ARPA" { - type master; - file "localhost.rev"; -}; - -zone -"0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.INT" { - type master; - file "localhost.rev"; -}; - -// NB: N'utilisez pas les adresses IP ci-dessous, elles sont factices, -// et ne servent que pour des besoins de -// démonstration/documentation! -// -// Exemple d'entrées de configuration de serveur secondaire. -// Il peut être pratique de devenir serveur secondaire pour la -// zone à laquelle appartient votre domaine. Demandez à -// votre administrateur réseau l'adresse IP du serveur primaire -// responsable de la zone. -// -// N'oubliez jamais d'inclure la résolution de la zone inverse -// (IN-ADDR.ARPA)! -// (Ce sont les premiers octets de l'adresse IP, en ordre inverse, -// auxquels ont a ajouté ".IN-ADDR.ARPA".) -// -// Avant de commencer à configurer une zone primaire, il faut -// être sûr que vous avez parfaitement compris comment le -// DNS et BIND fonctionnent. Il apparait parfois des pièges -// peu évidents à saisir. En comparaison, configurer un -// serveur secondaire est plus simple. -// -// NB: N'activez pas aveuglément les exemples ci-dessous. :-) -// Utilisez des noms et des adresses réelles. -// -// NOTE!!! &os; exécute BIND dans un "sandbox" (voir l'option -// named_flags dans rc.conf). Le répertoire contenant les -// zones secondaires doit être accessible à BIND en -// écriture. La séquence suivante est -// suggérée: -// -// mkdir /etc/namedb/s -// chown bind:bind /etc/namedb/s -// chmod 750 /etc/namedb/s - - Pour plus d'informations sur l'exécution de BIND - dans un “sandbox” (bac à sable), - consultez la section Exécution de named - dans un sandbox. - - - /* -zone "example.com" { - type slave; - file "s/example.com.bak"; - masters { - 192.168.1.1; - }; -}; - -zone "0.168.192.in-addr.arpa" { - type slave; - file "s/0.168.192.in-addr.arpa.bak"; - masters { - 192.168.1.1; - }; -}; -*/ - - Dans named.conf, ce sont des - exemples d'entrées d'un serveur esclave. - - Pour chaque nouvelle zone gérée, une - nouvelle entrée de zone doit être - ajoutée au fichier - named.conf. - - Par exemple, l'entrée de zone la plus simple - possible pour example.org - serait: - - zone "example.org" { - type master; - file "example.org"; -}; - - Ce sera un serveur maître pour la zone, comme - indiqué par l'option , - concervant ses informations de zone dans le fichier - /etc/namedb/example.org comme - précisé par l'option - . - - zone "example.org" { - type slave; - file "example.org"; -}; - - Dans le cas d'un esclave, les informations concernant la - zone seront transférées à partir du - serveur maître pour la zone en question, et - sauvegardées dans le fichier indiqué. Si ou - lorsque le serveur maître tombe ou est inaccessible, - le serveur esclave disposera des informations de la zone - transférée et sera capable de les - diffuser. - - - - Fichiers de zone - - Un exemple de fichier de zone maître pour example.org (défini dans - /etc/namedb/example.org) suit: - - $TTL 3600 - -example.org. IN SOA ns1.example.org. admin.example.org. ( - 5 ; Serial - 10800 ; Refresh - 3600 ; Retry - 604800 ; Expire - 86400 ) ; Minimum TTL - -; Serveurs DNS -@ IN NS ns1.example.org. -@ IN NS ns2.example.org. - -; Noms de machine -localhost IN A 127.0.0.1 -ns1 IN A 3.2.1.2 -ns2 IN A 3.2.1.3 -mail IN A 3.2.1.10 -@ IN A 3.2.1.30 - -; Alias -www IN CNAME @ - -; Enregistrement MX -@ IN MX 10 mail.example.org. - - Notez que chaque nom de machine se terminant par un - “.” est un nom de machine complet, alors que - tout ce qui se termine pas par un “.” est - référencé par rapport à une - origine. Par exemple, www sera traduit - en - www.origine. - Dans notre fichier de zone fictif, notre origine est - example.org., donc www - sera traduit en www.example.org. - - Le format d'un fichier de zone est le suivant: - - nom-enregistrement IN type-enregistrement valeur - - - DNS - enregistrements - - Les enregistrements DNS les plus couramment - utilisés: - - - - SOA - - - début des données de - zone - - - - NS - - - serveur de noms faisant - autorité - - - - A - - adresse d'une machine - - - - CNAME - - alias d'un nom de machine - - - - MX - - - serveur de messagerie recevant le courrier - pour le domaine - - - - PTR - - - un pointeur sur un nom de domaine - (utilisé dans le DNS inverse) - - - - -example.org. IN SOA ns1.example.org. admin.example.org. ( - 5 ; Serial - 10800 ; Refresh after 3 hours - 3600 ; Retry after 1 hour - 604800 ; Expire after 1 week - 86400 ) ; Minimum TTL of 1 day - - - - - - example.org. - - - le nom de domaine, également l'origine pour - ce fichier de zone. - - - - ns1.example.org. - - - le serveur de noms primaire/faisant autorité - pour cette zone. - - - - admin.example.org. - - - la personne responsable pour cette zone avec - le caractère “@” remplacé. - (admin@example.org devient - admin.example.org) - - - - - 5 - - - le numéro de série de ce fichier. - Celui-ci doit être incrémenté - à chaque modification du fichier de zone. De nos - jours, de nombreux administrateurs - préfèrent un format du type - aaaammjjrr pour le numéro de - série. 2001041002 - signifierait dernière modification le 10/04/2001, - le 02 indiquant que c'est la seconde - fois que ce fichier a été - révisé ce jour. Le numéro de - série est important puisqu'il indique aux - serveurs de noms esclaves pour la zone une modification - de celle-ci. - - - - - -@ IN NS ns1.example.org. - - C'est une entrée de type NS. Tous les serveurs - de noms qui doivent faire autorité pour la zone - devront inclure une de ces entrées. Le - caractère @ aurait pu être - remplacé par example.org.. Le - caractère @ étant - équivalent à l'origine. - - -localhost IN A 127.0.0.1 -ns1 IN A 3.2.1.2 -ns2 IN A 3.2.1.3 -mail IN A 3.2.1.10 -@ IN A 3.2.1.30 - - Un enregistrement de type A indique des noms de machine. - Comme présenté ci-dessus ns1.example.org sera résolu en - 3.2.1.2. Ici encore, le - symbôle d'origine, @, signifie que - example.org donnera pour résolution - d'adresse l'adresse 3.2.1.30. - - -www IN CNAME @ - - L'enregistrement de type CNAME est - généralement utilisé pour créer - des alias à une machine. Dans l'exemple, - www est un alias de la machine - correspondant à l'origine, ou encore example.org (3.2.1.30). Les enregistrements CNAME - peuvent être utilisés pour fournir des alias - à des noms de machines, ou permettre la rotation - (“round robin”) d'un nom de machine entre - plusieurs machines. - - - MX record - - - -@ IN MX 10 mail.example.org. - - L'enregistrement MX indique quels serveurs de messagerie - sont responsables de la gestion du courrier entrant pour la - zone. mail.example.org est le - nom de machine du serveur de messagerie, et 10 étant - la priorité du serveur de messagerie. - - On peut avoir plusieurs serveurs de messagerie, avec des - priorités de 3, 2, 1. Un serveur de messagerie - tentant de transmettre du courrier au domaine example.org essaiera en premier - le MX avec la plus haute priorité, puis celui venant - en second, etc, jusqu'à ce que le courrier puisse - être correctement délivré. - - Pour les fichiers de zone in-addr.arpa (DNS inverse), le - même format est utilisé, à l'exception - du fait que des entrées PTR seront utilisées - en place de A ou CNAME. - - $TTL 3600 - -1.2.3.in-addr.arpa. IN SOA ns1.example.org. admin.example.org. ( - 5 ; Serial - 10800 ; Refresh - 3600 ; Retry - 604800 ; Expire - 3600 ) ; Minimum - -@ IN NS ns1.example.org. -@ IN NS ns2.example.org. - -2 IN PTR ns1.example.org. -3 IN PTR ns2.example.org. -10 IN PTR mail.example.org. -30 IN PTR example.org. - - Ce fichier donne la correspondance entre adresses IP et - noms de machines de notre domaine fictif. - - - - - Serveur de noms cache - - BIND - serveur de noms cache - - Un serveur de noms cache est un serveur de noms qui ne - fait autorité pour aucune zone. Il émet - simplement des requêtes, et se souvient du résultat - pour une utilisation ultérieure. Pour mettre en place un - tel serveur, configurez le serveur de noms comme à - l'accoutumé, en prenant bien soin de n'inclure aucune - zone. - - - - Exécution <application>named</application> dans un - “sandbox” - - BIND - exécution dans un sandbox - - - - chroot - - Pour plus de sécurité, il peut être - préférable d'exécuter &man.named.8; sous un - utilisateur sans privilèges, et le configurer pour - modifier l'emplacement de la racine du système de - fichiers (&man.chroot.8;) vers le répertoire du - “sandbox” (bac à sable). Ceci rend - inaccessible au “daemon” - named tout ce qui est situé en - dehors de l'environnement “sandbox”. Si - named est compromis, cela - réduira l'impact des dommages. Par défaut, &os; - dispose d'un utilisateur et d'un groupe appelé - bind, destiné à cet - usage. - - - De nombreuses personnes recommanderont qu'à la - place de configurer named à - “chrooter”, vous devriez exécuter - named dans un environnement - &man.jail.8;. Cette section ne traitera pas ce cas de - figure. - - - Puisque named ne sera pas en - mesure d'avoir accès à des - éléments extérieur au - “sandbox” (comme aux bibliothèques - partagées, aux “sockets” pour - l'enregistrements des journaux, etc.), il y a un certain - nombre d'étapes à suivre afin de permettre - à named un fonctionnement - correct. Dans la liste d'opérations qui suit, on - suppose que l'emplacement du “sandbox” est - /etc/namedb et que vous - n'avez pas précédemment modifié le - contenu de ce répertoire. Effectuez les étapes - suivantes en tant que root: - - - - Créer tous les répertoires que - named s'attend à - trouver: - - &prompt.root; cd /etc/namedb -&prompt.root; mkdir -p bin dev etc var/tmp var/run master slave -&prompt.root; chown bind:bind slave var/* - - - - named n'a besoin - uniquement que d'un accès en écriture - à ces répertoires, c'est tout ce que nous - lui donnerons. - - - - - - Réarranger les fichiers de configuration et - créer la zone: - - &prompt.root; cp /etc/localtime etc -&prompt.root; mv named.conf etc && ln -sf etc/named.conf -&prompt.root; mv named.root master - -&prompt.root; sh make-localhost && mv localhost.rev localhost-v6.rev master -&prompt.root; cat > master/named.localhost -$ORIGIN localhost. -$TTL 6h -@ IN SOA localhost. postmaster.localhost. ( - 1 ; serial - 3600 ; refresh - 1800 ; retry - 604800 ; expiration - 3600 ) ; minimum - IN NS localhost. - IN A 127.0.0.1 -^D - - - - Ceci permet à named - d'utiliser des dates correctes lors de l'envoie des - journaux à &man.syslogd.8;. - - - - - - Si vous utilisez une version de &os; antérieure - à 4.9-RELEASE, compilez une version liée en - statique de named-xfer, et - copiez-la dans le “sandbox”: - - &prompt.root; cd /usr/src/lib/libisc -&prompt.root; make cleandir && make cleandir && make depend && make all -&prompt.root; cd /usr/src/lib/libbind -&prompt.root; make cleandir && make cleandir && make depend && make all -&prompt.root; cd /usr/src/libexec/named-xfer -&prompt.root; make cleandir && make cleandir && make depend && make NOSHARED=yes all -&prompt.root; cp named-xfer /etc/namedb/bin && chmod 555 /etc/namedb/bin/named-xfer - - Après avoir installé votre version - statique de named-xfer, un peu de - nettoyage est nécessaire pour éviter de - conserver des copies inutiles de bibliotèques ou de - programmes dans votre arborescence des sources: - - &prompt.root; cd /usr/src/lib/libisc -&prompt.root; make cleandir -&prompt.root; cd /usr/src/lib/libbind -&prompt.root; make cleandir -&prompt.root; cd /usr/src/libexec/named-xfer -&prompt.root; make cleandir - - - - Il a été signalé que cette - étape peut parfois échouer. Si cela vous - arrive, tapez alors la commande: - - &prompt.root; cd /usr/src && make cleandir && make cleandir - - et effacez votre arborescence - /usr/obj: - - &prompt.root; rm -fr /usr/obj && mkdir /usr/obj - - Cela devrait supprimer les éventuels - “scories” de votre arborescence des - sources, puis en réessayant les - opérations ci-dessus cela devrait enfin - fonctionner. - - - - Si vous utilisez &os; 4.9-RELEASE ou une version - suivante, alors la version de - named-xfer se trouvant dans le - répertoire /usr/libexec est liée - en statique par défaut, et vous pouvez tout - simplement utiliser la commande &man.cp.1; pour la copier - dans l'environnement “sandbox”. - - - - Créer un fichier spécial de - périphérique dev/null - dans lequel named peut lire et - écrire: - - &prompt.root; cd /etc/namedb/dev && mknod null c 2 2 -&prompt.root; chmod 666 null - - - - Créer un lien symbolique de - /var/run/ndc vers - /etc/namedb/var/run/ndc: - - &prompt.root; ln -sf /etc/namedb/var/run/ndc /var/run/ndc - - - Ceci évite tout simplement d'avoir à - spécifier l'option à - &man.ndc.8; à chaque fois que vous - l'exécutez. Comme le contenu du répertoire - /var/run est - effacé au démarrage, si vous trouvez cela - utile vous pouvez vouloir ajouter cette commande dans le - fichier crontab de l'utilisateur - root, en utilisant l'option - . Consultez la page de manuel - &man.crontab.5; pour plus d'informations à ce - sujet. - - - - - Configurer &man.syslogd.8; pour qu'il - créé une “socket” - supplémentaire log sur - laquelle named dispose d'un - accès en écriture. Pour cela, ajoutez - -l /etc/namedb/dev/log à la - variable syslogd_flags du fichier - /etc/rc.conf. - - - - S'arranger à ce que - named démarre et se - “chroot” lui-même dans - l'environnement “sandbox” en ajoutant ce qui - suit au fichier /etc/rc.conf: - - named_enable="YES" -named_flags="-u bind -g bind -t /etc/namedb /etc/named.conf" - - - Notez que l'emplacement du fichier de configuration - /etc/named.conf est - référencé par rapport un chemin - complet relatif au - “sandbox”, i.e. dans la ligne - au-dessus, le fichier auquel on fait - référence est en fait - /etc/namedb/etc/named.conf. - - - - - L'étape suivante est d'éditer le fichier - /etc/namedb/etc/named.conf pour que - named puisse savoir quelles zones - charger et où les trouver sur le disque. Un exemple - commenté suit (tout ce qui n'est pas - spécifiquement commenté ici n'est pas - différent de la configuration d'un serveur DNS ne - tournant pas dans un “sandbox”): - - options { - directory "/"; - named-xfer "/bin/named-xfer"; - version ""; // Ne pas révéler la version de BIND - query-source address * port 53; -}; -// socket de contrôle ndc -controls { - unix "/var/run/ndc" perm 0600 owner 0 group 0; -}; -// Les zones: -zone "localhost" IN { - type master; - file "master/named.localhost"; - allow-transfer { localhost; }; - notify no; -}; -zone "0.0.127.in-addr.arpa" IN { - type master; - file "master/localhost.rev"; - allow-transfer { localhost; }; - notify no; -}; -zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.int" { - type master; - file "master/localhost-v6.rev"; - allow-transfer { localhost; }; - notify no; -}; -zone "." IN { - type hint; - file "master/named.root"; -}; -zone "private.example.net" in { - type master; - file "master/private.example.net.db"; - allow-transfer { 192.168.10.0/24; }; -}; -zone "10.168.192.in-addr.arpa" in { - type slave; - masters { 192.168.10.2; }; - file "slave/192.168.10.db"; -}; - - - - L'option directory est - définie par /, - puisque tous les fichiers dont - named a besoin sont dans ce - répertoire (ceci est équivalent au fichier - /etc/namedb d'un utilisateur - “normal”). - - - - Indique le chemin d'accès complet du binaire - named-xfer (à partir de - l'arborescence utilisée pour - named). Ceci est - nécessaire puisque named - est compilé pour chercher - named-xfer par défaut dans le - répertoire /usr/libexec. - - - Indique le nom de fichier (relatif à la valeur - de directory plus haut) où - named le fichier de zone pour - cette zone. - - - Indique le nom de fichier (relatif à la valeur - de directory plus haut) où - named devrait trouver une copie - du fichier de zone pour cette zone après l'avoir - transféré avec succès à partir - du serveur maître. C'est pourquoi nous avons eu - besoin de changer le propriétaire du - répertoire slave pour - bind dans les étapes de - configuration précédentes. - - - - Après avoir complétées les - étapes précédentes, redémarrez - votre serveur ou relancez &man.syslogd.8; et démarrez - &man.named.8;, en s'assurant de bien utiliser les nouvelles - options spécifiées dans les variables - syslogd_flags et - named_flags. Vous devriez disposez - maintenant d'une version de named - tournant dans un environnement “sandbox”! - - - - Sécurité - - Bien que BIND soit l'implémentation la plus - courante du DNS, le problème de la - sécurité subsiste toujours. De possibles - problèmes de sécurité exploitables sont - parfois découvert. - - C'est une bonne idée de lire les avis de - sécurité du CERT et de s'inscrire - à la &a.security-notifications; pour se maintenir au - courant des problèmes de sécurité actuels - de l'Internet et de &os;. - - - Si un problème surgit, conserver les sources - à jour et disposer d'une version compilée de - named récente ne seront pas - de trop. - - - - - Lectures supplémentaires - - Les pages de manuel de - BIND/named: &man.ndc.8; - &man.named.8; &man.named.conf.5;. - - - - Page - officielle ISC concernant BIND - - - - FAQ - BIND - - - - DNS - et BIND 4ème Edition de chez O'Reilly - - - - RFC1034 - - Domain Names - Concepts and Facilities - - - - RFC1035 - - Domain Names - Implementation and - Specification - - - - - - - - - - Tom - Hukins - Contribution de - - - - NTP - - NTP - - - Généralités - - Avec le temps, l'horloge d'un ordinateur tend à - dériver. Comme le temps passe, l'horloge de - l'ordinateur devient moins précise. Le protocole NTP - (“Network Time Protocol”) est une des - manières pour s'assurer que votre horloge est - correcte. - - De nombreux services Internet ont besoin, ou tirent - partie, de la précision des horloges des ordinateurs. - Par exemple, un serveur Web, peut recevoir des requêtes - pour n'envoyer un fichier que s'il a été - modifié depuis un certain temps. Des services comme - &man.cron.8; exécutent des commandes à des - moments précis. Si l'horloge n'est pas précise, - ces commandes peuvent de pas fonctionner au moment - désiré. - - - NTP - ntpd - - &os; est fourni avec le serveur NTP &man.ntpd.8; qui peut - être utilisé pour contacter d'autres serveurs NTP - pour régler l'horloge de votre machine ou pour jouer le - rôle de serveur de temps pour d'autres. - - - - Choisir les serveurs NTP appropriés - - - NTP - choisir les serveurs - - - Afin de synchroniser votre horloge, vous devrez trouver un - ou plusieurs serveurs NTP. Votre administrateur réseau - ou votre FAI peuvent avoir mis en place un serveur NTP dans - cet objectif—consultez leur documentation pour voir si - c'est le cas. Il existe une liste - de serveurs NTP accessibles par le publique que vous - pouvez utiliser pour trouver un serveur NTP proche de vous. - Assurez-vous d'avoir pris connaissance de la politique - d'utilisation des serveurs que vous choisissez, et demandez la - permission si nécessaire. - - Choisir plusieurs serveurs NTP non-connectés entre - eux est une bonne idée au cas où un des serveurs - que vous utilisez devient inaccessible ou que son horloge - n'est plus fiable. &man.ntpd.8; utilise intelligemment les - réponses qu'il reçoit d'autres serveurs—il - favorisera les plus fiables par rapport aux moins - fiables. - - - - Configuration de votre machine - - - NTP - configuration - - - - Configuration de base - ntpdate - - Si vous désirez synchroniser votre horloge - uniquement lors du démarrage de la machine, vous - pouvez alors employer &man.ntpdate.8;. Cela peut être - approprié pour certaines machines de bureau qui sont - fréquemment rédémarrées et qui - ne nécessites qu'une synchronisation - épisodique, cependant la plupart des machines - devraient utiliser &man.ntpd.8;. - - Utiliser &man.ntpdate.8; au moment du démarrage - est également une bonne idée pour les machines - qui exécutent &man.ntpd.8;. Le programme - &man.ntpd.8; modifie l'horloge graduellement, alors que - &man.ntpdate.8; change directement l'horloge, peu importe la - différence entre l'heure actuelle de la machine et - l'heure correcte. - - Pour activer &man.ntpdate.8; au démarrage, - ajoutez la ligne ntpdate_enable="YES" au - fichier /etc/rc.conf. Vous devrez - également préciser tous les serveurs avec - lesquels vous désirez vous synchroniser et tous les - indicateurs devant être passés à - &man.ntpdate.8; avec - ntpdate_flags. - - - - - NTP - ntp.conf - - - Configuration générale - - NTP est configuré par l'intermédiaire du - fichier /etc/ntp.conf suivant le format - décrit dans la page de manuel &man.ntp.conf.5;. - Voici un exemple simple: - - server ntplocal.example.com prefer -server timeserver.example.org -server ntp2a.example.net - -driftfile /var/db/ntp.drift - - L'option server précise quels - serveurs doivent être utilisés, avec un serveur - listé par ligne. Si un serveur est - spécifié avec l'argument - prefer, comme c'est le cas pour ntplocal.example.com, ce serveur est - préféré par rapport aux autres - serveurs. Une réponse en provenance d'un serveur - préféré sera - ignorée si elle diffère de façon - significative des réponses des autres serveurs, sinon - elle sera utilisée sans considérer les autres - réponses. L'argument prefer est - normalement employé pour les serveurs NTP qui sont - connus pour leur grande précision, comme ceux avec - des systèmes spéciaux de contrôle du - matériel. - - L'option driftfile précise - quel fichier est utilisé pour stocker le - décalage de fréquence de l'horloge. Le - programmme &man.ntpd.8; l'utilise pour compenser - automatiquement la dérive naturelle de l'horloge, - permettant de maintenir un réglage raisonnablement - correct même s'il est coupé d'autres sources - extérieures de temps pendant une certaine - période. - - L'option driftfile précise - également quel fichier est utilisé pour - stocker l'information concernant les réponses - précédentes des serveurs NTP que vous - utilisez. Il ne devrait pas être modifié par - un autre processus. - - - - Contrôler l'accès à votre - serveur - - Par défaut, votre serveur NTP sera accessible par - toutes les machines sur l'Internet. L'option - restrict du fichier - /etc/ntp.conf vous permet de - contrôler quelles machines peuvent accéder - à votre serveur. - - Si vous voulez refuser à tout le monde - l'accès à votre serveur NTP, ajoutez la ligne - suivante au fichier - /etc/ntp.conf: - - restrict default ignore - - Si vous désirez autoriser uniquement - l'accès aux machines de votre réseau pour - qu'elles puissent synchroniser leur horloge, tout en vous - assurant qu'elles ne peuvent configurer le serveur ou - être utilisées comme point de de - synchronisation, ajoutez: - - restrict 192.168.1.0 mask 255.255.255.0 notrust nomodify notrap - - à la place, où 192.168.1.0 est une adresse IP de - votre réseau et 255.255.255.0 est votre masque de - sous-réseau. - - Le fichier /etc/ntp.conf peut - contenir plusieurs options restrict. - Pour plus de détails, lisez la section - Access Control Support de la page de - manuel &man.ntp.conf.5;. - - - - - Exécuter le serveur NTP - - Pour s'assurer que le serveur NTP est lancé au - démarrage, ajoutez la ligne - xntpd_enable="YES" dans le fichier - /etc/rc.conf. Si vous désirez - passer des indicateurs supplémentaires à - &man.ntpd.8;, éditez les paramètres de l'option - xntpd_flags dans - /etc/rc.conf. - - Pour lancer le serveur sans redémarrer votre - machine, exécutez ntpd en - étant sûr de préciser tout - paramètre supplémentaire de - xntpd_flags dans - /etc/rc.conf. Par exemple: - - &prompt.root; ntpd -p /var/run/ntpd.pid - - - Sous &os; 5.X, diverses options du fichier - /etc/rc.conf ont été - renommées. Ainsi, vous devez remplacer chaque - xntpd par ntpd dans les - options ci-dessus. - - - - Utiliser ntpd avec une connexion Internet - temporaire - - Le programme &man.ntpd.8; n'a pas besoin d'une connexion - permanente à l'Internet pour fonctionner correctement. - Cependant, si vous disposez d'une connextion temporaire qui - est configurée de telle sorte qu'il y ait - établissement de la connexion à la demande, - c'est une bonne idée d'empêcher le trafic NTP de - déclencher la numérotation ou de maintenir - constamment établie la connexion. Si vous utilisez PPP - en mode utilisateur, vous pouvez employer les directives - filter dans le fichier - /etc/ppp/ppp.conf. Par exemple: - - set filter dial 0 deny udp src eq 123 - # Empêche le trafic NTP de lancer une connexion - set filter dial 1 permit 0 0 - set filter alive 0 deny udp src eq 123 - # Empêche le trafic NTP entrant de garder la connexion établie - set filter alive 1 deny udp dst eq 123 - # Empêche le trafic NTP sortant de garder la connexion établie - set filter alive 2 permit 0/0 0/0 - - Pour plus de détails lisez la section - PACKET FILTERING de la page de manuel - &man.ppp.8; et les exemples du répertoire /usr/share/examples/ppp/. - - - Certains fournisseurs d'accès Internet bloquent - les ports dont le numéro est faible, empêchant - NTP de fonctionner puisque les réponses n'atteingnent - jamais votre machine. - - - - - Information supplémentaire - - La documentation pour le serveur NTP peut être - trouvé dans le répertoire /usr/share/doc/ntp/ sous le format - HTML. - - - @@ -8188,524 +3916,6 @@ redirect_port tcp 192.168.0.3:80 80 - - - - - Chern - Lee - Contribution de - - - - - Le “super-serveur” - <application>inetd</application> - - - Généralités - - On fait souvent référence à - &man.inetd.8; comme étant le “super-serveur - Internet” parce qu'il gére les connexions pour - plusieurs “daemons”. Les programmes assurant des - services réseau sont généralement connus - sous le nom de “daemon”. - inetd joue le rôle de serveur - de régulateur pour les autres “daemon”s. - Quand une connexion est reçue par - inetd, ce dernier détermine - à quel “daemon” la connexion est - destinée, invoque le “daemon” en question - et lui délègue la “socket”. - Exécuter une instance - d'inetd réduit la charge - système globale par rapport à l'exécution - de chaque “daemon” individuellement en mode - autonome. - - inetd est utilisé pour - invoquer d'autres “daemon”s, mais plusieurs - protocoles triviaux sont gérés directement, - comme chargen, - auth, et - daytime. - - Cette section abordera la configuration de base - d'inetd à travers ses - options en ligne de commande et son fichier de configuration - /etc/inetd.conf. - - - - Configuration - - inetd est initialisé par - l'intermédiaire du système - /etc/rc.conf. L'option - inetd_enable est positionnée - à la valeur NO par défaut, - mais est activée par - sysinstall avec le profil de - sécurité modéré. Placer - inetd_enable="YES" ou - inetd_enable="NO" dans - /etc/rc.conf peut activer ou - désactiver le démarrage - d'inetd à la mise en route - du système. - - De plus, différentes options de ligne de commande - peuvent être passées à - inetd par l'intermédiaire de - l'option inetd_flags. - - - - Options en ligne de commande - - Synopsis d'inetd: - - - - - - -d - - - Active le débogage. - - - - - -l - - - Active le journal des connexions - réussies. - - - - - -w - - - Active le “TCP Wrapping” pour les - services externes (actif par défaut). - - - - - -W - - - Active le “TCP Wrapping” pour les - services internes qui font partie - d'inetd (actif par - défaut). - - - - - -c maximum - - - Spécifie le nombre maximal par défaut - d'invocations simultanées pour chaque service; il - n'y a pas de limite par défaut. Cette option peut - être surchargée pour chaque service à - l'aide du paramètre - . - - - - - -C taux - - - Précise le nombre maximal de fois qu'un - service peut être invoqué à partir - d'une unique adresse IP et cela sur une minute. Ce - paramètre peut être configuré - différemment pour chaque service avec le - paramètre - . - - - - - -R taux - - - Précise le nombre maximal de fois qu'un - service peut être invoqué par minute; la - valeur par défaut est 256. Un taux de 0 autorise - un nombre illimité d'invocations. - - - - - -a - - - Indique l'adresse IP sur laquelle le trafic sera - attendu. Alternativement, un nom de machine peut - être utilisé, dans ce cas l'adresse IPv4 ou - IPv6 correspondant à la machine sera - utilisée. Généralement, un nom de - machine est précisé quand - inetd est exécuté - à l'intérieur d'un environnement - &man.jail.8;, dans quel cas le nom de machine correspond - à l'environnement &man.jail.8;. - - Quand un nom de machine est utilisé et que - l'on doit être à l'écoute sur une - adresse IPv4 et IPv6, une entrée avec le - protocole adapté pour chaque type d'adresse est - nécessaire pour chaque service dans - /etc/inetd.conf. Par exemple, un - service de type TCP nécessitera deux - entrées, une utilisant tcp4 - pour le protocole et une autre utilisant - tcp6. - - - - - -p - - - Spécifie un fichier différent dans - lequel stocker l'indentifiant du processus. - - - - - Ces options peuvent être passées à - inetd en utilisant l'option - inetd_flags de - /etc/rc.conf. Par défaut, - inetd_flags est positionné à - -wW, ce qui active le “TCP - wrapping” pour les services internes et externes - d'inetd. Pour un utilisateur de - base ces paramètres ne doivent - généralement pas être modifiés ou - même ajoutés au fichier - /etc/rc.conf. - - - Un service externe est un “daemon” - indépendant d'inetd, qui est - invoqué quand une connexion lui étant - destinée est reçue. D'autre part, un service - interne est un service qu'inetd - peut offrir directement. - - - - - - <filename>inetd.conf</filename> - - La configuration d'inetd se - fait par l'intermédiaire du fichier - /etc/inetd.conf. - - Quand le fichier /etc/inetd.conf est - modifié, inetd peut - être forcé de relire son fichier de configuration - en envoyant un signal “HangUP” au processus - inetd comme suit: - - - Envoyer un signal “HangUP” à - <application>inetd</application> - - &prompt.root; kill -HUP `cat /var/run/inetd.pid` - - - Chaque ligne du fichier de configuration ne mentionne - qu'un seul “daemon”. Les commentaires dans le - fichier sont précédés par un - “#”. Le format du fichier - /etc/inetd.conf est le suivant: - - nom-du-service -type-de-socket -protocole -{wait|nowait}[/nb-max-enfants[/nb-connexions-max-par-minute]] -utilisateur[:groupe][/classe-session] -programme-serveur -arguments-du-programme-serveur - - Un exemple d'entrée pour le “daemon” - ftpd utilisant l'IPv4: - - ftp stream tcp nowait root /usr/libexec/ftpd ftpd -l - - - - nom-du-service - - - C'est le nom de service du “daemon” en - question. Il doit correspondre à un des services - listés dans le fichier - /etc/services. Cela détermine - quel port inetd doit - écouter. Si un nouveau service est - créé, il doit être ajouté en - premier lieu dans - /etc/services. - - - - - type-de-socket - - - Soit stream, soit - dgram, soit raw, ou - seqpacket. stream - doit être utilisé pour les - “daemon”s TCP, alors que - dgram est utilisé pour les - “daemon”s utilisant le protocole UDP. - - - - - protocole - - - Un des suivants: - - - - - - Protocole - Explication - - - - - tcp, tcp4 - TCP IPv4 - - - udp, udp4 - UDP IPv4 - - - tcp6 - TCP IPv6 - - - udp6 - UDP IPv6 - - - tcp46 - TCP IPv4 et v6 - - - udp46 - UDP IPv4 et v6 - - - - - - - - - {wait|nowait}[/nb-max-enfants[/nb-max-connexions-par-ip-par-minute]] - - - indique si le - “daemon” invoqué par - inetd est capable ou non de - gérer sa propre “socket”. Les - “socket”s de type - doivent utiliser l'option , alors - que les “daemons à socket stream”, - qui sont généralement - multi-threadés, devraient utiliser - . L'option - a généralement pour conséquence de - fournir plusieurs “socket”s à un - “daemon”, tandis que l'option - invoquera un - “daemon” enfant pour chaque nouvelle - “socket”. - - Le nombre maximal de “daemon”s - qu'inetd peut invoquer peut - être fixé en utilisant l'option - . Si une limite de dix - instances pour un “daemon” est - nécessaire, /10 devra - être placé après - . - - En plus de , une - autre option limitant le nombre maximal de connexions - à partir d'un emplacement vers un - “daemon” particulier peut être - activée. L'option - est - l'option en question. Ici, une valeur de dix limiterait - à dix le nombre de tentatives de connexions par - minute pour une adresse IP particulière. C'est - utile pour empêcher l'abus intentionnel ou par - inadvertance des ressources et les attaques par - déni de service (“Denial of - Service—DOS”). - - Dans ce champ, ou - est obligatoire. - et - - sont optionnelles. - - Un “daemon” utilisant un flux de type - multi-threadé sans limites - ou - - sera tout simplement affecté de l'option - nowait. - - Le même “daemon” avec une limite - maximale de dix “daemon” serait: - nowait/10. - - De plus, la même configuration avec une limite - de vingt connexions par adresse IP par minute et une - limite maximale de dix “daemon”s enfant - serait: nowait/10/20. - - Ces options sont utilisées comme valeurs par - défaut par le “daemon” - fingerd, comme le montre ce - qui suit: - - finger stream tcp nowait/3/10 nobody /usr/libexec/fingerd fingerd -s - - - - - utilisateur - - - C'est l'utilisateur sous lequel le - “daemon” en question est - exécuté. En général les - “daemon”s tournent sous l'utilisateur - root. Pour des questions de - sécurité, il est courant de rencontrer des - serveurs tournant sous l'utilisateur - daemon, ou sous l'utilisateur avec - le moins de privilèges: - nobody. - - - - - programme-serveur - - - Le chemin complet du “daemon” qui doit - être exécuté quand une requête - est reçue. Si le “daemon” est un - service fourni en interne par - inetd, alors l'option - devrait être - utilisée. - - - - - arguments-programme-serveur - - - Cette option va de pair avec - en précisant - les arguments, en commençant avec - argv[0], passés au - “daemon” lors de son invocation. Si - mydaemon -d est la ligne de commande, - mydaemon -d sera la valeur de - l'option . - Ici également, si le “daemon” est un - service interne, utilisez - . - - - - - - - Sécurité - - En fonction du profil de sécurité choisi - à l'installation, plusieurs “daemon”s - peuvent être activés par défaut. S'il n'y - a pas de raison particulière à l'utilisation - d'un “daemon”, désactivez-le! Ajoutez un - caractère “#” devant le - “daemon” en question, et envoyer un signal hangup à - inetd. Certains “daemon”s comme - fingerd, devraient être - évités parce qu'ils donnent trop d'informations - aux personnes malveillantes. - - Certains “daemon”s n'ont aucune conscience des - problèmes de sécurité, ou n'ont pas de - délai limite d'expiration pour les tentatives de - connexions. Cela permet à une personne malveillante - d'envoyer régulièrement et de manière - espacée des demandes de connexions à un - “daemon” particulier, avec pour conséquence - de saturer les ressources disponibles. Cela peut être - une bonne idée de placer des limitations - et - sur certains - “daemon”s. - - Par défaut, le “TCP wrapping” est - activé. Consultez la page de manuel - &man.hosts.access.5; pour plus d'information sur le placement - de restrictions TCP pour divers “daemon”s - invoqués par inetd. - - - - Divers - - daytime, - time, - echo, - discard, - chargen, et - auth sont des services fournis en - interne par inetd. - - Le service auth fournit les - services réseau d'identification - (ident, - identd), et est configurable - à un certain degré. - - Consultez la page de manuel de &man.inetd.8; pour plus - d'informations. - - - IP sur liaison parallèle (PLIP) diff --git a/fr_FR.ISO8859-1/books/handbook/book.sgml b/fr_FR.ISO8859-1/books/handbook/book.sgml index 0dccc740bb..8727587e6c 100644 --- a/fr_FR.ISO8859-1/books/handbook/book.sgml +++ b/fr_FR.ISO8859-1/books/handbook/book.sgml @@ -3,7 +3,7 @@ The FreeBSD French Documentation Project $FreeBSD$ - Original revision: 1.153 + Original revision: 1.154 --> - Décrivent en détail le système X - Window, et présentent des environnements de travail - modernes comme GNOME et - KDE. + Présentent des applications de bureautique + populaires et utiles: des navigateurs, des outils de + productivité, des lecteurs de documents, etc. diff --git a/fr_FR.ISO8859-1/books/handbook/chapters.ent b/fr_FR.ISO8859-1/books/handbook/chapters.ent index 343dd881a3..a4670f8c27 100644 --- a/fr_FR.ISO8859-1/books/handbook/chapters.ent +++ b/fr_FR.ISO8859-1/books/handbook/chapters.ent @@ -3,14 +3,14 @@ is named chap.foo, where foo is the value of the id attribute on that chapter, and corresponds to the name of the directory in which that chapter's .sgml file is stored. - + Chapters should be listed in the order in which they are referenced. - - The FreeBSD Documentation Project + + The FreeBSD Documentation Project The FreeBSD French Documentation Project - + $FreeBSD$ - Original revision: 1.25 + Original revision: 1.27 --> @@ -27,6 +27,7 @@ + @@ -37,6 +38,7 @@ + diff --git a/fr_FR.ISO8859-1/books/handbook/x11/chapter.sgml b/fr_FR.ISO8859-1/books/handbook/x11/chapter.sgml index 67cf144a97..ef66873d42 100644 --- a/fr_FR.ISO8859-1/books/handbook/x11/chapter.sgml +++ b/fr_FR.ISO8859-1/books/handbook/x11/chapter.sgml @@ -3,7 +3,7 @@ The FreeBSD French Documentation Project $FreeBSD$ - Original revision: 1.136 + Original revision: 1.139 --> @@ -321,12 +321,12 @@ Avant d'installer &xfree86;, décidez quelle version utiliser. - &xfree86; 3.X est une branche de + &xfree86; 3.X est une branche de maintenance du développement d'&xfree86;. Cette version est très stable, et supporte un grand nombre de cartes graphiques. Cependant, aucun nouveau développement n'est fait sur le logiciel. - &xfree86; 4.X est une complète + &xfree86; 4.X est une complète reconception du système avec de nombreuses nouvelles caractéristiques comme un meilleur support des polices de caractères et de l'anticrénelage. Malheureusement cette @@ -336,19 +336,20 @@ anciennes cartes qui étaient supportées sous la version 3.X ne le sont pas encore par la version 4.X. Comme tous les nouveaux développements et supports pour les nouvelles cartes - graphiques sont faits sur cette branche, &xfree86; - 4.X est désormais la version par défaut + graphiques sont faits sur cette branche, + &xfree86; 4.X est désormais + la version par défaut du système X Window sous FreeBSD. Le programme d'installation de FreeBSD offre aux utilisateurs l'opportunité d'installer et de configurer - &xfree86; 4.X durant + &xfree86; 4.X durant l'installation (couvert dans la ). - Pour installer et utiliser &xfree86; 3.X, + Pour installer et utiliser &xfree86; 3.X, attendez que la base du système FreeBSD soit installée, puis - ensuite installez &xfree86;. + ensuite installez &xfree86; 3.X. Par exemple, pour compiler et - installer &xfree86; 3.X à partir du + installer &xfree86; 3.X à partir du catalogue des logiciels portés: &prompt.root; cd /usr/ports/x11/XFree86 @@ -360,19 +361,19 @@ url="http://www.XFree86.org/">site d'&xfree86;. Une version pré-compilée à utiliser avec l'outil &man.pkg.add.1; est également - disponible pour &xfree86; 4.X. Quand la + disponible pour &xfree86; 4.X. Quand la fonction de récupération à distance est utilisée, le numéro de version doit être retiré. &man.pkg.add.1; téléchargera automatiquement la toute dernière version de l'application. Donc pour récupérer et installer la version - pré-compilée d'&xfree86; 4.X, + pré-compilée d'&xfree86; 4.X, tapez simplement: &prompt.root; pkg_add -r XFree86 Vous pouvez également utiliser le catalogue des logiciels - portés pour installer &xfree86; 4.X, + portés pour installer &xfree86; 4.X, pour cela vous avez simplement à taper les commandes suivantes: @@ -385,7 +386,7 @@ les serveurs, les clients, les polices de caractères, etc. Des paquetages et des logiciels portés séparés pour les différentes parties - d'&xfree86; 4.X sont également + d'&xfree86; 4.X sont également disponibles. @@ -411,13 +412,13 @@ Configuration d'&xfree86; - XFree86 4.X - XFree86 + &xfree86; 4.X + &xfree86; Avant de commencer - Avant de configurer &xfree86; 4.X, + Avant de configurer &xfree86; 4.X, les informations sur le système cible sont nécessaires: @@ -462,9 +463,9 @@ - Configurer &xfree86; 4.X + Configurer &xfree86; 4.X - La configuration d'&xfree86; 4.X + La configuration d'&xfree86; 4.X est un processus en plusieurs étapes. La première étape est de générer un fichier de configuration initial avec l'option @@ -616,16 +617,17 @@ EndSection Une fois que le fichier de configuration a été placé au bon endroit, la configuration est achevée. - Afin de pouvoir lancer &xfree86; 4.X + Afin de pouvoir lancer &xfree86; 4.X avec &man.startx.1;, installez le logiciel porté x11/wrapper. &xfree86; - 4.X peut également être lancé + role="package">x11/wrapper. + &xfree86; 4.X peut également + être lancé à l'aide de &man.xdm.1;. Il existe également un outil de configuration graphique, &man.xf86cfg.1; qui est fourni avec - &xfree86; 4.X. Il permet de + &xfree86; 4.X. Il permet de définir intéractivement votre configuration en sélectionnant les pilotes de périphériques et les paramètres @@ -693,7 +695,7 @@ EndSection noyau soit en utilisant /boot/loader.conf. - Si vous utilisez &xfree86; 4.1.0 + Si vous utilisez &xfree86; 4.1.0 (ou supérieur) et que des messages au sujet de symboles inexistants comme fbPictureInit apparaissent, essayez @@ -789,7 +791,7 @@ EndSection TrueType - &xfree86; 4.X dispose d'un support + &xfree86; 4.X dispose d'un support intégré pour le rendu des polices &truetype;. Il y a deux différents modules qui peuvent activer cette fonctionnalité. Le module freetype est @@ -801,7 +803,7 @@ EndSection Load "freetype" - Pour &xfree86; 3.3.X, un serveur + Pour &xfree86; 3.3.X, un serveur séparé de polices de caractères &truetype; est nécessaire. Xfstt est généralement @@ -1668,7 +1670,7 @@ DisplayManager.requestPort: 0 L'administrateur d'un système multi-utilisateurs peut désirer avoir un écran graphique d'ouverture de session pour accueillir les utilisateurs. - xdm peut + XDM peut être utilisé comme décrit plus tôt. Cependant, KDE inclus une alternative, kdm, qui est conçue pour @@ -1720,7 +1722,7 @@ DisplayManager.requestPort: 0 kdm comprenne ce que les étiquettes (KDE, GNOME etc...) signifient, éditez - les fichiers utilisés par xdm. + les fichiers utilisés par XDM. Dans KDE 2.2 ceci a été modifié: kdm utilise désormais ses propres fichiers de configuration. @@ -1771,7 +1773,7 @@ esac être exécuté au prochain démarrage. Pour cela, suivez simplement les instructions de la section précedente sur - xdm et remplacez les + XDM et remplacez les références au programme /usr/X11R6/bin/xdm par /usr/local/bin/kdm. @@ -1874,7 +1876,7 @@ esac Au prochain démarrage d'X, XFce sera l'environnement de travail. Comme précédemment, si un gestionnaire - d'affichage comme xdm est utilisé, + d'affichage comme XDM est utilisé, créez un fichier .xsession, comme décrit dans la section sur GNOME, mais avec la commande