Debian - ProFTPd - Utilisateur virtuel...

loudgi Messages postés 538 Statut Membre -  
loudgi Messages postés 538 Statut Membre -
Bonjour,
ça fait environs 1 mois que je bosse sur cette activité consistant à :

Installer un serveur FTP ( ProFTPd )
Qui doit accepter les connections anonymes et utilisateur système.
Mais il doit pouvoir gerer les utilisateurs virtuels également, afin de créer un compte virtuel qui aurat les droits d'upload.

Si j'ai pas été assez précis merci de me le dire

J'ai surffer à la recherche du "Ze tuto" mais bon tous .... humm
je demande votre aide now, vous les membres de CCM ;-)

Merci d'aller Pas à pas :-)
A voir également:

4 réponses

loudgi Messages postés 538 Statut Membre 40
 
Ma config Virtuel
------------------------
# VirtualHost Réservé au webmaster. Adresse du serveur FTP.
<VirtualHost 10.99.98.3>

# Nom du serveur FTP Réservé au webmaster.
ServerName "Server FTP Admin de Ldg-serv"

# Port différent de celui utilisé par Anonymous (21) et les utilisateurs locaux.
Port 2121

# Option de logging pour cette zone vers ce fichier.
TransferLog /var/log/proftpd/proftpd-admin.log

# Pour limiter le nombre de tentatives de login.
MaxLoginAttempts 3

# ProFTPd vérifie si l'utilisateur à bien un shell valide.
RequireValidShell on

# Accepte uniquement le login webmaster.
<Limit LOGIN>
Order Allow,Deny
AllowUser loudgi evan
Deny from all
</Limit>

# Permet de chrooter les autres personnes que webmaster, malgré
# la restriction de login ci-dessus.
DefaultRoot ~ !ftp

AccessGrantMsg "Bienvenue %u sur le Serveur FTP Admin"

# Autorise seulement ces deux commandes dans /
<Directory />
<Limit CWD DIRS>
Allow 10.99.98.0/24
#Allow 192.168.1.0/24
</Limit>

<Limit ALL>
DenyAll
</Limit>
</Directory>

# Refuse toutes les commandes dans /var/www/html/webmail.
<Directory /var/www/html/webmail>
<Limit ALL>
DenyAll
</Limit>
</Directory>

# Autorise toutes les commandes dans /var/www/html.
#<Directory /var/www/html>
#<Limit ALL>
#AllowAll
#</Limit>
#</Directory>

# Autorise toutes les commandes dans /var/www/cgi-bin.
<Directory /home/ftp>
<Limit ALL>
AllowAll
</Limit>
</Directory>

# Autorise toutes les commandes dans /var/log/apache.
<Directory /var/log/apache>
<Limit ALL>
AllowAll
</Limit>
</Directory>

</VirtualHost>


# VirtualHost Réservé aux Anonymous.
<VirtualHost 10.99.98.3>

# Nom du serveur FTP Réservé aux Anonymous.
ServerName "Server FTP Public"

Port 21
Umask 027

# Option de logging pour cette zone vers ce fichier.
TransferLog /var/log/proftpd/proftpd-anonymous.log

# Permet de ne pas vérifier l'identité du login amonymous.
IdentLookups off

# Refuse la connexion des Utilisateurs disposant d'un login, pour autoriser seulement les connexions Amonymous.
#<Limit LOGIN>
#DenyAll
#</Limit>

# Limite le nombre des clients différents qui peuvent se connecter.
MaxClients 3 "Sorry, max %m users -- try again later"

AccessGrantMsg "Bienvenue %u sur le Serveur FTP Public"

Include /etc/proftpd/proftpd-anonymous.conf

</VirtualHost>
1
loudgi Messages postés 538 Statut Membre 40
 
Et enfin config Anonyme :
-----------------------------------
# Connecte les Anonymous vers /home/ftp
<Anonymous ~ftp>

User ftp
Group ftp

# Fait d'anonymous un alias à ftp, en se logant sous anonymous, ils sont appelés ftp.
UserAlias anonymous ftp

# Ignore la vérification d'un shell pour anonymous.
RequireValidShell off

# Permet de ne pas rechercher dans le système, le mot de passe.
AnonRequirePassword off

# Pour qu'un message soit affiché à la connexion vous pouvez créer un fichier 'welcome.msg' à la racine (ici ~ftp/pub).
DisplayLogin welcome.msg

# Pour signaler que le client est remonté à la racine vous pouvez créer un fichier '.message' qui s'affichera.
DisplayFirstChdir message

# Permet de cacher tous les fichiers appartenant à "root".
HideUser root
HideGroup root

# Limite la bande passante à 30K/s pour les commandes suivantes.
# Ne limite pas la bande passante pour des fichiers inférieur ou égal à 1000KB.
TransferRate APPE,STOR,RETR,STOU 30.0:1024000

<Limit LOGIN>
AllowAll
</Limit>

# Limite les commandes suivantes :
# De renommer, de supprimer des fichiers des répertoires, changer les permissions, d'écrire ...
<Limit RNFR RNTO DELE RMD CHMOD SITE_CHMOD WRITE SITE XCUP XRMD XPWD>
DenyAll
</Limit>

# Autorise l'upload vers le répertoire uploads uniquement.
#<Directory uploads/*>

#<Limit READ>
#DenyAll
#</Limit>

# Autorise le stockage de fichiers et création de répertoires mais pas l'effacement.
#<Limit STOR MKD>
#AllowAll
#</Limit>

#</Directory>

</Anonymous>
0
anonymous_guard Messages postés 137 Statut Membre 21
 
Bonjour,

