Sophie

Sophie

distrib > Mandriva > 9.0 > i586 > by-pkgid > 0d5cd12c82d627a82c59047e1ba7b8a9 > files > 2331

howto-html-fr-9.0-0.2mdk.noarch.rpm

<HTML>
<HEAD>
<TITLE>Services et Serveurs Virtuels</TITLE>
</HEAD>
<BODY>
<H1>2. <A NAME="s2"></A>Services et Serveurs Virtuels</H1>
<P>
<A HREF="Virtual-wu-ftpd.html#toc2">Contenu de cette section</A></P>

<P>Si un nom d'hote appartient &agrave; une interface virtuelle, c'est
ce que l'on nomme commun&eacute;ment un "hote virtuel".
Un d&eacute;mon qui ex&eacute;cute un service sur un hote virtuel (ou sur
une interface virtuelle) est appel&eacute; "serveur virtuel".</P>
<P></P>
<P></P>
<H2>2.1 <A NAME="ss2.1"></A> Serveurs WWW Virtuels</H2>

<P></P>
<P>Nous avons d&eacute;j&agrave; donn&eacute; un exemple de 3 serveurs WWW virtuels
pr&eacute;c&eacute;demment:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
                www.sharpers.com, www.usurers.com, www.swindlers.com
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P></P>
<P>La configuration d'une grande partie de ces d&eacute;mons http que je
connaisse (c.f. l'excellente conception du "Roxen Challenger" 
ou le largement r&eacute;pandu "Apache") pour utiliser ces serveurs 
virtuels est facile, et largement document&eacute;e.
En quelques mots: attachez simplement le port www (num 80) &agrave;
l'interface r&eacute;seau virtuelle avec l'adresse ip/nom d&eacute;sir&eacute; pour
chaque serveur WWW que vous ex&eacute;cutez. Il n'y a aucune astuce.</P>
<P>Lisez le document Linux "Virtual Web mini-HOWTO" si vous d&eacute;sirez
plus d'informations sur cette technique.</P>
<P></P>
<P></P>

<H2>2.2 <A NAME="ss2.2"></A> Addresses de courrier virtuelles</H2>

<P></P>
<P>Dans le cas le plus simple, vous souhaitez recevoir chaque
courrier pour tous les hotes virtuels, et pour les domaines
concern&eacute;s:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
                www.sharpers.com, www.usurers.com, www.swindlers.com,
                    sharpers.com,     usurers.com,     swindlers.com
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P></P>
<P>Meme la configuration de "smail" ou de "sendmail" (les d&eacute;mons
qui se charge du traffic de courrier sur votre machine Linux)
est relativement simple: ajoutez les noms/domaines additionnels
dans "/etc/smail/config" (ajoutez 'hostnames=' et 'domains=')
respectivement "/etc/mail/sendmail.cw" (un nom de domaine
par ligne).</P>
<P>Pour impl&eacute;menter un "r&eacute;el" domaine virtuel &agrave; l'aide de smail,
regarder la FAQ sur smail (smail-FAQ), disponible sur</P>
<P>http://www.sbay.org/smail-faq.html</P>
<P></P>
<P></P>
<P></P>

<H2>2.3 <A NAME="ss2.3"></A> Serveurs ftp virtuels</H2>

