{"id":63,"date":"2017-08-08T16:17:00","date_gmt":"2017-08-08T14:17:00","guid":{"rendered":"http:\/\/devinfo.kenn.udona.fr\/blog\/?p=63"},"modified":"2021-07-13T13:30:58","modified_gmt":"2021-07-13T11:30:58","slug":"installer-serveur-ftp-proftpd-utilisateurs-virtuels","status":"publish","type":"post","link":"https:\/\/udona.fr\/blog\/installer-serveur-ftp-proftpd-utilisateurs-virtuels\/","title":{"rendered":"Installer un serveur FTP Proftpd avec utilisateurs virtuels"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Avoir un <strong>serveur FTP<\/strong> est bien utile pour <strong>transf\u00e9rer les fichiers<\/strong> de vos sites.<br>Nous allons mettre en place un <strong>serveur FTP avec Proftpd<\/strong>, avec seulement des <strong>utilisateurs virtuels<\/strong>, sur Debian 9 Stretch.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">Ce tutoriel est bien utile et peut \u00eatre <strong>combin\u00e9<\/strong> avec le tutoriel sur <a href=\"https:\/\/udona.fr\/sysadmin\/installer-serveur-web-lamp-debian-9-stretch\/\">Installer un serveur LAMP sur Debian 9 stretch<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dans ce tutoriel, nous parlerons d&rsquo;<strong>utilisateurs virtuels<\/strong> donc pas d&rsquo;acc\u00e8s ssh pour les utilisateurs.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Installation et configuration de Proftpd<\/h2>\n\n\n\n<pre class=\"wp-block-preformatted\"># installation Proftpd\napt-get update &amp;&amp; apt-get install proftpd<\/pre>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"http:\/\/udona.fr\/wp-content\/uploads\/2017\/08\/install_proftpd-2.png\" alt=\"\" class=\"wp-image-188\"\/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Durant l&rsquo;installation nous choisirons d&rsquo;installer la version \u00ab\u00a0<strong>Standalone<\/strong>\u00a0\u00bb ou \u00ab\u00a0<strong>Ind\u00e9pendamment<\/strong>\u00ab\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Maintenant passons \u00e0 la configuration du serveur ftp.<br>On va faire en sorte que <strong>chaque<\/strong> utilisateur ftp ne puisse <strong>pas sortir de leurs r\u00e9pertoires assign\u00e9<\/strong>s, on peut \u00e9galement modifier le port d&rsquo;\u00e9coute et il faut d\u00e9clarer un fichier pour g\u00e9rer les utilisateurs.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"># vim \/etc\/proftpd\/proftpd.conf\n\n# Il faut d\u00e9-comment\u00e9 cette ligne \/\/ Pour bloquer l'utilisateur dans son r\u00e9pertoire\nDefaultRoot\t\t~\n\n# Modification du port par d\u00e9faut\nport 21\n\n# Il faut d\u00e9-comment\u00e9 cette ligne \/\/ Pour active le passive port\nPassivPorts XXXX XXXX\n\n# Ajout \u00e0 la fin du fichier \/\/ Pour g\u00e9rer les utilisateurs\nAuthUserFile    \/etc\/ftpd.passwd<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Attention : Si vous utiliser un pare-feu sur votre serveur, il faut penser \u00e0 ouvrir la plage de port du PassivPort de votre pare-feu.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Avec Proftpd, les utilisateurs ont besoin d&rsquo;avoir un <strong>shell actif<\/strong>. Dans notre cas nous ne voulons pas qu&rsquo;il ait c&rsquo;est droits, donc nous allons cr\u00e9er un shell bidon qui sera attribuer \u00e0 tous les utilisateurs ftp.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"># vim \/etc\/shells\n\n# Ajout \u00e0 la fin \/\/\n\/bin\/false<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Ajout d&rsquo;un utilisateur<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Nous allons ajouter notre <strong>premier utilisateur ftp<\/strong>. Pour cela, on se rend dans \/etc pour cr\u00e9er le fichier que nous avons d\u00e9clarer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Je vais d\u00e9composer les toutes les options de la commande,&nbsp;<strong>&nbsp;(&#8211;name= nom de l&rsquo;utilisateur) (&#8211;uid= &amp; &#8211;gid= ID de l&rsquo;utilisateur et du groupe) (&#8211;home= R\u00e9pertoire d&rsquo;acc\u00e8s) (&#8211;shell= Sont shell bidon)<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"># (--name= nom de l'utilisateur) (--uid= &amp; --gid= ID de l'utilisateur et du groupe) (--home= R\u00e9pertoire d'acc\u00e8s) (--shell= Sont shell bidon)\t\t\nftpasswd --passwd --name=vdemo --uid=33 --gid=33 --home=\/var\/www --shell=\/bin\/false --file=\/etc\/ftpd.passwd<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Dans l&rsquo;exemple ci-dessus, pour l&rsquo;utilisateur vdemo j&rsquo;ai choisi en <strong>uid et gid<\/strong> (<strong>33<\/strong>) qui est le groupe <strong>www-data<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Vous ne pourrez donc <strong>modifier seulement<\/strong> les dossiers et fichiers ayant comme propri\u00e9taire www-data (33).<br>Petit rappel de comment modifier le propri\u00e9taire d&rsquo;un fichier ou d&rsquo;un r\u00e9pertoire.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">chown 33:33 -R \/var\/www\/mondossier<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Enfin il ne reste plus qu&rsquo;\u00e0 red\u00e9marrer le serveur Proftpd<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">service proftpd restart<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Les informations des utilisateurs sont stock\u00e9es dans un fichier, \u00e0 raison de un utilisateur par ligne, vous pouvez modifier les utilisateurs, et il suffit juste de red\u00e9marrer le serveur ftp \u00e0 chaque modification de ce fichier.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"># nano \/etc\/ftpd.passwd\n\nvdemo:fdgfdg$koNffdggmdfgfdgAeBBbfg0fgd:33:33::\/var\/www\/mondossier:\/bin\/false\n\nservice proftpd restart<\/pre>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Nous avons d\u00e8s \u00e0 pr\u00e9sent, <strong>un serveur FTP multi utilisateur<\/strong> complet sur Debian 9 stretch. Une \u00e9volution du tutoriel est possible si on souhaite y rajouter <strong>un certificat SSL\/TLS<\/strong>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Avoir un serveur FTP est bien utile pour transf\u00e9rer les fichiers de vos sites.Nous allons mettre en place un serveur FTP avec Proftpd, avec seulement des utilisateurs virtuels, sur Debian 9 Stretch. Ce tutoriel est bien utile et peut \u00eatre combin\u00e9 avec le tutoriel sur Installer un serveur LAMP sur Debian 9 stretch. Dans ce [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":88,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,24],"tags":[23,28],"class_list":["post-63","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux","category-debian","tag-ftp","tag-proftpd"],"_links":{"self":[{"href":"https:\/\/udona.fr\/blog\/wp-json\/wp\/v2\/posts\/63","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/udona.fr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/udona.fr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/udona.fr\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/udona.fr\/blog\/wp-json\/wp\/v2\/comments?post=63"}],"version-history":[{"count":1,"href":"https:\/\/udona.fr\/blog\/wp-json\/wp\/v2\/posts\/63\/revisions"}],"predecessor-version":[{"id":64,"href":"https:\/\/udona.fr\/blog\/wp-json\/wp\/v2\/posts\/63\/revisions\/64"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/udona.fr\/blog\/wp-json\/wp\/v2\/media\/88"}],"wp:attachment":[{"href":"https:\/\/udona.fr\/blog\/wp-json\/wp\/v2\/media?parent=63"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/udona.fr\/blog\/wp-json\/wp\/v2\/categories?post=63"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/udona.fr\/blog\/wp-json\/wp\/v2\/tags?post=63"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}