Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
applications:vsftpd [Le 01/12/2006, 22:50]
86.211.32.206
— (Version actuelle)
Ligne 1: Ligne 1:
-  Toutes versions 
  
- 
-Rédigé par [[:​utilisateurs:​Ju]] 
- 
- 
-====== VsFTP, Very secure FTP ====== 
- 
-VsFTPd est un serveur FTP conçu avec la problématique d'une sécurité maximale. Contrairement aux autres serveurs FTP (ProFTPd, PureFTPd, etc.), aucune faille de sécurité n'a jamais été décelée dans VsFTPd. Ce serveur est notamment utilisé à grande échelle par des entreprises telles que Red Hat. 
- 
-La configuration __par défaut__ de VsFTPd est très restrictive :  
- 
-  - Seul le compte anonyme est autorisé à se connecter au serveur 
-  - En **lecture seule** 
-  - Les utilisateurs ne peuvent accéder à leur compte 
- 
-=== Remarques === 
-Aussi sécurisé que soit un serveur ftp, le protocole ftp en lui même **n'​est pas sûr** ! En effet l'​échange du nom d'​utilisateur et du mot de passe transite en clair sur le réseau. 
-Si vous utilisez ce serveur sur votre LAN pas de soucis, mais attention si vous comptez utiliser le serveur ftp depuis internet, de fait n'​utilisez pas un compte qui a les droits sudo via ftp (en fait n'​utilisez de l'​extérieur ce compte QUE via ssh ou tout autre protocole sécurisé, POPs, etc.) 
- 
- 
-===== Installation ===== 
- 
- 
-[[http://​packages.ubuntu.com/​hoary/​net/​vsftpd|vsftpd]] est dans le dépôt Main, le nom du paquet est **vsftpd** pour une installation vue [[Synaptic]]. 
-Pour installer VsFTPd en console, entrez la commande suivante dans un terminal : 
- 
-<​code>​ 
-sudo apt-get install vsftpd 
-</​code>​ 
- 
- 
-===== Configuration de vsftpd ===== 
- 
-La configuration de VsFTPd est centralisée dans un seul et même fichier ''/​etc/​vsftpd.conf''​. Choisissez votre éditeur de texte favori (en mode super utilisateur) et appliquez les modifications suivantes en fonction du mode de fonctionnement de VsFTPd. 
- 
- 
- 
- 
-  * Pour permettre à vos utilisateurs locaux (ceux qui ont un compte sur la machine) de se connecter au serveur et d'​écrire. 
-  ​ 
-  local_enable=YES 
-  write_enable=YES 
- 
- 
-  * Pour permettre la configuration du chmod par défaut que prendront les fichiers et les dossiers. 
-  
-  local_umask=077 
- 
-  - Valeur 002 : permet d'​avoir un chmod des dossiers en 775 et fichiers en 664 
-  - Valeur 022 : permet d'​avoir un chmod des dossiers en 755 et fichiers en 644 
-  - Valeur 077 : permet d'​avoir un chmod des dossiers en 777 et fichiers en 666 
- 
- 
- 
- 
-  * Vous pouvez personnaliser le texte de connexion au serveur  ​ 
-  
-    ftpd_banner=Bienvenue sur le serveur ftp de René 
- 
- 
- 
-  * Vous pouvez pour quelques utilisateurs privilégiés ne pas les '​emprisonner'​ dans leur dossier personnel gràce à la configuration suivante : 
- 
-  chroot_local_user=YES 
-  chroot_list_enable=YES 
-  ​ 
-  chroot_list_file=/​etc/​vsftpd.chroot_list 
- 
-Les login dans ///​etc/​vsftpd.chroot_list//​ auront le droit de naviguer en dehors de leur dossier personnel. 
- 
- 
-  * Pour avoir un monitoring ​ basic (voir les utilisateurs connectés) : 
- 
-   ​setproctitle_enable=YES 
- 
- ​Ensuite,​ pour voir la liste des utilisateurs il suffit de taper la commande suivante dans un terminal : 
- 
-   ps -aef | grep vsftpd 
- 
- 
- ​**Attention,​ tous les utilisateurs du système ayant accès à la commande "​ps" ​ pourront également visualiser la liste des utilisateurs connectés.** 
- 
-* Monitoring d'​après le fichier de log 
- 
- Aucun changement à effectuer dans vsftp.conf. Pas de problème de sécurité car la commande est accessible en mode super-utilisateur seulement. Tapez dans un terminal : 
-   sudo tail -f /​var/​log/​vsftpd.log 
- 
-Après chaque changement sur la configuration,​ pensez à relancer le serveur pour les prendre en compte : 
- 
-   sudo /​etc/​init.d/​vsftpd restart 
- 
- 
-Plus d'​infos sur la configuration de vsftpd: [[http://​vsftpd.beasts.org/​vsftpd_conf.html|Documentation vsFTPd]] 
- 
- 
-Note : Il est tout à fait possible d'​utiliser vsftpd avec xinetd (xinetd se chargeant de lancer le serveur ftp uniquement quand une connexion est demandée) si vous voulez savoir comment configurer xinetd dans ce cas : [[http://​debuntu.tuxfamily.org/​doku.php?​id=i-r_vsftpd|Debuntu]] 
- 
-Voici un lien avec une méthode très bien décrite sur la mise en place de vsftpd ainsi que de la création de compte avec des droits distincts : [[http://​www.andesi.org/​index.php?​node=121]] 
- 
- 
-==== Partage de dossier et chroot ==== 
- 
-Les utilisateurs étant chrootés dans leur home (ce n'est pas obligatoire mais conseillé) il faut trouver un moyen de leur permettre de naviguer dans un dossier a l'​exterieur de leur home.\\ 
-ls pour faire un lien symbolique ne fonctionne pas : problème de droit.\\ 
-La commande à utiliser est mount avec l'​option --bind 
- 
-  sudo mount --bind dossier_source dossier_ftp 
- 
-Pour l'​avoir au boot éditer ///​etc/​fstab//​ et ajouter : 
- 
-  /​dossier_ftp_cible /​dossier_ftp_source ​   none  bind,​defaults,​auto ​    ​0 ​   0 
- 
-===== vsftpd et SSL ===== 
-[[http://​www.brennan.id.au/​14-FTP_Server.html|Principale source d'​informations]] 
- 
-Un des défauts principal du protocole ftp est que les couples nom d'​utilisateur / mot de passe transitent en clair sur le réseau... 
- 
-Mais il est possible de mettre une couche supplementaire,​ ssl pour chiffrer les echanges d'​authentificationet et/ou de données 
- 
-Je vous invite à lire le fichier ///​usr/​share/​doc/​vsftpd/​README.ssl//​ qui vient avec vsftpd. Pour les mises en garde de sécurité. 
- 
-=== Création du certificat === 
- 
-Il vous faut le paquet //openssl// 
- 
- 
-   mkdir ~/​SSL-cert-vsftpd && cd ~/​SSL-cert-vsftpd ​ 
-   ​openssl req -x509 -nodes -days 730 -newkey rsa:1024 -keyout vsftpd.pem -out vsftpd.pem 
- 
-Openssl va vous poser quelques questions, la plus critique est celle ci :  
- 
-  Common Name (eg, YOUR name) []: 
- 
-Il faut écrire le nom ou l'ip que les clients utiliseront. ​ 
-Il est possible de faire un certificat signé par sa propre authorité de certification et donc générer des certificats valides, une fois que vos clients ont reconnu votre authorite de certification : [[http://​www.debian-administration.org/​articles/​284|Creating and Using a self signed SSL Certificates in debian]] 
- 
-Un certificat, vsftpd.pem, a été généré dans le dossier SSL-cert-vsftpd ​ de votre dossier personnel. 
- 
-Copions le dans ///​etc/​ssl/​certs///​ : 
-  sudo cp ~/​SSL-cert-vsftpd/​vsftpd.pem /​etc/​ssl/​certs/​ 
-Sécurisons le : 
-  sudo chown root:root /​etc/​ssl/​certs/​vsftpd.pem 
-  sudo chmod 600 /​etc/​ssl/​certs/​vsftpd.pem 
- 
-Note : vsftp s'​execute avec les droits de l'​utilisateur //nobody// mais il se lance en tant que root et donc lit le certificat en tant que root. 
- 
- 
- 
- 
-=== Configuration de vsftpd.conf / Partie SSL === 
-A la fin de votre fichier **/​etc/​vsftpd.conf** 
- 
-<​code>​ 
- 
-# Options for SSL 
-# encrypted connections. 
- 
-ssl_enable=YES 
-allow_anon_ssl=NO 
-force_local_data_ssl=NO ​ <--- vous pouvez mettre à "​YES"​ si vous utilisez kasablanca 
-force_local_logins_ssl=YES 
- 
-ssl_tlsv1=YES 
-ssl_sslv2=YES 
-ssl_sslv3=YES 
- 
-rsa_cert_file=/​etc/​ssl/​certs/​vsftpd.pem 
-</​code>​ 
-A priori un :  
-  sudo /​etc/​init.d/​vsftpd restart 
-devrait bien se passer. 
- 
- 
-===Les clients qui supportent ssl=== 
- 
-== Sous  Windows== 
- ​FileZilla ou smartFtP option :  "FTP over TLS Explicit" ​ 
-== Sous MacOS X== 
-CyberDuck option "​FTP-SSL (FTP over SSL/​TLS)"​ 
-==Sous Linux== 
-ftp-ssl - Le client ftp avec cryptage par SSL ou TLS 
- 
-kasablanca - Kasablanca est un client graphique FTP. Parmi ses fonctions, on peut citer le support du cryptage (par autentification TLS, et non SFTP),FXP (accès direct entre deux serveurs FTP,un gestionnaire de signets et un système de mise en queue. ​ 
-- Tourne sous Kde (mais aussi sous gnome avec les lib Kde) [[http://​kasablanca.berlios.de/​|home page]] 
- 
-gftp sous Debian/​Ubuntu ne supporte pas ssl [[http://​bugs.debian.org/​cgi-bin/​bugreport.cgi?​bug=251121|bug report]] 
-et... voila si vous en connaissez un autre... 
  • applications/vsftpd.1165009825.txt.gz
  • Dernière modification: Le 18/04/2011, 14:47
  • (modification externe)