<P></P>
<P>Le concept de serveur ftp virtuel n'est pas support&eacute; par
d&eacute;faut dans les d&eacute;mons ftp que je connaisse.</P>
<P>Le tr&egrave;s largement diffus&eacute; "wu-ftpd" dispose d'un patch
r&eacute;alis&eacute; par Brian Grossman <CODE>brian@SoftHome.Net</CODE> pour r&eacute;aliser
un service FTP distinct du serveur FTP anonyme traditionnel.
Vous trouverez des pr&eacute;cisions pour r&eacute;cup&eacute;rer ce patch dans le
chapitre 3.</P>
<P>Il semble qu'il n'y ait pas d'autres patch disponible pour
r&eacute;aliser cette op&eacute;ration.</P>
<P></P>
<P>L'id&eacute;e g&eacute;n&eacute;rale du patch multihote de Brian est de faire
op&eacute;rer &agrave; wu-ftpd un "chroot()" sur                </P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
                REPERTOIRE_DE_BASE_DU_COMPTE_FTP/NOM_D_HOTE_DEMANDE/
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P></P>
<P>au lieu de juste faire un chroot() sur</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
                                REPERTOIRE_DE_BASE_DU_COMPTE_FTP/
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P></P>
<P>Dans l'exemple pr&eacute;sent&eacute; pr&eacute;cedemment, l'utilisateur qui
se connecte sur "ftp.swindlers.com" par un compte ftp
anonyme est bloqu&eacute; dans "/home/ano-ftp/ftp.swindlers.com/"
au lieu de "/home/ano-ftp/".
Vous pouvez imaginer que la configuration de base est simple
et ne diff&egrave;re que tr&egrave;s peu de la configuration d'un serveur
anonyme simple.</P>
<P>Gloire &agrave; Brian pour cette strat&eacute;gie de configuration simple 
et efficace.</P>
<P></P>
<P>Laissez moi m'assurer que vous disposez de cette version 
sp&eacute;ciale de wu-ftp d&eacute;j&agrave; compil&eacute;e par vous meme, ou que vous
vous etes procur&eacute; le binaire, et laissez moi vous renvoyer
pour toute question &agrave; la fin de ce document.</P>
<P>Je vais vous donner un exemple de la vie courante, et vous
expliquer les manipulations que j'ai effectu&eacute;es pour un de
mes clients (je n'ai chang&eacute; que le nom de ses machines par
des noms fictifs...).</P>
<P></P>
<P>(a) Cre&eacute;z un r&eacute;pertoire "/home/ano-ftp" pour les diff&eacute;rents 
serveurs ftp anonymes.</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
                mkdir  /home/ano-ftp  &amp;&amp;  cd /home/ano-ftp
                mkdir  ftp.sharpers.com  ftp.usurers.com  ftp.swindlers.com
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P></P>
<P>Vous obtenez alors comme arborescence:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
        /home/ano-ftp/
                  |-- ftp.sharpers.com
                  |-- ftp.swindlers.com
                  `-- ftp.usurers.com
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P></P>
<P>(b) Copiez les fichiers n&eacute;cessaires pour un service ftp anonyme 
depuis le r&eacute;pertoire "/home/ftp" du serveur d&eacute;j&agrave; configur&eacute;
dans les r&eacute;pertoires nouvellements cr&eacute;&eacute;s.</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
                cd     /home/ano-ftp/ftp.sharpers.com
                cp -a  /home/ftp/* .

                cd     ../ftp.swindlers.com
                cp -a  /home/ftp/* .

                cd     ../ftp.usurers.com
                cp -a  /home/ftp/* .
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P></P>
<P>N'oubliez pas d'effacer les fichiers superflus du r&eacute;pertoire 
"pub/" (ou simplement, ne les copiez pas).
Par exemple, le r&eacute;pertoire "/home/ftp" de la distribution 
Debian ressemble &agrave; ceci:</P>
<P></P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
        /home/ftp                       Permissions   Propr  Groupe Taille
                |-- bin                 d--x--x--x   2 root   root       
                |   |-- gzip            ---x--x--x   1 root   root   45121
                |   |-- ls              ---x--x--x   1 root   root   22945
                |   `-- tar             ---x--x--x   1 root   root   77769
                |
                |-- etc                 d--x--x--x   2 root   root       
                |   |-- group           -r--r--r--   1 root   root      18
                |   |-- passwd          -r--r--r--   1 root   root      44
                |   `-- pathmsg         -r--r--r--   1 root   root     172
                |
                |-- lib                 d--x--x--x   2 root   root
                |   |-- ld-linux.so.1   -r-xr-xr-x   1 root   root   21375
                |   |-- libc.so.5.2.18  -rwxr-xr-x   1 root   root  536252
                |   `-- libc.so.5 -&gt; libc.so.5.2.18
                |
                |-- pub                 dr-xr-xr-x   3 root   root
                |   `-- whatever
                |
                `-- welcome.msg         -rw-r--r--   1 root   root     323
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P></P>
<P></P>
<P>(c) Changez le r&eacute;pertoire de base du compte ftp anonyme 
par "/home/ano-ftp" en &eacute;ditant le fichier "/etc/passwd".</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
        ftp:*:11:11:Anonymous FTP:/home/ano-ftp:/bin/sh
                                  ^^^^^^^^^^^^^
                                repertoire de base
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P></P>
<P>Ces trois &eacute;tapes d&eacute;crivent la configuration minimale, et 
permettent d&eacute;j&agrave; la s&eacute;paration des zones ftp pour chacun des
3 hotes virtuels.
Mon travail actuel &eacute;tait un peu plus compliqu&eacute;, puisque j'ai
du activer les quotas sur les disques (limitant l'espace 
disque consommable par utilisateur/groupe) dans chacun des 
r&eacute;pertoires incoming, donc l'histoire continue:</P>
<P></P>
<P>(d) Activez les zones de t&eacute;l&eacute;chargement dans le fichier de 
configuration de wu-ftp "/etc/ftpd/ftpaccess"</P>
<P></P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
8&lt;----- couper ici 8&lt;-----
upload  /home/ano-ftp/www.sharpers.de  *         no
upload  /home/ano-ftp/www.sharpers.de  /incoming yes sharpers ftp 0660 nodirs
upload  /home/ano-ftp/www.swindlers.de *         no
upload  /home/ano-ftp/www.swindlers.de /incoming yes swindler ftp 0660 nodirs
upload  /home/ano-ftp/www.usurers.de   *         no
upload  /home/ano-ftp/www.usurers.de   /incoming yes usurers  ftp 0660 nodirs
#                                                |      |      |    |     |
#                    telechargements autorises --+      |      |    |     |
#     les fichiers telecharges appartiennent            |      |    |     |
#                            a cet utilisateur ---------+      |    |     |
#                          idem pour le groupe ----------------+    |     |
# droits d'acces pour les fichiers telecharges ---------------------+     |
#        creation de repertoires non autorisee ---------------------------+
8&lt;----- couper ici 8&lt;-----
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P></P>
<P>Maintenant, chaque fichier t&eacute;l&eacute;charg&eacute; sur ce serveur ftp 
appartient &agrave; un utilisateur s&eacute;par&eacute;, pour qui les quotas
peuvent etre activ&eacute;s.</P>
<P></P>
<P>(e) Configurer les quotas sur les disques.</P>
<P>Je vous sugg&egrave;re de lire: "/usr/doc/quotas.txt" et le Linux
"Quota mini-HOWTO".</P>
<P>* Ajoutez "usrquota=/etc/quota/ano-ftp.users" dans les 
options de montage de la partition "/home/an-ftp" qui se
trouve dans "/etc/fstab".</P>
<P>* Cr&eacute;&eacute;z "/etc/quota/ano-ftp.users" &agrave; l'aide de la commande
"touch".</P>
<P>* Activez les quotas par la commande "quotaon"</P>
<P>* Fixez les quotas avec "edquota swindlers", etc.</P>
<P>Quotas pour l'utilisateur swindlers:
<BLOCKQUOTE><CODE>
<PRE>
            /dev/sdb8: blocks in use: 0, limits (soft = 0, hard = 10000)
                       inodes in use: 1, limits (soft = 0, hard = 1000)
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P></P>
<P>L'espace disque  correspondant d&eacute;pend de la taille en block
du syst&egrave;me de fichier que vous avez cr&eacute;&eacute; (le standard est
1 block = 1 kb).</P>
<P></P>
<P></P>

<HR>
<P>
Chapitre <A HREF="Virtual-wu-ftpd-3.html">suivant</A>,
Chapitre <A HREF="Virtual-wu-ftpd-1.html">Pr&eacute;c&eacute;dent</A>
<P>
Table des mati&egrave;res de <A HREF="Virtual-wu-ftpd.html#toc2">ce chapitre</A>,
 <A HREF="Virtual-wu-ftpd.html#toc">Table des mati&egrave;res</A> g&eacute;n&eacute;rale</P>
<P>
<A HREF="Virtual-wu-ftpd.html">D&eacute;but</A> du document,
 <A HREF="#0"> D&eacute;but de ce chapitre</A></P>
</BODY>
</HTML>