WikiBtsSio

142sSi51tsioCTpProFtpdApacheMe

T.P. Proftpd




Contexte : L'entreprise Lv souhaite donner accès à ses commerciaux aux tarifications des produits.
Proposez une solution technique de partage de fichiers entre l'entreprise et ses collaborateurs.

Parmi les solutions proposées : Cloud (DropBox?), FTP, messagerie, serveur Web ....
on va s'intéresser à la mise en place d'un F.T.P.

L'objectif : Nous allons travailler sur une machine Debian et installer un service F.T.P.

Mettez en fonctionnement la machine DebianMoi habituelle.

Nous allons tout d'abord se mettre sur le réseau, pour cela
1) quelle est le nom de votre interface ethernet ?
mii-tool --> ethx

Si problème ...
> rm /etc/udev/rules.d/70-persistent-net.rules puis redémarrez
Ensuite mii-tool doit fonctionner

2) vérifiez que vous êtes en mode pont dans VirtualBox

3) Lancez la commande dhclient ethx

4 ) vérifiez que vous avez une adresse IP dans la salle
ifconfig

5) mettez à jour la machine Debian
apt-get update
apt-get upgrade
Prévoir un temps certain ...

questionnement (pendant :
• Que veut dire l'acronyme FTP ?
• Citer quelques applications des serveurs FTP ?
• Dans le cadre du protocole FTP, quels sont les numéros de port associés ? Et leur rôles distincts ?
• Connaissez-vous d'autre protocoles de transfert de fichiers ?
Donnez la différence majeure entre ces protocoles ?
• Citer quelques exemples de serveur de fichiers ? Et les caractériser ?
(nom, très bref historique, domaine d'utilisation, tendances)


Maintenant nous allons installer le package du service FTP,
nous avons choisi le package de proftpd.

apt-cache search proftpd
Liste de paquets proftpd ...

apt-get install proftpd
installer en mode indépendant.

Si nécessaire ... pour désinstaller entièrement un package
apt-get remove --purge le-nom-du-logiciel

Pour vous connecter au service :
ftp localhost
user test
mot de passe test

Plus intéressant
vous connecter sur la machine de votre voisin ...
ftp adresse IP de votre voisin
par exemple ftp 192.168.27.77

help vous donnera la liste des principales commandes.
Comment envoyer un fichier ? recevoir un fichier ?

Maintenant il faut vérifier le fonctionnement de votre serveur FTP.
Pour cela plusieurs clients sont possible :
- en ligne de commande (c.f. plus haut)
- client windows, par exemple avec un navigateur ftp://192.168.0.47/
- client linux, idem qu'au dessus
- FileZilla client (il existe une version serveur).
- client ftp pour firefox : https://addons.mozilla.org/fr/firefox/addon/fireftp/
fireftp.

Testez les différentes solution en détaillant les commandes, procédures
pour se connecter, envoyer et recevoir un fichier.


Compléments :
Le fichier de configuration se trouve ici : /etc/proftpd/proftpd.conf
Valider la ligne suivante (c'est à dire supprimer le #) : DefaultRoot ~
ATTENTION ! pensez à relancer le logiciel proftpd
saisir la commande /etc/init.d/proftpd restart

Que constatez-vous ?
(vous utiliserez les commandes dir et pwd).

Comment créer un client anonyme (c'est à dire sans mot de passe) ?


Seconde partie

Installer apache2 (c.f. au dessus)

tester le serveur : http://adresse.I.P.
par exemple http://192.168.27.177
(Sous Linux, Windows ...).

Le répertoire qui va contenir les fichiers du serveur est /var/www
Créer un fichier index.htm ou index.php en fonction de vos connaissances.
Attention pour le PHP il faut installer le module php ...


Question : Comment faire pour associer le site web de l'utilisateur test
à l'URL http://192.168.0.47/test/ ?

Nous vous proposons la solution suivante :
Allons dans le répertoire de l'usager test (/home/test/)
créer le répertoire siteweb
(ceci pour lui permettre de déposer ses fichiers web grâce à ftp !).
mkdir siteweb

Ensuite aller dans le répertoire /var/www/
et saisir la commande ln -s /home/test/siteweb/ test

Maintenant le site web de l'utilisateur test est accessible grâce à l'U.R.L.
http://192.168.0.47/test/

Que fait la commande précédente ?


Je vous propose de créer un utilisateur anonymous, pour cela modifier
le fichier /etc/proftpd/proftpd.conf de la manière suivante :

<Anonymous ~ftp>
  User                         ftp
  Group                                nogroup
  # We want clients to be able to login with "anonymous" as well as "ftp"
  UserAlias                    anonymous ftp
  # Cosmetic changes, all files belongs to ftp user
  DirFakeUser  on ftp
  DirFakeGroup on ftp

  RequireValidShell            off

  # Limit the maximum number of anonymous logins
  MaxClients                   10

  # We want 'welcome.msg' displayed at login, and '.message' displayed
  # in each newly chdired directory.
  DisplayLogin         welcome.msg
  DisplayChdir         .message
</Anonymous>


Tester en vous connectant en anonyme et vérifier ce qui est enregistré
dans le fichier de log de proftpd : /var/log/proftpd/proftpd.log*