# # /etc/proftpd.conf # ####################### # REGLAGES GENERAUX : # ####################### ServerName "FTP on WWW" # le démon reste en mémoire et écoute les connections ServerType standalone #ServerAdmin root@localhost # Utile surtout pour les "virtuals hosts" DefaultServer on # Autoriser l'usage de /etc/ftpusers pour interdire des users #TO DO: voir quels comptes sont à interdire UseFtpUsers on # cache l'identite du serveur ServerIdent on "FTP Server ready" DeferWelcome on # définition du port (standard) Port 21 # paramétrage réponse du serveur : large compatibilité avec les clients MultilineRFC2228 on # Nom et groupe de l'utilisateur sous lequel Proftpd est lancé : User nobody Group nogroup # Auth via PAM (par défaut) AuthPAM on AuthPAMConfig proftpd # Timeout (en secondes) : règle la fermeture de la connection automatiquement TimeoutStalled 300 TimeoutNoTransfer 300 TimeoutIdle 600 # Nombre de processus fils maximum que va utiliser proftpd : attention >30 attaque DoS MaxInstances 20 # Nombre maximum de clients simultanés MaxClients 10 # Nombre maximum de clients ayant le même login MaxClientsPerHost 2 DisplayLogin welcome.msg DisplayFirstChdir .message # Uncomment this if you would use quota module: ???? no doc #Quotas on ########################################################## ##################### # SUPPORT SSL/TLS : # ##################### #Sécurisation des transferts avec TLS - générer le certificat x509 via la commande : #openssl req -new -x509 -days 365 -nodes -out /etc/ssl/certs/proftpd.cert.pem -keyout /etc/ssl/certs/proftpd.key.pem TLSEngine on #On force toutes les connections avec ssl TLSRequired on # logs TLSLog /var/log/proftpd/proftpd.tls_log # Protocole TLSProtocol SSLv23 TLSOptions NoCertRequest # Certif et key TLSRSACertificateFile /etc/ssl/certs/proftpd.cert.pem TLSRSACertificateKeyFile /etc/ssl/certs/proftpd.key.pem TLSVerifyClient off ########################################################## ##################### # FORMATS LOGS : # ##################### LogFormat default "%h %l %u %t \"%r\" %s %b" # Log des logins #ExtendedLog /var/log/proftpd/proftpd.auth_log AUTH auth # Pour les parranos que nous sommes : ExtendedLog /var/log/proftpd/proftpd.paranoid_log ALL default #The TransferLog directive configures the full path to the "wu-ftpd style" file transfer log (par defaut) TransferLog /var/log/xferlog ########################################################## ##################### # CONTEXTES : # ##################### # Contexte GLOBAL : # Limite les accès depuis Intranet : adresses privées classe B Order Allow,Deny Allow from 192.168. DenyAll # Chrooter users : Les limiter à leur répertoire personnel DefaultRoot ~ # NB Pour interdire le ftp à un utilisateur : Ajoutez son nom à la liste contenue dans le fichiers /etc/ftpusers # Seul le propriétaire d'un fichier peut le modifier. Umask 022 022 # Messages à l'utilisateur AccessDenyMsg "Accès non autorisé pour l'utilisateur : %u." AccessGrantMsg "Bienvenue %u. sur mon FTP." ListOptions "-l" HiddenStor on # Authoriser la reprise des téléchargements : AllowStoreRestart on AllowRetrieveRestart on #Filtres DenyFilter \*.*/ ShowSymlinks on # Authorise l'écriture d'un fichier sur un fichier portant le même nom : AllowOverwrite on DenyAll HideNoAccess on # Filtrage par IP internes : Order Allow,Deny Allow from 192.168. # DenyAll IgnoreHidden on # Contexte Pages Persos : # # # AllowAll # IgnoreHidden on # # ########################################################## ##################### # OPTIONS SUP.: # ##################### #Limiter la bande passante : version Sarge #TransferRate [commande] [débit] [utilisateur/groupe] [nom de l'utilisateur/du groupe] #pour limiter l'upload à 1Mo/sec pour tout le monde et le download à 2Mo/sec pour l'utilisateur bar on fera : #TransferRate APPE,STOR 1048576 #TransferRate RETR 2097152 user foo ########################################################## ##################### # LIMIT OPTIONS: # ##################### # CWD Pour changer de répertoire courant # CDUP Pour remonter d'un niveau de répertoire # RETR Permet de demander l'envoie d'une copie du fichier passé en argument. # STOR Permet d'envoyer un fichier à stocker sur le serveur FTP distant. # RNFR Spécifie l'ancien nom du fichier à renommer. Doit être immédiatement suivit par la commande RNTO. # RNTO Spécifie le nouveau nom du fichier. Ces deux commandes permettent de renommer un fichier. # DELE Permet d'effacer un fichier. # DELE Permet d'effacer un fichier. # RMD Permet d'effacer un répertoire. # MKD Permet de créer un répertoire. # PWD Permet d'obtenir le nom du répertoire courant. # LIST Permet d'obtenir la liste des fichiers du répertoire en paramètre, ou des détails sur le fichier dont le nom a été passé en paramètre. # NLST Idem LIST, mais ne retourne pas d'informations sur les fichiers, seulement leur nom.