Je te conseilles d'utiliser VSFTPD c'est mieux.

Mais pour Proftpd, il faut monter dans /fstab la partition dont tu veux créer ton dossier virtuels.
0
loudgi Messages postés 538 Statut Membre 40
 
Mais pourquoi VsFtpd ? on dit que c'est plus sécu mais est ce vrai ? ou son les tests ?

Et puis je suis déja arrivé telment loin avec ProFtpd lol
0
anonymous_guard Messages postés 137 Statut Membre 21
 
D'accord, laisses tomber le Vsftpd!

Est ce que t'as monté les partitions virtuelles sous fstab?
0
loudgi Messages postés 538 Statut Membre 40 > anonymous_guard Messages postés 137 Statut Membre
 
voici ma config :
----------------------
# Nom du serveur FTP des utilisateurs locaux.
ServerName "Server FTP loudgiserv"

# Port d'écoute pour le serveur FTP des utilisateurs locaux.
# le port 21 sera réservé pour les connections anonymous.
Port 2111

# email de l'administrateur ProFTPd.
ServerAdmin loudgi@nospam.lol

# "standalone" signifie que c'est moi qui démarre le serveur par la commande /etc/init.d/proftpd start
# "inetd" signifie que c'est par le meta-deamon xinetd qu'il sera démarré.
#(bien mettre inetd meme si le meta-deamon s'appel xinetd).
ServerType standalone

# Est utile que si l'on veut utiliser des VirtualHosts, sinon ce n'est pas la peine de l'indiquer.
DefaultServer on

# Autorise les clients à reprendre les Uploads vers vous.
# A déactiver si on n'autorise pas les Uploads.
AllowStoreRestart on

# Autorise la reprise des téléchargements.
AllowRetrieveRestart on

# Pour éviter d'être vulnérable aux attaques de type DoS laissez le nombre de processus enfants à 30 maximum.
# Ce paramètre n'est valable que si vous fonctionnez en mode "standalone"
# Si vous êtes en mode "inetd" vous devrez configurer le nombre de processus enfants maximum dans le server xinetd.
MaxInstances 30

# Permet au serveur de rechercher lui même dans /etc/passwd la validité des
# mots de passe (Utile pour NIS). Laisser par défaut sur "off".
PersistentPasswd off

# Active un arrangement des lignes pour plus de compatibilité.
MultilineRFC2228 on

# Evite le blocage de ProFTPd pendant le temps de réponse de résolution DNS.
UseReverseDNS off

# Option de logging pour cette zone vers ce fichier.
TransferLog /var/log/proftpd/proftpd-ldg.log

# Formats des logs.
LogFormat default "%h %l %u %t \"%r\" %s %b"
LogFormat auth "%v [%P] %h %t \"%r\" %s"
LogFormat write "%h %l %u %t \"%r\" %s %b"

# Permet de chrooter les utilisateurs FTP locaux dans leur home directory.
DefaultRoot ~


# Tout ce qui est défini dans <Global> s'applique à l'ensemble du contexte de configuration, même VirtualHost.
<Global>

# Règle sous quel User et Group sera lancer le serveur FTP.
User nobody
Group nogroup

# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask 022 022

# Définit la plage des ports passifs que ProFTPd utilisera pour répondre aux clients.
PassivePorts 49152 65534

# Enregistre les accès sur les fichiers et répertoires.
ExtendedLog /var/log/proftpd/access.log WRITE,READ write

# Enregistre tout les logins.
ExtendedLog /var/log/proftpd/auth.log AUTH auth

# Force l'option de directory listings (NLST, LIST et STAT) à -l
ListOptions "-l"

# Autorise le remplacement d'anciens fichiers par des nouveaux, si l'utilisateur à le droit en écriture bien sur.
<Directory />
AllowOverwrite on
</Directory>

# Permet de ne pas donner d'informations sur le serveur.
DeferWelcome off

# On indique au serveur FTP d'utiliser ou non le fichier /etc/ftpusers pour savoir qui a le droit de se connecter.
# Par défaut ce fichier est utilisé par ProFTPd.
UseFtpUsers on

# Le premier message qui sera affiché quand quelqu'un se connectera
ServerIdent on "Server FTP ready"

# Message d'accueil
AccessGrantMsg "Bienvenue %u sur ldg-serv"

# Autorise le téléchargement ou upload distant directement depuis un autre serveur FTP sans passer par le PC de l'user.
AllowForeignAddress on

# Permet de déconnecter le client au bout de "x" secondes :
#
# S'il n'y a aucune activité de son coté.
TimeoutIdle 600

# S'il n'y a aucune activité entre la saisie du login et du passwd.
TimeoutLogin 300

# S'il n'opère aucun transfert.
TimeoutNoTransfer 300

# S'il a stoppé le transfert.
TimeoutStalled 3600

# Autorise seulement les noms de fichiers normaux (caractères alphanumérique) et non des codes shell.
PathAllowFilter "[a-zA-Z0-9]"

# Refuse l'upload de fichiers .ftpaccess ou .htaccess
#PathDenyFilter "(\.ftp)|(\.hta)[a-z]+$"

# N'autorise pas de passer des printf-Formats.
AllowFilter "^[a-zA-Z0-9@~ /,_.-]*$"
DenyFilter "%"

# Cache les liens symboliques.
ShowSymlinks off


</Global>

# Permet de prendre en compte le fichier suivant.
Include /etc/proftpd/proftpd-vhost.conf
0
loudgi Messages postés 538 Statut Membre 40
 
Jusque la ça plante pas

Mais le prob c'est que sur le PORT admin, bha j'arrive pas à Modifier

quelqu'un peut m'aider ?
0