1 sur 15 17/06/2012 23:41 Home Nagios & Co Réseau IP GStreamer Hébergement Mes projets Annonceurs Contact Mail G+ Facebook Twitter RSS (5155 abonnés) Auteur: nicolargo Date: 12/01/2009 Catégories: Open-source Planet-libre Systeme Tags: ftp linux pure-ftpd serveur ftp ubuntu Un serveur FTP en 5 minutes chrono Nous allons dans ce billet détailler l'installation d'un serveur FTP sur une machine
2 sur 15 17/06/2012 23:41 tournant sous Ubuntu 10.04 (la procédure marche aussi sur d'autres versions). Le serveur FTP choisi est Pure-ftpd (je l'utilisai déjà sous FreeBSD et il est d'une stabilité à toutes épreuves). > top chrono Installation de Pure-ftpd Il y a plus dur: sudo apt-get install pure-ftpd pure-ftpd-common Suite à cette commande, le serveur FTP sera lancé automatiquement. L'ensemble des fichiers de configuration de Pure-ftpd se trouve dans le répertoire suivant: /etc/pure-ftpd/ Il faut ensuite créer l'utilisateur/groupe système avec lequel le serveur FTP sera lancé: sudo groupadd ftpgroup sudo useradd -g ftpgroup -d /dev/null -s /etc ftpuser Configuration de Pure-ftpd De base, Pure-ftpd base son authentification sur le PAM système puis sur un fichier de donnée interne. Personnellement et pour des raisons de sécurité, je préfère désactiver l'authentification par PAM. Pour cela il faut éditer le fichier conf/pamauthentication et remplacer la ligne yes par no: # sudo vi /etc/pure-ftpd/conf/pamauthentication no # sudo vi /etc/pure-ftpd/conf/dontresolve yes Pour finir, il faut créer un lien symbolique pour activer l authentification des utilisateurs virtuels : # cd /etc/pure-ftpd/auth/ # sudo ln -s../conf/puredb 50puredb Création d'un utilisateur FTP
3 sur 15 17/06/2012 23:41 Par exemple si vous voulez créer l'utilisateur ftp nicolargo dont le répertoire sera /home/ftp/nicolargo, il faut saisir les commandes suivantes: sudo mkdir /home/ftp/nicolargo sudo chown -R ftpuser:ftpgroup /home/ftp/nicolargo sudo pure-pw useradd nicolargo -u ftpuser -g ftpgroup -d /home/ftp /nicolargo Ces commandes vont avoir comme buts de créer un répertoire local puis de renseigner le fichier de configuration de Pure-ftp: /etc/pure-ftpd/pureftpd.passwd: # sudo cat /etc/pure-ftpd/pureftpd.passwd... nicolargo:$1$ucgvifa0$hfoang9vssnunerd3x4bj1:1001:1001::/home /ftp/nicolargo/./:::::::::::: Enfin il faut transofrmer ce fichier dans un format sécurisé et lisible par le serveur FTP (/etc/pure-ftpd/pureftpd.pdb): sudo pure-pw mkdb On relance alors le serveur pour que la configuration soit prse en compte: sudo /etc/init.d/pure-ftpd restart < fin du chrono! (5 minutes!!! ) Quelques commandes utiles... Voici quelques commandes utiles à l'administration de votre serveur FTP. Pour configurer le message affiché lors de la connexion des utilisateurs, il faut commencer par editer un fichier texte contenant le message: # sudo vi /etc/motd.pure-ftpd Bienvenue sur mon beau serveur FTP! Puis ajouter le chemin de ce fichier dans le fichier /etc/pure-ftpd/conf/fortunesfile: # sudo vi /etc/pure-ftpd/conf/fortunesfile /etc/motd.pure-ftpd Pour connaitre la liste des utilisateurs ayant un compte FTP:
4 sur 15 17/06/2012 23:41 # sudo pure-pw list nicolargo /home/ftp/nicolargo Pour changer le mot de passe d'un utilisateur: sudo pure-pw passwd nicolargo Pour supprimer le compte d'un utilisateur: sudo pure-pw userdel nicolargo Partager ce billet Tweeter 4 0 Like 5 0 Billets similaires Le Web 2.0 en vidéo Installation serveur FTP avec support LDAP Création d un serveur chez Gandi Mon système Home Cinema A propos de nicolargo Créateur de blog de Nicolargo, je suis un partisan des logiciels libres et un passionné des nouvelles technologies. Suivre @nicolargo sur Twitter S'abonner au flux RSS du blog 36 commentaires/références On parle de ce billet (ping back):
5 sur 15 17/06/2012 23:41 1. La veille du week-end (septième) LoïcG (#9585) Commentaires (de mes chers lecteurs): 1. WeedFast, le 12/01/2009 (#5595) J utilise VsFTPd depuis que je suis sous GNU/Linux, un peu plus compliquer à configurer, il est d une grande stabilité mais aussi très orienté vers la securité. J ai d ailleurs fait un petit billet sur celui-ci : http://ubunblox.servhome.org /installation-d-un-serveur-ftp-vsftpd.html Maintenant le plus dur est de savoir lequel des deux correspond le mieux aux besoins des utilisateurs!! Sinon beau travail, longue vie à toi et à ton blog 2. NicoLargo, le 12/01/2009 (#5596) @WeedCast: j avais testé VsFTPd (également sous FreeBSD) et effectivement la configuratyion n était pas (à l époque de mon test) des plus facile Je vais jeter un coup d oeil à ton article au cas ou A+ 3. David (Linux fan), le 16/01/2009 (#5636) Parfois j ai envie de passer sous Linux, mais c est un peu rebutant par rapport à juste cliquer sur install_machin.exe! 4. NicoLargo, le 16/01/2009 (#5639) @david: as tu déjà installé et configuré un serveur FTP sous Windows? Je peux te dire que celà va te prendre plus de 5 minutes
6 sur 15 17/06/2012 23:41 5. David (Linux fan), le 16/01/2009 (#5640) Oui je l ai fait. J ai installé GuildFTP y a longtemps puis Serv-U. On installe, on créé un utilisateur, le chemin où il va Tout à la souris. J ai mis (Linux fan) dans mon nom (d ailleurs ça rentre pas!) parce que j adore le monde du libre, mais il faut bien admettre que Linux nécessite un mode d emploi alors que Win et Mac sont plus intuitifs. 6. tango, le 5/02/2009 (#5877) Iop iop, J ai suivi ton tuto à la lettre et malgré tout, je n arrive pas à me logger sur mon serveur ftp, error 530. Sinon, très bon blog que je consulte régulièrement. bonne continuation. ++ 7. NicoLargo, le 5/02/2009 (#5878) @tango: l erreur 530 est la suivante: 530 User Cannot Log In, Home Directory Inaccessible. Login Failed. Bref tu dois avoir un pb avec le home dir de ton user 8. tango, le 5/02/2009 (#5879) En fait il manque ça dans ton tuto pour que ça fonctionne : Pour finir, il faut créer un lien symbolique pour activer l authentification des utilisateurs virtuels :
7 sur 15 17/06/2012 23:41 # cd /etc/pure-ftpd/auth/ # ln -s../conf/puredb 50puredb 9. NicoLargo, le 5/02/2009 (#5880) @tango: done 10. nicolas, le 13/02/2009 (#5937) ça ne fonctionne pas chez moi pourtant je pense avoir suivi ton tuto à la lettre! Échec lors de la tentative de connexion avec ECONNREFUSED Connection refused by server. une idée? 11. NicoLargo, le 13/02/2009 (#5939) @nicolas (sympa le prénom): peux être un Firewall sur ta machine serveur? ou alors antre ton client et ton serveur? 12. nicolas, le 13/02/2009 (#5943) la classe ce prenom :p Mon server et mon pc de bureau sont connectés chacun sur un port ethernet de ma neufbox le port 21 est ouvert vers l ip de mon serveur je seche.
8 sur 15 17/06/2012 23:41 13. NicoLargo, le 13/02/2009 (#5944) @nicolas: l ouverture du port 21 peut ne pas suffire http://blog.nicolargo.com/2008/04/ftp-actif-versus-ftp-passif.html Mais dans ton cas, si j ai bien compris, il n y a pas de Firewall 14. nicolas, le 13/02/2009 (#5945) it works! super! Merci pour 3 choses : - La qualité de tes billets - Ta gentillesse à répondre - Ta rapidité! 15. NicoLargo, le 13/02/2009 (#5946) @nicolas: de rien, entre nico 16. max, le 19/05/2009 (#6399) Merci, ça marche super bien! Bon tuto clair et concis! 17. Sandstorm, le 6/09/2009 (#6813)
9 sur 15 17/06/2012 23:41 Bonjour, Serait-il possible d ajouter à ce tuto rapide et efficace la manipulation à effectuer pour acceder à un autre dossier (il me semble que c est avec mount mais je n y connais vraiment rien ) D avance merci 18. polinux, le 14/04/2010 (#7947) bonjour et merci d avoir mis en ligne ta procedure j ai installé mon serveur ftp en suivant le tuto sous ubuntu 9.10. quel nom porte mon nouveau serveur et comment puis-je l atteindre d un autre pc du meme lan sous xp? par ex. avec filezilla 19. polinux, le 14/04/2010 (#7948) [resolu] j etais pas reveillé.ca marche tip top!! 20. driss, le 25/04/2010 (#8039) merci bcp pour ce tuto marche parfaitement avec ubuntu 9.10 21. Gob, le 10/05/2010 (#8181) Bonjour Nico, Petite question concernant ce tuto. Mes connaissances en linux ne sont pas forcement aussi pointues mais ça me titille quand-même. Pourquoi désactiver le PAM, si on utilise a la place puredb??
10 sur 15 17/06/2012 23:41 Comment faire pour utiliser dans ce cas les utilisateurs système, avec leurs droits respectifs, parce-que là.. tous les fichiers ftp de tous les utilisateurs confondus, appartiennent en réalité a un seul et unique user, le ftpuser. et là, niveau sécurité?! Tu me dis si je me trompe, mais comment utiliser ton tuto dans un environnement LAMP, hébergement mutualisé? Merci d avance ça pourrait servir a d autres. (sinon pour pas polluer la page, tu peut me répondre par mail) 22. NicoLargo, le 11/05/2010 (#8183) @Gob: ton message est bien là Je préfére utiliser les utilisateurs virtuel de Pure-ftpd afin de bien distinguer mes comptes Unix de mes comptes FTP. Par contre il est également possible d utiliser une authentification PAM (c est à dire avec les comptes système Unix). Il faut juste penser à éditer les fichiers suivants: # sudo echo yes > /etc/pure-ftpd/conf/pamauthentication # sudo echo yes > /etc/pure-ftpd/conf/chrooteveryone # sudo echo yes > /etc/pure-ftpd/conf/createhomedir a+ 23. beherit, le 28/05/2010 (#8317) salut. super tuto. j aurai toutefois une question. lorsque j essaye de me connecter sur mon serveur ftp il me sort ca: Le serveur a envoyé une réponse passive avec une adresse non routable. Utilisation de l adresse du serveur à la place sur certains logiciels en mode actif, cela resoud le problème, (mais c est rare). que faut il faire pour remedier à cela? merci
11 sur 15 17/06/2012 23:41 24. Geo40, le 29/10/2010 (#9281) Salut Nico, Merci pour ces tutos vraiment excellent. Je voulais savoir un petit truc sur ce serveur FTP, comment fait ton pour le rendre accesible depuis le net, car en local sa marche niquel. J ai débloqué le port 21 de ma box, mais sa ne suffit pas il faut modifier un fichier de conf non? Merci d avance. 25. NicoLargo, le 29/10/2010 (#9282) @Geo40: Cela dépend de ton architecture réseau. Si ton serveur à une adresse IP privée, il faut que tu configures ta box pour mettre cette adresse privée en DMZ. Tout les flux arrivant sur ta box seront alors redirigés vers ton serveur. En plus de cala il faut (peut être) ajouter des règles de Firewall pour autoriser les flux entrant vers ton serveur. La liste des ports à autoriser est consultable dans ce billet (FTP mode passif): http://blog.nicolargo.com/2008/04/ftp-actif-versus-ftp-passif.html 26. Geo40, le 29/10/2010 (#9283) Merci de ta réponse ultra rapide. Mon serveur en effet une @IP privée en 192.168.x.x. Donc je vois ce que je peux faire sur mon routeur. Je te tiens au courant de mon avancé. 27. Geo40, le 29/10/2010 (#9284) Désolé de faire le boulet mais bon, je demande quand même. Le lien que tu m as filé il parle de ftp passif ce que je voudrais mettre sur mon ftp sauf que je sais pas quels fichiers modifier de /etc/pure-ftpd/
12 sur 15 17/06/2012 23:41 28. NicoLargo, le 29/10/2010 (#9285) @Geo40: # echo 30000 32000 > /etc/pure-ftpd/conf/passiveportrange # sudo /etc/init.d/pure-ftpd restart 29. Geo40, le 29/10/2010 (#9286) Quand je redémarre mon serveur voici ce qu il me dit Restarting ftp server: /usr/sbin/pure-ftpd-wrapper: Invalid configuration file /etc/pure-ftpd/conf/passiveportrange: 30000 32000 not two numbers Je sais pas si c est correct mais je suis allez modifier le fichier /etc/pure-ftpd/conf /PassivePortRange (qui n existait pas avant ta modif, je sais pas si c est normal ou non ^^) et j ai supprimé les guillemets avant 30000 et après 32000. 30. Geo40, le 29/10/2010 (#9288) Merci de tes réponses mon serveur marche niquel. J ai deux questions par contre. Il y a moyen de mettre des droits car tout le monde peut supprimer up etc Et ma deuxième question c est y a t il moyen de partager un dossier autre que celui de l utilisateur (par exemple /home/user1/téléchargement en plus de /home/ftp) en mettant un lien ou autre 31. NicoLargo, le 29/10/2010 (#9289) @Geo40: Oui ces deux choses sont réalisables. Je te conseille la lecture de la documentation officielle plutôt bien faite:
13 sur 15 17/06/2012 23:41 http://www.pureftpd.org/project/pure-ftpd/doc Bonne lecture 32. tonreup, le 16/03/2011 (#11827) bon tuto, deux/trois lignes en plus pour TLS seraient utiles. Je viens de migrer quelques dizaines de serveurs sur pure-ftpd (qui avaient vsftpd avant) et j en suis très content. Surtout au niveau de certains bugs de vsftpd liés à TLS. 33. castet, le 19/07/2011 (#13059) dans le genre quick and easy http://www.commentcamarche.net/faq/6336-installer-un-serveur-ftp-sousubuntu#q=sebsauvage+installer+un+serveur+ftp+sous+ubuntu&cur=1& url=%2f 34. badmaniak, le 26/07/2011 (#13121) Merci fait et testé en 5 minutes top chrono. On en redemande des petites installations comme celle la, bravo Nico!! 35. amine, le 29/04/2012 (#15709) Vraiment Bravoooooooooooo et merciiiiiiiiii bien
14 sur 15 17/06/2012 23:41 Vous avez un compte Twitter? Cliquer sur le bouton ci-dessous pour vous enregistrer sur le blog en l'utilisant. Laisser un message Les informations saisies resteront privées NomVotre nom/pseudo * MailAdresse mail valide * URLVotre site web Commentaire Valider votre commentaire Merci de m'envoyer un mail quand de nouveaux commentaires sont postés. Rechercher sur ce blog Les archives 2012 juin mai avril mars février janvier 2011 2010 2009 2008 2007 2006
15 sur 15 17/06/2012 23:41 Licence Sauf mention spéciale, le contenu de ce site est distribué sous licence Creative Commons version BY 3.0. Ici on parle actualite Blog linux mac nagios Open-source système ubuntu Web wordpress Informations Open-source&Co depuis 2006 Email: contact {a} nicolargo {dot} com Twitter: @nicolargo Rss: http://blog.nicolargo.com/feed