Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
elearning:workbooks:solaris:10:junior:l121 [2020/01/17 11:36] – supprimée admin | elearning:workbooks:solaris:10:junior:l121 [2020/01/30 03:28] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ~~PDF: | ||
+ | |||
+ | Version : **2020.01** | ||
+ | |||
+ | Dernière mise-à-jour : ~~LASTMOD~~ | ||
+ | |||
+ | ======SO215 - Gestion des Serveurs de Base====== | ||
+ | |||
+ | =====LAB #1 - Installation et Configuration du Serveur DNS bind===== | ||
+ | |||
+ | Le principe du DNS est basé sur l' | ||
+ | |||
+ | Le **DNS** ( Domain Name Service ) est né peu après l' | ||
+ | |||
+ | Lorque un ordinateur souhaite communiquer avec un autre par le biais de son nom, par exemple avec www.ittraining.center, | ||
+ | |||
+ | Ce processus tente d' | ||
+ | |||
+ | Si cette tentative échoue, le serveur DNS cherche le serveur de domaine pour le **TLD** ( Top Level Domain ) dans son cache afin de lui demander l' | ||
+ | |||
+ | Si cette recherche échoue, le serveur s' | ||
+ | |||
+ | Le serveur DNS sert à faire la résolution de noms. Autrement dit de traduire une adresse Internet telle **www.ittraining.center **en **numéro IP**. | ||
+ | |||
+ | Le serveur DNS peut être configuré de trois façons différentes: | ||
+ | |||
+ | * **Serveur DNS Primaire ou Maitre** | ||
+ | * Ce type de serveur est dit maitre **d' | ||
+ | * **Serveur DNS Secondaire** | ||
+ | * Ce type de serveur est une copie d'un serveur DNS primaire et peut répondre aux requêtes des clients. | ||
+ | * **Serveur DNS Cache** | ||
+ | * Ce type de serveur ne peut pas répondre aux requêtes des clients. Le requêtes sont transférés à un autre serveur DNS. Les réponses sont mises en cache pour une utilisation ultérieure. | ||
+ | |||
+ | Le serveur DNS nécessite à ce que la machine sur laquelle il est installé possède un nom FQDN et une adresse IP fixe. Il est également important à noter que le service de bind ne démarrera **pas** dans le cas où le fichier **/ | ||
+ | |||
+ | * Modification de l' | ||
+ | * Définition d'un nom FQDN (Fully Qualified Domain Name) | ||
+ | |||
+ | Afin d' | ||
+ | |||
+ | * **FQDN** - solaris.i2tch.loc | ||
+ | * **Adresse IP** - 10.0.2.15 | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** - Il est important de noter que la configuration du serveur DNS dépend du nom de votre machine. Dans le cas où vous changeriez ce nom, vous devez re-configurer votre serveur DNS en éditant les fichiers de configuration directement. | ||
+ | </ | ||
+ | |||
+ | ====Installation==== | ||
+ | |||
+ | Les deux paquets nécessaires pour la mise en place d'un serveur DNS sont : | ||
+ | |||
+ | < | ||
+ | # pkginfo | grep -i SUNWbind | ||
+ | system | ||
+ | system | ||
+ | </ | ||
+ | |||
+ | Par défaut, le service **svc:/ | ||
+ | |||
+ | < | ||
+ | # svcs -a | grep dns | ||
+ | disabled | ||
+ | disabled | ||
+ | </ | ||
+ | |||
+ | ====Les fichiers de configuration génériques==== | ||
+ | |||
+ | * / | ||
+ | * / | ||
+ | * / | ||
+ | * / | ||
+ | |||
+ | ===/ | ||
+ | |||
+ | Ce fichier contiendra le numéro du processus de named. | ||
+ | |||
+ | ===/ | ||
+ | |||
+ | Ce fichier se trouve dans /var/named. Il est aussi appelé le fichier **root.hints** car il contient les adresses des serveurs DNS root de l' | ||
+ | |||
+ | Pour créer ce fichier, il convient d' | ||
+ | |||
+ | < | ||
+ | # mkdir /var/named | ||
+ | # cd /var/named | ||
+ | # / | ||
+ | # cat named.ca | ||
+ | |||
+ | ; <<>> | ||
+ | ; (1 server found) | ||
+ | ;; global options: +cmd | ||
+ | ;; Got answer: | ||
+ | ;; ->> | ||
+ | ;; flags: qr aa rd; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 13 | ||
+ | ;; WARNING: recursion requested but not available | ||
+ | |||
+ | ;; QUESTION SECTION: | ||
+ | ;. IN NS | ||
+ | |||
+ | ;; ANSWER SECTION: | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | |||
+ | ;; ADDITIONAL SECTION: | ||
+ | a.root-servers.net. | ||
+ | a.root-servers.net. | ||
+ | b.root-servers.net. | ||
+ | b.root-servers.net. | ||
+ | c.root-servers.net. | ||
+ | c.root-servers.net. | ||
+ | d.root-servers.net. | ||
+ | d.root-servers.net. | ||
+ | e.root-servers.net. | ||
+ | e.root-servers.net. | ||
+ | f.root-servers.net. | ||
+ | f.root-servers.net. | ||
+ | g.root-servers.net. | ||
+ | |||
+ | ;; Query time: 111 msec | ||
+ | ;; SERVER: 192.36.148.17# | ||
+ | ;; WHEN: Fri Jan 17 03:58:54 2020 | ||
+ | ;; MSG SIZE rcvd: 508 | ||
+ | </ | ||
+ | |||
+ | ===/ | ||
+ | |||
+ | Le fichier de configuration principal du serveur DNS Bind est **/ | ||
+ | |||
+ | < | ||
+ | # vi / | ||
+ | # cat / | ||
+ | options { | ||
+ | directory "/ | ||
+ | pid-file "/ | ||
+ | allow-query { any; }; | ||
+ | allow-transfer { any; }; | ||
+ | forwarders { 10.0.2.3; }; | ||
+ | }; | ||
+ | |||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | }; | ||
+ | |||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | }; | ||
+ | |||
+ | zone " | ||
+ | type hint; | ||
+ | file " | ||
+ | }; | ||
+ | |||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | forwarders { }; | ||
+ | }; | ||
+ | |||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | forwarders { }; | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | Vérifiez le fichier **/ | ||
+ | |||
+ | < | ||
+ | # / | ||
+ | # | ||
+ | </ | ||
+ | |||
+ | Dans ce fichier on trouve des sections ayant la forme suivante : | ||
+ | |||
+ | < | ||
+ | section { | ||
+ | | ||
+ | | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | Il existe différentes sections dont une des plus importantes est **options**. C'est dans cette section que nous définissons les options globales: | ||
+ | |||
+ | < | ||
+ | options { | ||
+ | </ | ||
+ | |||
+ | D' | ||
+ | |||
+ | < | ||
+ | directory "/ | ||
+ | </ | ||
+ | |||
+ | Ensuite le fichier pid : | ||
+ | |||
+ | < | ||
+ | pid-file "/ | ||
+ | </ | ||
+ | |||
+ | Afin de limiter les machines qui peuvent et qui ne peuvent pas utiliser notre DNS, nous utilisons la valeur **allow-query**. Dans notre cas les requêtes sont permises en provenance de tous les clients: | ||
+ | |||
+ | < | ||
+ | allow-query { any; }; | ||
+ | </ | ||
+ | |||
+ | Dans l' | ||
+ | |||
+ | < | ||
+ | | ||
+ | 127/8; | ||
+ | 10.0.2/24; | ||
+ | !10.0.2.5; | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | La valeur **allow-transfer** autorise les transferts de requête de zones pour tous les clients. La valeur allow-transfer peut également se trouver dans chaque section de zone ( voir ci-dessous ) : | ||
+ | |||
+ | < | ||
+ | allow-transfer { any;}; | ||
+ | </ | ||
+ | |||
+ | Dernièrement, | ||
+ | |||
+ | < | ||
+ | forwarders { 10.0.2.3; }; | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | La valeur " | ||
+ | |||
+ | * **master** | ||
+ | * Ce type définit le serveur DNS comme serveur maître ayant **autorité** sur la zone concernée. | ||
+ | * **slave** | ||
+ | * Ce type définit le serveur DNS comme serveur esclave pour la zone concernée. Ceci implique que la zone est une replication d'une zone maître. Un type de zone esclave contiendra aussi une directive **masters** indiquant les adresses IP des serveurs DNS maîtres. | ||
+ | * **stub** | ||
+ | * Ce type définit le serveur DNS comme serveur esclave pour la zone concernée mais uniquement pour les **enregistrements** de type **NS**. | ||
+ | * **forward** | ||
+ | * Ce type définit le serveur DNS comme serveur de transit pour la zone concernée. Ceci implique que toute requête est re-transmise vers un autre serveur. | ||
+ | * **hint** | ||
+ | * Ce type définit la zone concernée comme une zone racine. Ceci implique que lors du démarrage du serveur, cette zone est utilisée pour récupérer les adresses des serveurs DNS racine. | ||
+ | |||
+ | La valeur " | ||
+ | |||
+ | La deuxième directive dans une section de zone comporte la valeur **file**. Il indique l' | ||
+ | |||
+ | Chaque section de zone, à l' | ||
+ | |||
+ | < | ||
+ | zone " | ||
+ | type hint; | ||
+ | file " | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | La section de zone fait correspondre un nom avec une adresse IP tandis que la section de zone inversée fait l' | ||
+ | |||
+ | < | ||
+ | adresse_réseau_inversée.in-addr.arpa. | ||
+ | </ | ||
+ | |||
+ | Par exemple, la zone suivante correspond à notre domaine, ici appelée " | ||
+ | |||
+ | < | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | forwarders { }; | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | La zone suivante est également celle de notre machine mais dans le sens inverse. Le fichier **zone/ | ||
+ | |||
+ | < | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | forwarders { }; | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | Cette zone est la zone créée pour le réseau loopback : | ||
+ | |||
+ | < | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | La zone suivante est la zone créée pour le réseau loopback mais dans le sens inverse. Le fichier **zone/ | ||
+ | |||
+ | < | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | ====Les fichiers de configuration des zones==== | ||
+ | |||
+ | * / | ||
+ | * / | ||
+ | * / | ||
+ | * / | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** - Chacun de ses fichiers a besoin d' | ||
+ | </ | ||
+ | |||
+ | Les fichiers de zone sont composées de lignes d'une forme: | ||
+ | |||
+ | | nom | TTL | classe | ||
+ | |||
+ | où | ||
+ | |||
+ | * **nom** | ||
+ | * Le nom DNS. | ||
+ | * **TTL** | ||
+ | * La durée de vie en cache de cet enregistrement. | ||
+ | * **classe** | ||
+ | * Le réseau de transport utilisé. Dans notre cas, le réseau est du TCP. La valeur est donc IN. | ||
+ | * **type** | ||
+ | * Le type d' | ||
+ | * SOA - Start of Authority - se trouve au début du fichier et contient des informations générales | ||
+ | * NS - Name Server | ||
+ | * A - Address - indique une résoltuion de nom vers une adresse IP. Ne se trouve que dans les fichiers **.hosts** | ||
+ | * PTR - %%PoinTeR%% - indique une résoltuion d'une adresse IP vers un nom. Ne se trouve que dans les fichiers inversés. | ||
+ | * MX - Mail eXchange - le nom d'un serveur de mail. | ||
+ | * CNAME - Canonical Name - un alias d'une machine. | ||
+ | * HINFO - Hardware Info - fournit des informations sur le matériel de la machine | ||
+ | * **donnée** | ||
+ | * La donnée de la ressource: | ||
+ | * Une adresse IP pour un enregistrement de type A | ||
+ | * Un nom de machine pour un eregistrement de type PTR | ||
+ | |||
+ | Créez le répertoire **/ | ||
+ | |||
+ | < | ||
+ | # mkdir / | ||
+ | </ | ||
+ | |||
+ | ==db.i2tch.loc.hosts== | ||
+ | |||
+ | Ce fichier se trouve dans / | ||
+ | |||
+ | < | ||
+ | # vi / | ||
+ | # cat / | ||
+ | $TTL 3D | ||
+ | @ | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | localhost | ||
+ | dnsmaster | ||
+ | solaris.i2tch.loc. | ||
+ | |||
+ | ftp IN CNAME solaris.i2tch.loc. | ||
+ | www IN CNAME solaris.i2tch.loc. | ||
+ | mail IN CNAME solaris.i2tch.loc. | ||
+ | news IN CNAME solaris.i2tch.loc. | ||
+ | |||
+ | </ | ||
+ | |||
+ | La première ligne de ce fichier commence par une ligne semblable à celle-ci: | ||
+ | |||
+ | < | ||
+ | $TTL 3D | ||
+ | </ | ||
+ | |||
+ | Cette ligne indique aux autres serveurs DNS pendant combien de temps ils doivent garder en cache les enregistrements de cette zone. La durée peut s' | ||
+ | |||
+ | La deuxième ligne définit une **classe** **IN**ternet, | ||
+ | |||
+ | < | ||
+ | @ | ||
+ | </ | ||
+ | |||
+ | Le caractère **@** corréspond au nom de la zone et est une abréviation pour le nom de la zone décrit par le fichier de la zone, soit dans ce cas db.**i2tch.loc**.hosts, | ||
+ | |||
+ | < | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | forwarders { }; | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** - Notez le point à la fin de chaque nom de domaine. Notez bien le remplacement du caractère @ dans l' | ||
+ | </ | ||
+ | |||
+ | **Le numéro de série** doit être modifié chaque fois que le fichier soit changé. Il faut noter que dans le cas de plusieurs changements dans la même journée il est necessaire d' | ||
+ | |||
+ | < | ||
+ | | ||
+ | </ | ||
+ | |||
+ | La ligne suivante fixe le temps de rafraichissement, | ||
+ | |||
+ | < | ||
+ | 8H ; Refresh | ||
+ | </ | ||
+ | |||
+ | La ligne suivante fixe le temps entre de nouveaux essaies, soit 2 heures: | ||
+ | |||
+ | < | ||
+ | 2H ; Retry | ||
+ | </ | ||
+ | |||
+ | La ligne suivante fixe le temps d' | ||
+ | |||
+ | < | ||
+ | 4W ; Expire | ||
+ | </ | ||
+ | |||
+ | La ligne suivante fix le temps minimum pour la valeur TTL, soit un jour: | ||
+ | |||
+ | < | ||
+ | 1D) ; Minimum TTL | ||
+ | </ | ||
+ | |||
+ | Cette ligne identifie notre serveur de noms : | ||
+ | |||
+ | < | ||
+ | IN NS solaris.i2tch.loc. | ||
+ | </ | ||
+ | |||
+ | Dans le cas où notre serveur était également un serveur mail. Nous trouverions aussi une entrée du type SMTP (MX) : | ||
+ | |||
+ | < | ||
+ | IN MX 10 mail.i2tch.loc. | ||
+ | </ | ||
+ | |||
+ | Ci-dessous on définit avec une entrée du type A, les machines que l'on souhaite appeler par leur nom, à savoir **solaris.i2tch.loc** et **localhost** : | ||
+ | |||
+ | < | ||
+ | localhost | ||
+ | solaris.i2tch.loc. | ||
+ | </ | ||
+ | |||
+ | Ci-dessous on définit des **Alias** avec des entrées du type CNAME. Les alias servent à identifier une machine. | ||
+ | |||
+ | < | ||
+ | dnsmaster IN CNAME solaris.i2tch.loc. | ||
+ | ftp IN CNAME solaris.i2tch.loc. | ||
+ | www IN CNAME solaris.i2tch.loc. | ||
+ | mail IN CNAME solaris.i2tch.loc. | ||
+ | news IN CNAME solaris.i2tch.loc. | ||
+ | </ | ||
+ | |||
+ | Il est possible de vérifier ce fichier grâce à la commande **/ | ||
+ | |||
+ | < | ||
+ | # cd / | ||
+ | # / | ||
+ | zone i2tch.loc/ | ||
+ | OK | ||
+ | </ | ||
+ | |||
+ | ==db.2.0.10.hosts== | ||
+ | |||
+ | Ce fichier se trouve dans / | ||
+ | |||
+ | < | ||
+ | # vi db.2.0.10.hosts | ||
+ | # cat db.2.0.10.hosts | ||
+ | $TTL 3D | ||
+ | @ | ||
+ | 20200117 ; Serial | ||
+ | 10800 ; Refresh | ||
+ | 3600 ; Retry | ||
+ | 604800 | ||
+ | 86400) ; Minimum TTL | ||
+ | NS solaris.i2tch.loc. | ||
+ | 15 | ||
+ | </ | ||
+ | |||
+ | Il est possible de vérifier ce fichier grâce à la commande **/ | ||
+ | |||
+ | < | ||
+ | # / | ||
+ | zone 2.0.10.in-addr.arpa/ | ||
+ | OK | ||
+ | </ | ||
+ | |||
+ | ==db.127.0.0.1== | ||
+ | |||
+ | Ce fichier se trouve dans / | ||
+ | |||
+ | < | ||
+ | # vi db.127.0.0.1 | ||
+ | # cat db.127.0.0.1 | ||
+ | $TTL 3D | ||
+ | @ | ||
+ | 20200117 ; Serial | ||
+ | 28800 ; Refresh | ||
+ | 7200 ; Retry | ||
+ | 604800 | ||
+ | 86400) | ||
+ | NS solaris.i2tch.loc. | ||
+ | localhost | ||
+ | </ | ||
+ | |||
+ | Vérifier la syntaxe de ce fichier : | ||
+ | |||
+ | < | ||
+ | # / | ||
+ | zone 0.0.127.in-addr.arpa/ | ||
+ | OK | ||
+ | </ | ||
+ | |||
+ | ==db.localhost== | ||
+ | |||
+ | Ce fichier se trouve dans / | ||
+ | |||
+ | < | ||
+ | # vi db.localhost | ||
+ | # cat db.localhost | ||
+ | $TTL 3D | ||
+ | @ | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 1D) ; Minimum TTL | ||
+ | | ||
+ | 1 IN PTR | ||
+ | |||
+ | </ | ||
+ | |||
+ | Vérifier la syntaxe de ce fichier : | ||
+ | |||
+ | < | ||
+ | # / | ||
+ | zone localhost/ | ||
+ | OK | ||
+ | </ | ||
+ | |||
+ | Il est maintenant possible de démarrer le serveur DNS : | ||
+ | |||
+ | <coe> | ||
+ | # / | ||
+ | </ | ||
+ | |||
+ | Avant de pouvoir tester votre serveur DNS, vous avez besoin d' | ||
+ | |||
+ | Pour le faire, il convient d' | ||
+ | |||
+ | < | ||
+ | # vi / | ||
+ | # cat / | ||
+ | nameserver 10.0.2.15 | ||
+ | nameserver 10.0.2.3 | ||
+ | </ | ||
+ | |||
+ | Testez maintenant votre serveur DNS grâce à les commandes **nslookup** et **dig**: | ||
+ | |||
+ | < | ||
+ | # nslookup www.ittraining.center | ||
+ | Server: | ||
+ | Address: | ||
+ | |||
+ | Non-authoritative answer: | ||
+ | Name: | ||
+ | Address: 217.160.0.225 | ||
+ | |||
+ | # dig www.ittraining.center | ||
+ | |||
+ | ; <<>> | ||
+ | ;; global options: +cmd | ||
+ | ;; Got answer: | ||
+ | ;; ->> | ||
+ | ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 13, ADDITIONAL: 11 | ||
+ | |||
+ | ;; QUESTION SECTION: | ||
+ | ; | ||
+ | |||
+ | ;; ANSWER SECTION: | ||
+ | www.ittraining.center. | ||
+ | |||
+ | ;; AUTHORITY SECTION: | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | |||
+ | ;; ADDITIONAL SECTION: | ||
+ | l.root-servers.net. | ||
+ | l.root-servers.net. | ||
+ | m.root-servers.net. | ||
+ | m.root-servers.net. | ||
+ | k.root-servers.net. | ||
+ | k.root-servers.net. | ||
+ | h.root-servers.net. | ||
+ | h.root-servers.net. | ||
+ | i.root-servers.net. | ||
+ | i.root-servers.net. | ||
+ | j.root-servers.net. | ||
+ | |||
+ | ;; Query time: 0 msec | ||
+ | ;; SERVER: 10.0.2.15# | ||
+ | ;; WHEN: Fri Jan 17 11:12:56 2020 | ||
+ | ;; MSG SIZE rcvd: 502 | ||
+ | </ | ||
+ | |||
+ | =====LAB #2 - Installation et Configuration du Serveur d' | ||
+ | |||
+ | ====Introduction==== | ||
+ | |||
+ | Dans le cas d'un serveur de réseau, il est souvent important de maintenir l' | ||
+ | |||
+ | Le protocole utilisé s' | ||
+ | |||
+ | Pour connaître le fuseau d' | ||
+ | |||
+ | < | ||
+ | # date | ||
+ | Fri Jan 17 11:23:14 CET 2020 | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important> | ||
+ | **Important** - Vous pouvez consulter la liste des codes des zones à l' | ||
+ | </ | ||
+ | |||
+ | Vous pouvez modifier le fuseau d' | ||
+ | |||
+ | < | ||
+ | # tzselect | ||
+ | Please identify a location so that time zone rules can be set correctly. | ||
+ | Please select a continent or ocean. | ||
+ | 1) Africa | ||
+ | 2) Americas | ||
+ | 3) Antarctica | ||
+ | 4) Arctic Ocean | ||
+ | 5) Asia | ||
+ | 6) Atlantic Ocean | ||
+ | 7) Australia | ||
+ | 8) Europe | ||
+ | 9) Indian Ocean | ||
+ | 10) Pacific Ocean | ||
+ | 11) none - I want to specify the time zone using the POSIX TZ format. | ||
+ | #? | ||
+ | </ | ||
+ | |||
+ | ====Installation==== | ||
+ | |||
+ | Sous **Solaris**, | ||
+ | |||
+ | < | ||
+ | # svcs -a | grep ntp | ||
+ | disabled | ||
+ | disabled | ||
+ | </ | ||
+ | |||
+ | Activez ensuite le serveur ntp et vérifiez son fonctionnement : | ||
+ | |||
+ | < | ||
+ | # svcadm enable network/ntp | ||
+ | # svcadm enable network/ | ||
+ | # svcs -a | grep ntp | ||
+ | maintenance | ||
+ | maintenance | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important> | ||
+ | **Important** - Ces services sont respectivement NFSv3 et NFSv4. Les services sont **mutuellement exclusifs**. | ||
+ | </ | ||
+ | |||
+ | A ce stade on peut constater que les services sont en **maintenance**. Consultez donc chaque service pour connaître la raison : | ||
+ | |||
+ | < | ||
+ | # svcs -l network/ntp | ||
+ | fmri | ||
+ | name | ||
+ | enabled | ||
+ | state maintenance | ||
+ | next_state | ||
+ | state_time | ||
+ | logfile | ||
+ | restarter | ||
+ | contract_id | ||
+ | dependency | ||
+ | dependency | ||
+ | dependency | ||
+ | dependency | ||
+ | # svcs -l network/ | ||
+ | fmri | ||
+ | name | ||
+ | enabled | ||
+ | state maintenance | ||
+ | next_state | ||
+ | state_time | ||
+ | logfile | ||
+ | restarter | ||
+ | contract_id | ||
+ | dependency | ||
+ | dependency | ||
+ | </ | ||
+ | |||
+ | Vous pouvez constater que le problème du service **/ | ||
+ | |||
+ | < | ||
+ | # cat / | ||
+ | [ Nov 29 13:26:33 Disabled. ] | ||
+ | [ Nov 29 13:26:33 Rereading configuration. ] | ||
+ | [ Jan 17 11:24:51 Enabled. ] | ||
+ | [ Jan 17 11:24:51 Executing start method ("/ | ||
+ | [ Jan 17 11:24:51 Method " | ||
+ | # cat / | ||
+ | [ Nov 29 13:26:33 Disabled. ] | ||
+ | [ Nov 29 13:26:33 Rereading configuration. ] | ||
+ | [ Jan 17 11:25:17 Enabled. ] | ||
+ | [ Jan 17 11:25:17 Executing start method ("/ | ||
+ | Error: Configuration file '/ | ||
+ | [ Jan 17 11:25:17 Method " | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** - La sortie nous indique une mauvaise configuration (exited with status 96) du au fait que le fichier **/ | ||
+ | </ | ||
+ | |||
+ | ====Le fichier ntp.conf==== | ||
+ | |||
+ | Le service **ntp** est configuré par le fichier **/ | ||
+ | |||
+ | < | ||
+ | # cp / | ||
+ | </ | ||
+ | |||
+ | Ouvrez ce fichier afin de consulter son contenu : | ||
+ | |||
+ | < | ||
+ | # cat / | ||
+ | # ident " | ||
+ | # | ||
+ | # Copyright 1996-2003 Sun Microsystems, | ||
+ | # Use is subject to license terms. | ||
+ | # | ||
+ | # / | ||
+ | # | ||
+ | # An example file that could be copied over to / | ||
+ | # edited; it provides a configuration template for a server that | ||
+ | # listens to an external hardware clock, synchronizes the local clock, | ||
+ | # and announces itself on the NTP multicast net. | ||
+ | # | ||
+ | |||
+ | # This is the external clock device. | ||
+ | # recognized by xntpd 3-5.93e: | ||
+ | # | ||
+ | # XType Device | ||
+ | # ------------------------------------------------------- | ||
+ | # 1 local | ||
+ | # 2 trak GPS TRAK 8820 GPS Receiver | ||
+ | # 3 pst | ||
+ | # 4 wwvb WWVB | ||
+ | # 5 true TRUE | ||
+ | # 6 irig IRIG IRIG Audio Decoder | ||
+ | # 7 chu | ||
+ | # 8 parse | ||
+ | # 9 mx4200 | ||
+ | # 10 as2201 | ||
+ | # 11 arbiter | ||
+ | # 12 tpro IRIG | ||
+ | # 13 leitch | ||
+ | # 15 * | ||
+ | # 17 datum | ||
+ | # 18 acts ACTS NIST Automated Computer Time Service | ||
+ | # 19 heath | ||
+ | # 20 nmea GPS Generic NMEA GPS Receiver | ||
+ | # 22 atom PPS PPS Clock Discipline | ||
+ | # 23 ptb | ||
+ | # 24 usno USNO USNO Modem Time Service | ||
+ | # 25 * | ||
+ | # 26 hpgps | ||
+ | # 27 arc | ||
+ | # | ||
+ | # * All TrueTime receivers are now supported by one driver, type 5. | ||
+ | # Types 15 and 25 will be retained only for a limited time and may | ||
+ | # be reassigned in future. | ||
+ | # | ||
+ | # Some of the devices benefit from " | ||
+ | # documentation. | ||
+ | |||
+ | # Either a peer or server. | ||
+ | # table above. | ||
+ | server 127.127.XType.0 | ||
+ | fudge 127.127.XType.0 stratum 0 | ||
+ | |||
+ | broadcast 224.0.1.1 ttl 4 | ||
+ | |||
+ | enable auth monitor | ||
+ | driftfile / | ||
+ | statsdir / | ||
+ | filegen peerstats file peerstats type day enable | ||
+ | filegen loopstats file loopstats type day enable | ||
+ | filegen clockstats file clockstats type day enable | ||
+ | |||
+ | keys / | ||
+ | trustedkey 0 | ||
+ | requestkey 0 | ||
+ | controlkey 0 | ||
+ | </ | ||
+ | |||
+ | Les directives actives de ce fichier sont : | ||
+ | |||
+ | < | ||
+ | # egrep -v ' | ||
+ | # cat / | ||
+ | server 127.127.XType.0 | ||
+ | fudge 127.127.XType.0 stratum 0 | ||
+ | broadcast 224.0.1.1 ttl 4 | ||
+ | enable auth monitor | ||
+ | driftfile / | ||
+ | statsdir / | ||
+ | filegen peerstats file peerstats type day enable | ||
+ | filegen loopstats file loopstats type day enable | ||
+ | filegen clockstats file clockstats type day enable | ||
+ | keys / | ||
+ | trustedkey 0 | ||
+ | requestkey 0 | ||
+ | controlkey 0 | ||
+ | </ | ||
+ | |||
+ | Les directives suivantes stipulent que votre serveur doit se synchroniser sur l' | ||
+ | |||
+ | < | ||
+ | server 127.127.XType.0 | ||
+ | fudge 127.127.XType.0 stratum 0 | ||
+ | </ | ||
+ | |||
+ | La valeur de **XType** doit être prise du tableau fourni dans le fichier lui-même. | ||
+ | |||
+ | La directive suivante permet le broadcast au client : | ||
+ | |||
+ | < | ||
+ | broadcast 224.0.1.1 ttl 4 | ||
+ | </ | ||
+ | |||
+ | La fonction suivante active le monitoring et fait que le serveur se synchronise avec les clients seulement si ceux-ci se sont bien authentifiés en utilisant une clé d' | ||
+ | |||
+ | < | ||
+ | enable auth monitor | ||
+ | </ | ||
+ | |||
+ | La directive suivante identifie le fichier contenant la déviation moyenne: | ||
+ | |||
+ | < | ||
+ | driftfile / | ||
+ | </ | ||
+ | |||
+ | La directive suivante indique le répertoire qui stocke les clefs symétriques lors d' | ||
+ | |||
+ | < | ||
+ | keys / | ||
+ | trustedkey 0 | ||
+ | requestkey 0 | ||
+ | controlkey 0 | ||
+ | </ | ||
+ | |||
+ | La directive suivante indique le répertoire de statistiques : | ||
+ | |||
+ | < | ||
+ | statsdir / | ||
+ | </ | ||
+ | |||
+ | La directive suivante indique les statistiques voulues : | ||
+ | |||
+ | < | ||
+ | statistics loopstats peerstats clockstats | ||
+ | </ | ||
+ | |||
+ | Les directives suivantes indiquent les statistiques à générer : | ||
+ | |||
+ | < | ||
+ | filegen loopstats file loopstats type day enable | ||
+ | filegen peerstats file peerstats type day enable | ||
+ | filegen clockstats file clockstats type day enable | ||
+ | </ | ||
+ | |||
+ | Ce fichier a besoin d' | ||
+ | |||
+ | < | ||
+ | server 192.43.244.18 | ||
+ | server 192.203.230.41 | ||
+ | server 128.115.14.97 | ||
+ | server 128.252.19.1 | ||
+ | </ | ||
+ | |||
+ | Modifiez ensuite les lignes suivantes : | ||
+ | |||
+ | < | ||
+ | server 127.127.XType.1 | ||
+ | fudge 127.127.XType.1 stratum 0 | ||
+ | </ | ||
+ | |||
+ | Vous obtiendrez un fichier similaire à celui-ci : | ||
+ | |||
+ | < | ||
+ | # vi / | ||
+ | # cat / | ||
+ | server 192.43.244.18 | ||
+ | server 192.203.230.41 | ||
+ | server 128.115.14.97 | ||
+ | server 128.252.19.1 | ||
+ | server 127.127.XType.1 | ||
+ | fudge 127.127.XType.1 stratum 0 | ||
+ | broadcast 224.0.1.1 ttl 4 | ||
+ | enable auth monitor | ||
+ | driftfile / | ||
+ | statsdir / | ||
+ | filegen peerstats file peerstats type day enable | ||
+ | filegen loopstats file loopstats type day enable | ||
+ | filegen clockstats file clockstats type day enable | ||
+ | keys / | ||
+ | trustedkey 0 | ||
+ | requestkey 0 | ||
+ | controlkey 0 | ||
+ | </ | ||
+ | |||
+ | Mettez en place le fichier / | ||
+ | |||
+ | < | ||
+ | # cp / | ||
+ | # cp / | ||
+ | </ | ||
+ | |||
+ | Créez ensuite le fichier **/ | ||
+ | |||
+ | < | ||
+ | # touch / | ||
+ | </ | ||
+ | |||
+ | Démarrez ensuite le service network/ | ||
+ | |||
+ | < | ||
+ | # svcadm clear svc:/ | ||
+ | # svcadm enable svc:/ | ||
+ | </ | ||
+ | |||
+ | Constatez l' | ||
+ | |||
+ | < | ||
+ | # svcs -a | grep ntp | ||
+ | disabled | ||
+ | online | ||
+ | # svcs -l svc:/ | ||
+ | fmri | ||
+ | name | ||
+ | enabled | ||
+ | state online | ||
+ | next_state | ||
+ | state_time | ||
+ | logfile | ||
+ | restarter | ||
+ | contract_id | ||
+ | dependency | ||
+ | dependency | ||
+ | </ | ||
+ | |||
+ | Dernièrement, | ||
+ | |||
+ | < | ||
+ | # cd / | ||
+ | # ls | ||
+ | loopstats | ||
+ | </ | ||
+ | |||
+ | =====LAB #3 - Installation et Configuration du Serveur FTP===== | ||
+ | |||
+ | ====Introduction==== | ||
+ | |||
+ | Solaris 10 à un serveur FTP pré-installé. Ce serveur est basé sur le serveur **WU-FTPd** de l' | ||
+ | |||
+ | ====installation==== | ||
+ | |||
+ | Vérifiez donc l' | ||
+ | |||
+ | < | ||
+ | # svcs ftp | ||
+ | STATE STIME FMRI | ||
+ | online | ||
+ | </ | ||
+ | |||
+ | Le serveur FTP est géré par inetd. Consultez donc sa configuration en utilisant la commande **inetadm** : | ||
+ | |||
+ | < | ||
+ | # inetadm -l svc:/ | ||
+ | SCOPE NAME=VALUE | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** - L' | ||
+ | </ | ||
+ | |||
+ | ====Configuration de la Journalisation==== | ||
+ | |||
+ | Pour rendre la journalisation plus détaillé il faut passé la valeur de la directive **tcp_trace** à **true** : | ||
+ | |||
+ | < | ||
+ | # inetadm -m svc:/ | ||
+ | # inetadm -l svc:/ | ||
+ | SCOPE NAME=VALUE | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | default | ||
+ | | ||
+ | default | ||
+ | default | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** - Notez la directive **tcp_trace=TRUE**. | ||
+ | </ | ||
+ | |||
+ | Consulte maintenant le contenu du fichier **/ | ||
+ | |||
+ | < | ||
+ | # cat / | ||
+ | # ident " | ||
+ | # | ||
+ | # FTP server configuration file, see ftpaccess(4). | ||
+ | # | ||
+ | |||
+ | class | ||
+ | class | ||
+ | class | ||
+ | |||
+ | loginfails | ||
+ | passwd-check | ||
+ | private | ||
+ | shutdown | ||
+ | # email | ||
+ | # guestuser | ||
+ | # rhostlookup | ||
+ | |||
+ | keepalive | ||
+ | recvbuf | ||
+ | sendbuf | ||
+ | # flush-wait | ||
+ | # passive | ||
+ | # timeout | ||
+ | # timeout | ||
+ | |||
+ | banner | ||
+ | greeting | ||
+ | message | ||
+ | message | ||
+ | readme | ||
+ | readme | ||
+ | # quota-info | ||
+ | |||
+ | chmod | ||
+ | delete | ||
+ | overwrite | ||
+ | rename | ||
+ | umask | ||
+ | |||
+ | compress | ||
+ | tar | ||
+ | |||
+ | path-filter | ||
+ | |||
+ | noretrieve | ||
+ | allow-retrieve | ||
+ | |||
+ | upload | ||
+ | # upload | ||
+ | |||
+ | # log | ||
+ | # log | ||
+ | # log | ||
+ | # xferlog | ||
+ | |||
+ | # limit-time | ||
+ | # limit | ||
+ | # limit | ||
+ | </ | ||
+ | |||
+ | Pour activer la journalisation il convient de décommenter les deux lignes suivantes : | ||
+ | |||
+ | < | ||
+ | # vi / | ||
+ | # cat / | ||
+ | ... | ||
+ | log | ||
+ | xferlog | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | Ajoutez maintenant les options **-l**, **-L**, **-X** et **-w** à la valeur de la directive **inetd_start/ | ||
+ | |||
+ | < | ||
+ | # svccfg | ||
+ | svc:> select ftp | ||
+ | svc:/ | ||
+ | svc:/ | ||
+ | general | ||
+ | general/ | ||
+ | general/ | ||
+ | inetd framework | ||
+ | inetd/ | ||
+ | inetd/ | ||
+ | inetd/ | ||
+ | inetd/ | ||
+ | inetd/ | ||
+ | inetd/ | ||
+ | inetd_start | ||
+ | inetd_start/ | ||
+ | inetd_start/ | ||
+ | inetd_start/ | ||
+ | inetd_start/ | ||
+ | inetd_start/ | ||
+ | inetd_start/ | ||
+ | inetd_start/ | ||
+ | inetd_start/ | ||
+ | inetd_start/ | ||
+ | inetd_start/ | ||
+ | inetd_start/ | ||
+ | inetd_start/ | ||
+ | inetd_disable | ||
+ | inetd_disable/ | ||
+ | inetd_disable/ | ||
+ | inetd_disable/ | ||
+ | tm_common_name | ||
+ | tm_common_name/ | ||
+ | tm_man_in_ftpd | ||
+ | tm_man_in_ftpd/ | ||
+ | tm_man_in_ftpd/ | ||
+ | tm_man_in_ftpd/ | ||
+ | tm_man_ftpd | ||
+ | tm_man_ftpd/ | ||
+ | tm_man_ftpd/ | ||
+ | tm_man_ftpd/ | ||
+ | svc:/ | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** - L' | ||
+ | </ | ||
+ | |||
+ | Le serveur FTP envoie des traces à syslog en utilisant le Sélecteur **daemon.info**. Modifiez donc le fichier **/ | ||
+ | |||
+ | < | ||
+ | # vi /etc/syslog | ||
+ | # cat /etc/syslog | ||
+ | ... | ||
+ | *.err; | ||
+ | *.err; | ||
+ | daemon.info | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | Créez le fichier **/ | ||
+ | |||
+ | < | ||
+ | # touch / | ||
+ | # svcadm restart inetd | ||
+ | # svcadm restart network/ftp | ||
+ | # svcadm restart system-log | ||
+ | </ | ||
+ | |||
+ | Connectez-vous maintenant au serveur FTP en tant qu' | ||
+ | |||
+ | < | ||
+ | # ftp localhost | ||
+ | Connected to localhost. | ||
+ | 220 solaris.i2tch.loc FTP server ready. | ||
+ | Name (localhost: | ||
+ | 331 Password required for user1. | ||
+ | Password: | ||
+ | 230 User user1 logged in. | ||
+ | Remote system type is UNIX. | ||
+ | Using binary mode to transfer files. | ||
+ | ftp> pwd | ||
+ | 257 "/ | ||
+ | ftp> ls | ||
+ | 200 PORT command successful. | ||
+ | 150 Opening ASCII mode data connection for file list. | ||
+ | local.cshrc | ||
+ | local.login | ||
+ | local.profile | ||
+ | 226 Transfer complete. | ||
+ | 41 bytes received in 0.0016 seconds (25.43 Kbytes/s) | ||
+ | ftp> quit | ||
+ | 221-You have transferred 0 bytes in 0 files. | ||
+ | 221-Total traffic for this session was 512 bytes in 1 transfers. | ||
+ | 221-Thank you for using the FTP service on solaris.i2tch.loc. | ||
+ | 221 Goodbye. | ||
+ | </ | ||
+ | |||
+ | Connectez-vous maintenant au serveur FTP en tant qu' | ||
+ | |||
+ | < | ||
+ | # ftp localhost | ||
+ | Connected to localhost. | ||
+ | 220 solaris.i2tch.loc FTP server ready. | ||
+ | Name (localhost: | ||
+ | 331 Guest login ok, send your complete e-mail address as password. | ||
+ | Password: | ||
+ | 230-The response ' | ||
+ | 230-Next time please use your e-mail address as your password | ||
+ | 230- for example: joe@localhost.network | ||
+ | 230 Guest login ok, access restrictions apply. | ||
+ | Remote system type is UNIX. | ||
+ | Using binary mode to transfer files. | ||
+ | ftp> pwd | ||
+ | 257 "/" | ||
+ | ftp> !pwd | ||
+ | / | ||
+ | ftp> !touch test | ||
+ | ftp> !ls | ||
+ | Desktop | ||
+ | Documents | ||
+ | bin | ||
+ | boot etc | ||
+ | core export | ||
+ | ftp> put test | ||
+ | 200 PORT command successful. | ||
+ | 553 test: Permission denied on server. (Upload) | ||
+ | ftp> quit | ||
+ | 221-You have transferred 0 bytes in 1 files. | ||
+ | 221-Total traffic for this session was 745 bytes in 1 transfers. | ||
+ | 221-Thank you for using the FTP service on solaris.i2tch.loc. | ||
+ | 221 Goodbye. | ||
+ | </ | ||
+ | |||
+ | Consultez le fichier **/ | ||
+ | |||
+ | < | ||
+ | # cat / | ||
+ | Jan 18 16:50:16 solaris.i2tch.loc inetd[1421]: | ||
+ | Jan 18 16:59:38 solaris.i2tch.loc in.ftpd[1660]: | ||
+ | Jan 18 16:59:38 solaris.i2tch.loc inetd[1421]: | ||
+ | Jan 18 16:59:42 solaris.i2tch.loc ftpd[1660]: [ID 165209 daemon.info] USER user1 | ||
+ | Jan 18 16:59:47 solaris.i2tch.loc ftpd[1660]: [ID 125383 daemon.info] PASS password | ||
+ | Jan 18 16:59:47 solaris.i2tch.loc ftpd[1660]: [ID 124999 daemon.info] FTP LOGIN FROM localhost [127.0.0.1], | ||
+ | Jan 18 16:59:47 solaris.i2tch.loc ftpd[1660]: [ID 470890 daemon.info] SYST | ||
+ | Jan 18 16:59:47 solaris.i2tch.loc ftpd[1660]: [ID 307055 daemon.info] TYPE Image | ||
+ | Jan 18 16:59:50 solaris.i2tch.loc ftpd[1660]: [ID 924372 daemon.info] PWD | ||
+ | Jan 18 16:59:52 solaris.i2tch.loc ftpd[1660]: [ID 313182 daemon.info] PORT | ||
+ | Jan 18 16:59:52 solaris.i2tch.loc ftpd[1660]: [ID 307055 daemon.info] TYPE ASCII | ||
+ | Jan 18 16:59:52 solaris.i2tch.loc ftpd[1660]: [ID 188419 daemon.info] NLST | ||
+ | Jan 18 16:59:52 solaris.i2tch.loc ftpd[1660]: [ID 307055 daemon.info] TYPE Image | ||
+ | Jan 18 16:59:55 solaris.i2tch.loc ftpd[1660]: [ID 225560 daemon.info] QUIT | ||
+ | Jan 18 16:59:55 solaris.i2tch.loc ftpd[1660]: [ID 528697 daemon.info] FTP session closed | ||
+ | Jan 18 17:00:01 solaris.i2tch.loc in.ftpd[1664]: | ||
+ | Jan 18 17:00:01 solaris.i2tch.loc inetd[1421]: | ||
+ | Jan 18 17:00:04 solaris.i2tch.loc ftpd[1664]: [ID 165209 daemon.info] USER anonymous | ||
+ | Jan 18 17:00:06 solaris.i2tch.loc ftpd[1664]: [ID 351301 daemon.info] PASS dfghj | ||
+ | Jan 18 17:00:06 solaris.i2tch.loc ftpd[1664]: [ID 210975 daemon.info] ANONYMOUS FTP LOGIN FROM localhost [127.0.0.1], | ||
+ | Jan 18 17:00:06 solaris.i2tch.loc ftpd[1664]: [ID 470890 daemon.info] SYST | ||
+ | Jan 18 17:00:06 solaris.i2tch.loc ftpd[1664]: [ID 307055 daemon.info] TYPE Image | ||
+ | Jan 18 17:00:08 solaris.i2tch.loc ftpd[1664]: [ID 924372 daemon.info] PWD | ||
+ | Jan 18 17:00:43 solaris.i2tch.loc ftpd[1664]: [ID 313182 daemon.info] PORT | ||
+ | Jan 18 17:00:43 solaris.i2tch.loc ftpd[1664]: [ID 206289 daemon.info] STOR test | ||
+ | Jan 18 17:00:59 solaris.i2tch.loc ftpd[1664]: [ID 225560 daemon.info] QUIT | ||
+ | Jan 18 17:00:59 solaris.i2tch.loc ftpd[1664]: [ID 528697 daemon.info] FTP session closed | ||
+ | </ | ||
+ | |||
+ | ====Configuration des Connexions Anonymes==== | ||
+ | |||
+ | Solaris 10 contient un script dénommé **ftpconfig** qui permet de configurer automatiquement un chroot pour les connexions anonymes : | ||
+ | |||
+ | < | ||
+ | # ftpconfig / | ||
+ | Updating user ftp | ||
+ | Creating directory / | ||
+ | Updating directory / | ||
+ | </ | ||
+ | |||
+ | Consultez le contenu du répertoire **/ | ||
+ | |||
+ | < | ||
+ | # ls -l / | ||
+ | total 12 | ||
+ | lrwxrwxrwx | ||
+ | d--x--x--x | ||
+ | d--x--x--x | ||
+ | d--x--x--x | ||
+ | drwxr-xr-x | ||
+ | d--x--x--x | ||
+ | </ | ||
+ | |||
+ | Pour activer le téléversement vers le répertoire **/ | ||
+ | |||
+ | < | ||
+ | # vi / | ||
+ | # cat / | ||
+ | ... | ||
+ | upload | ||
+ | # upload | ||
+ | # upload | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | Modifiez le masque de permissions à 777 sur le répertoire **/ | ||
+ | |||
+ | < | ||
+ | # chmod 777 / | ||
+ | </ | ||
+ | |||
+ | Postionnez-vous dans le répertoire **/tmp** et créez le fichier **ftptest** : | ||
+ | |||
+ | < | ||
+ | # cd /tmp | ||
+ | # touch ftptest | ||
+ | # ls | ||
+ | ftptest | ||
+ | </ | ||
+ | |||
+ | Connectez-vous au serveur FTP en tant que l' | ||
+ | |||
+ | < | ||
+ | # ftp localhost | ||
+ | Connected to localhost. | ||
+ | 220 solaris.i2tch.loc FTP server ready. | ||
+ | Name (localhost: | ||
+ | 331 Guest login ok, send your complete e-mail address as password. | ||
+ | Password: | ||
+ | 230-The response ' | ||
+ | 230-Next time please use your e-mail address as your password | ||
+ | 230- for example: joe@localhost.network | ||
+ | 230 Guest login ok, access restrictions apply. | ||
+ | Remote system type is UNIX. | ||
+ | Using binary mode to transfer files. | ||
+ | ftp> ls | ||
+ | 200 PORT command successful. | ||
+ | 150 Opening ASCII mode data connection for file list. | ||
+ | bin | ||
+ | dev | ||
+ | etc | ||
+ | lib | ||
+ | pub | ||
+ | usr | ||
+ | 226 Transfer complete. | ||
+ | 30 bytes received in 0.00016 seconds (180.11 Kbytes/s) | ||
+ | ftp> cd /pub | ||
+ | 250 CWD command successful. | ||
+ | ftp> !ls | ||
+ | ftptest | ||
+ | ftp> put ftptest | ||
+ | 200 PORT command successful. | ||
+ | 150 Opening BINARY mode data connection for ftptest. | ||
+ | 226 Transfer complete. | ||
+ | ftp> ls | ||
+ | 200 PORT command successful. | ||
+ | 150 Opening ASCII mode data connection for file list. | ||
+ | ftptest | ||
+ | 226 Transfer complete. | ||
+ | 9 bytes received in 0.00012 seconds (71.52 Kbytes/s) | ||
+ | </ | ||
+ | |||
+ | ====Sécurisation du Serveur FTP==== | ||
+ | |||
+ | Afin de sécuriser le serveur FTP, insérez les noms de tous les comptes système dans le fichier **/ | ||
+ | |||
+ | < | ||
+ | # cat / | ||
+ | # ident " | ||
+ | # | ||
+ | # List of users denied access to the FTP server, see ftpusers(4). | ||
+ | # | ||
+ | root | ||
+ | daemon | ||
+ | bin | ||
+ | sys | ||
+ | adm | ||
+ | lp | ||
+ | uucp | ||
+ | nuucp | ||
+ | smmsp | ||
+ | listen | ||
+ | gdm | ||
+ | webservd | ||
+ | unknown | ||
+ | nobody | ||
+ | noaccess | ||
+ | nobody4 | ||
+ | </ | ||
+ | |||
+ | =====LAB #4 - Installation et Configuration du Serveur DHCP===== | ||
+ | |||
+ | ====Introduction==== | ||
+ | |||
+ | Un serveur DHCP (**Dynamic Host Configuration Protocol**) est un ordinateur exécutant un logiciel serveur DHCP. L’avantage de la présence d’un serveur DHCP sur le réseau local est que celui-ci permet de spécifier à un niveau central les paramètres TCP/ | ||
+ | |||
+ | ====Installation==== | ||
+ | |||
+ | Sous **Solaris** le serveur DHCP est installé par défaut mais il n'est pas activé : | ||
+ | |||
+ | < | ||
+ | # svcs -a | grep dhcp | ||
+ | disabled | ||
+ | </ | ||
+ | |||
+ | Il convient donc de l' | ||
+ | |||
+ | < | ||
+ | # svcadm enable svc:/ | ||
+ | # svcs -a | grep dhcp | ||
+ | offline | ||
+ | </ | ||
+ | |||
+ | Notez que le statut du service passe de ***disabled** à **offline**. Commençons par cannaître la raison de ce statut : | ||
+ | |||
+ | < | ||
+ | # svcs -l svc:/ | ||
+ | fmri | ||
+ | name DHCP server | ||
+ | enabled | ||
+ | state offline | ||
+ | next_state | ||
+ | state_time | ||
+ | restarter | ||
+ | dependency | ||
+ | dependency | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** - La sortie nous informe que la raison du statut **offline** est l' | ||
+ | </ | ||
+ | |||
+ | ====Configuration==== | ||
+ | |||
+ | ===Création du Fichier / | ||
+ | |||
+ | Pour créer le fichier **/ | ||
+ | |||
+ | < | ||
+ | # / | ||
+ | Created DHCP configuration file. | ||
+ | Created dhcptab. | ||
+ | Added " | ||
+ | Added server macro to dhcptab - solaris. | ||
+ | DHCP server started. | ||
+ | </ | ||
+ | |||
+ | Consultez le contenu du fichier **/ | ||
+ | |||
+ | < | ||
+ | # cat / | ||
+ | DAEMON_ENABLED=TRUE | ||
+ | RESOURCE=SUNWfiles | ||
+ | RUN_MODE=server | ||
+ | PATH=/ | ||
+ | CONVER=1 | ||
+ | </ | ||
+ | |||
+ | Il est possible d' | ||
+ | |||
+ | < | ||
+ | # vi / | ||
+ | # cat / | ||
+ | DAEMON_ENABLED=TRUE | ||
+ | RESOURCE=SUNWfiles | ||
+ | RUN_MODE=server | ||
+ | PATH=/ | ||
+ | CONVER=1 | ||
+ | INTERFACES=e1000g0 | ||
+ | </ | ||
+ | |||
+ | ===Création de la Table de Réseau=== | ||
+ | |||
+ | Configurez maintenant une table réseau pour le serveur DHCP en utilisant l' | ||
+ | |||
+ | < | ||
+ | # / | ||
+ | Added network macro to dhcptab - 10.0.2.0. | ||
+ | Created network table. | ||
+ | </ | ||
+ | |||
+ | Listez les tables réseau du serveur DHCP : | ||
+ | |||
+ | < | ||
+ | # pntadm -L | ||
+ | 10.0.2.0 | ||
+ | </ | ||
+ | |||
+ | La table réseau prend la forme d'un fichier nommé **SUNWfiles1_10_0_2_0** dans le répertoire **/ | ||
+ | |||
+ | < | ||
+ | # ls /var/dhcp | grep 10 | ||
+ | SUNWfiles1_10_0_2_0 | ||
+ | # cat / | ||
+ | # SUNWfiles1_10_0_2_0 | ||
+ | # | ||
+ | # Do NOT edit this file by hand -- use pntadm(1M) or dhcpmgr(1M) instead | ||
+ | # | ||
+ | # | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** - Notez que la table est actuelleemnt vide. | ||
+ | </ | ||
+ | |||
+ | Consultez les informations concernant la table réseau : | ||
+ | |||
+ | < | ||
+ | # dhtadm -P | ||
+ | Name Type Value | ||
+ | ================================================== | ||
+ | 10.0.2.0 | ||
+ | solaris | ||
+ | Locale | ||
+ | </ | ||
+ | |||
+ | Ajoutez une entrée à la table **10.0.2.0** de la machine **solaris** en utilisant l' | ||
+ | |||
+ | < | ||
+ | # pntadm -A 10.0.2.50 -m solaris 10.0.2.0 | ||
+ | # pntadm -P 10.0.2.50 | ||
+ | Client ID Flags Client IP Server IP Lease Expiration | ||
+ | |||
+ | 00 00 10.0.2.50 10.0.2.15 Zero | ||
+ | </ | ||
+ | |||
+ | Consultez le contenu du fichier **/ | ||
+ | |||
+ | < | ||
+ | # cat / | ||
+ | # SUNWfiles1_10_0_2_0 | ||
+ | # | ||
+ | # Do NOT edit this file by hand -- use pntadm(1M) or dhcpmgr(1M) instead | ||
+ | # | ||
+ | 10.0.2.50|00|00|10.0.2.15|0|4338936765994762241|solaris| | ||
+ | </ | ||
+ | |||
+ | Ajoutez neuf autres entrées : | ||
+ | |||
+ | < | ||
+ | # pntadm -A 10.0.2.51 -m solaris 10.0.2.0 | ||
+ | # pntadm -A 10.0.2.52 -m solaris 10.0.2.0 | ||
+ | # pntadm -A 10.0.2.53 -m solaris 10.0.2.0 | ||
+ | # pntadm -A 10.0.2.54 -m solaris 10.0.2.0 | ||
+ | # pntadm -A 10.0.2.55 -m solaris 10.0.2.0 | ||
+ | # pntadm -A 10.0.2.56 -m solaris 10.0.2.0 | ||
+ | # pntadm -A 10.0.2.57 -m solaris 10.0.2.0 | ||
+ | # pntadm -A 10.0.2.58 -m solaris 10.0.2.0 | ||
+ | # pntadm -A 10.0.2.59 -m solaris 10.0.2.0 | ||
+ | </ | ||
+ | |||
+ | Vérifez maintenant le contenu du fichier **/ | ||
+ | |||
+ | < | ||
+ | # cat / | ||
+ | # SUNWfiles1_10_0_2_0 | ||
+ | # | ||
+ | # Do NOT edit this file by hand -- use pntadm(1M) or dhcpmgr(1M) instead | ||
+ | # | ||
+ | 10.0.2.50|00|00|10.0.2.15|0|2945917106253725697|solaris| | ||
+ | 10.0.2.51|00|00|10.0.2.15|0|5726608401178296321|solaris| | ||
+ | 10.0.2.52|00|00|10.0.2.15|0|92886742314516481|solaris| | ||
+ | 10.0.2.53|00|00|10.0.2.15|0|251075679225905153|solaris| | ||
+ | 10.0.2.54|00|00|10.0.2.15|0|14762799578520485889|solaris| | ||
+ | 10.0.2.55|00|00|10.0.2.15|0|14206886499516940289|solaris| | ||
+ | 10.0.2.56|00|00|10.0.2.15|0|18410996751667298305|solaris| | ||
+ | 10.0.2.57|00|00|10.0.2.15|0|6406933419887951873|solaris| | ||
+ | 10.0.2.58|00|00|10.0.2.15|0|12357877377504641025|solaris| | ||
+ | 10.0.2.59|00|00|10.0.2.15|0|12228117413241028609|solaris| | ||
+ | </ | ||
+ | |||
+ | ----- | ||
+ | < | ||
+ | <div align=" | ||
+ | Copyright © 2020 Hugh Norris. | ||
+ | </ | ||