Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| proftpd [Le 31/05/2012, 20:52] – [Bugs fréquents] ALXNVX_69 | proftpd [Le 18/02/2026, 18:35] (Version actuelle) – lien SFTP krodelabestiole | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | {{tag>Dapper Edgy Feisty Gutsy serveur réseau | + | {{tag>Xenial |
| - | + | ||
| - | ---- | + | |
| ====== Serveur FTP : PROFTPD ====== | ====== Serveur FTP : PROFTPD ====== | ||
| - | |||
| - | |||
| - | |||
| - | ===== Introduction ===== | ||
| Proftpd est sûrement l'un des meilleurs serveurs FTP disponibles. Il vous offrira énormément de possibilités mais n'est pas facile à maîtriser pour un débutant, | Proftpd est sûrement l'un des meilleurs serveurs FTP disponibles. Il vous offrira énormément de possibilités mais n'est pas facile à maîtriser pour un débutant, | ||
| - | donc pour utiliser la majorité des fonctions de proftpd sans trop de difficulté utilisez l' | ||
| - | |||
| - | |||
| - | |||
| - | |||
| + | <note warning> | ||
| + | Le niveau de sécurité par défaut du protocole FTP est extrêmement faible. Ce protocole est à juste titre considéré comme obsolète de nos jour et ne devrait globalement plus être utilisé, en particulier si le service doit être disponible sur [[: | ||
| + | </ | ||
| ===== Installation ===== | ===== Installation ===== | ||
| - | Pour installer le package, rien de plus simple, vérifiez que vos [[depots# | + | [[: |
| - | A la question « Lancer ProFTPd à partir d' | + | A la question « Lancer ProFTPd à partir d' |
| Et voilà, vous avez un serveur ftp, enfin presque ! | Et voilà, vous avez un serveur ftp, enfin presque ! | ||
| - | |||
| ===== Configuration ===== | ===== Configuration ===== | ||
| Ligne 32: | Ligne 22: | ||
| Voilà les paramètres intéressants à changer pour une utilisation de base (si vous voulez plus de détail référez-vous à la documentation) : | Voilà les paramètres intéressants à changer pour une utilisation de base (si vous voulez plus de détail référez-vous à la documentation) : | ||
| + | < | ||
| - | ServerName : le nom de votre serveur ftp | + | Quotas on : enlevez le #devant la ligne pour la décommenter si vous voulez utiliser les quotas |
| - | + | ||
| - | Quotas on : enlevez le # devant la ligne pour la décommenter si vous voulez utiliser les quotas | + | |
| - | Trouvez et décommentez les lignes suivantes (en retirant les # au début de chaque ligne) pour autoriser un accès anonyme " | + | Trouvez et décommentez les lignes suivantes (en retirant les #au début de chaque ligne) pour autoriser un accès anonyme " |
| - | < | + | < |
| < | < | ||
| | | ||
| | | ||
| - | # We want clients to be able to login with " | + | #We want clients to be able to login with " |
| | | ||
| - | # Cosmetic changes, all files belongs to ftp user | + | # |
| | | ||
| | | ||
| Ligne 51: | Ligne 40: | ||
| | | ||
| - | # Limit the maximum number of anonymous logins | + | # |
| | | ||
| - | # We want ' | + | #We want ' |
| - | # in each newly chdired directory. | + | #in each newly chdired directory. |
| | | ||
| | | ||
| - | # Limit WRITE everywhere in the anonymous chroot | + | # |
| < | < | ||
| < | < | ||
| Ligne 70: | Ligne 59: | ||
| Par contre, ne décommentez pas la suite (intitulée " | Par contre, ne décommentez pas la suite (intitulée " | ||
| - | Vous pouvez | + | Vous pouvez |
| - | | + | |
| Une fois la configuration modifiée, relancez le serveur avec la commande suivante : | Une fois la configuration modifiée, relancez le serveur avec la commande suivante : | ||
| sudo service proftpd restart | sudo service proftpd restart | ||
| + | ==== Configuration avec inetd ==== | ||
| + | [[: | ||
| + | Puis [[: | ||
| + | <file - / | ||
| + | Si vous n'avez pas installé proftpd avec l' | ||
| ==== Configuration pour le mode passif ==== | ==== Configuration pour le mode passif ==== | ||
| Ligne 84: | Ligne 77: | ||
| Concernant le transfert de fichiers en FTP il existe deux méthodes : passif ou actif | Concernant le transfert de fichiers en FTP il existe deux méthodes : passif ou actif | ||
| - | Le mode le plus simple est le transfert en mode actif, | + | Le mode le plus simple est le transfert en mode actif, |
| La deuxième méthode consiste à utiliser le mode passif : une plage de ports est utilisée, ces ports étant attribués selon la configuration du serveur et le nombre d' | La deuxième méthode consiste à utiliser le mode passif : une plage de ports est utilisée, ces ports étant attribués selon la configuration du serveur et le nombre d' | ||
| Ligne 105: | Ligne 98: | ||
| < | < | ||
| # | # | ||
| - | # / | + | #/ |
| - | # | + | # |
| ServerType standalone | ServerType standalone | ||
| MultilineRFC2228 on | MultilineRFC2228 on | ||
| - | # To prevent DoS attacks, set the maximum number of child processes | + | #To prevent DoS attacks, set the maximum number of child processes |
| - | # to 30. If you need to allow more than 30 concurrent connections | + | #to 30. If you need to allow more than 30 concurrent connections |
| - | # at once, simply increase this value. | + | #at once, simply increase this value. |
| - | # in standalone mode, in inetd mode you should use an inetd server | + | #in standalone mode, in inetd mode you should use an inetd server |
| - | # that allows you to limit maximum number of processes per service | + | #that allows you to limit maximum number of processes per service |
| - | # (such as xinetd) | + | #(such as xinetd) |
| MaxInstances 30 | MaxInstances 30 | ||
| - | # Some logging formats | + | #Some logging formats |
| LogFormat | LogFormat | ||
| LogFormat auth | LogFormat auth | ||
| LogFormat write | LogFormat write | ||
| - | # Global settings | + | #Global settings |
| < | < | ||
| Ligne 133: | Ligne 126: | ||
| ListOptions | ListOptions | ||
| DenyFilter \*.*/ | DenyFilter \*.*/ | ||
| - | # Utilisation de NIS ou LDAP: | + | # |
| # | # | ||
| - | # Utilisation de TLS: | + | # |
| #TLSEngine on | #TLSEngine on | ||
| - | # Utilisation des Quotas: | + | # |
| # | # | ||
| - | # Utilisation des Ratio: | + | # |
| # | # | ||
| Ligne 150: | Ligne 143: | ||
| MaxClients 50 | MaxClients 50 | ||
| - | # Umask 022 interdit l' | + | #Umask 022 interdit l' |
| Umask 022 | Umask 022 | ||
| TimeoutLogin | TimeoutLogin | ||
| Ligne 156: | Ligne 149: | ||
| TimeoutStalled 3600 | TimeoutStalled 3600 | ||
| TimeoutIdle 600 | TimeoutIdle 600 | ||
| - | # Delay engine reduces impact of the so-called Timing Attack described in | + | #Delay engine reduces impact of the so-called Timing Attack described in |
| - | # http:// | + | # |
| - | # It is on by default. | + | #It is on by default. |
| # | # | ||
| - | # utilisateur et groupe du serveur. | + | # |
| User ftp | User ftp | ||
| Group nogroup | Group nogroup | ||
| - | # Chroot PROFTPD | + | #Chroot PROFTPD |
| DefaultRoot ~ | DefaultRoot ~ | ||
| - | # Logging options | + | #Logging options |
| TransferLog / | TransferLog / | ||
| - | # Turn off Ident lookups | + | #Turn off Ident lookups |
| # | # | ||
| IdentLookups | IdentLookups | ||
| # | # | ||
| - | # Logging | + | #Logging |
| # | # | ||
| - | # file/dir access | + | #file/dir access |
| # | # | ||
| ExtendedLog / | ExtendedLog / | ||
| # | # | ||
| # | # | ||
| - | # Record all logins | + | #Record all logins |
| # | # | ||
| ExtendedLog / | ExtendedLog / | ||
| # | # | ||
| - | # Paranoia logging level.... | + | #Paranoia logging level.... |
| # | # | ||
| ## | ## | ||
| # | # | ||
| - | # Deny writing to the base server... | + | #Deny writing to the base server... |
| # | # | ||
| <Limit WRITE> | <Limit WRITE> | ||
| Ligne 197: | Ligne 190: | ||
| </ | </ | ||
| - | # -------------------------------------------- | + | # |
| - | # Got a Frontpage customer who keeps breaking things???? | + | #Got a Frontpage customer who keeps breaking things???? |
| - | # - stick 'em in group fpage | + | #- stick 'em in group fpage |
| - | # -------------------------------------------- | + | # |
| < | < | ||
| # | # | ||
| - | # Block them from doing anything other than reading... | + | #Block them from doing anything other than reading... |
| # | # | ||
| <Limit STOR RNFR DELE> | <Limit STOR RNFR DELE> | ||
| Ligne 210: | Ligne 203: | ||
| </ | </ | ||
| # | # | ||
| - | # ditto for ftp_root if it's there... | + | #ditto for ftp_root if it's there... |
| # | # | ||
| < | < | ||
| Ligne 218: | Ligne 211: | ||
| </ | </ | ||
| # | # | ||
| - | # Limit by IP... | + | #Limit by IP... |
| # | # | ||
| #< | #< | ||
| Ligne 233: | Ligne 226: | ||
| | | ||
| | | ||
| - | # | + | ##Alias pour la connection de l utilisateur anonyme |
| | | ||
| - | # | + | ## |
| | | ||
| - | # | + | ##Cosmetic changes, all files belongs to ftp user |
| | | ||
| | | ||
| - | # Hide all files owned by user ' | + | #Hide all files owned by user ' |
| | | ||
| - | # | + | # |
| | | ||
| - | # | + | # |
| - | # Message et nombre maximum de connections | + | #Message et nombre maximum de connections |
| MaxClients 50 " | MaxClients 50 " | ||
| - | # | + | ##Limit WRITE everywhere in the anonymous chroot |
| < | < | ||
| < | < | ||
| Ligne 264: | Ligne 257: | ||
| - | # Connexion anonyme et des utilisateur à partir du net de du réseau local | + | #Connexion anonyme et des utilisateur à partir du net de du réseau local |
| - | # -------------------------------------------- | + | # |
| < | < | ||
| ServerAdmin aide_gnu_linux@yahoo.fr | ServerAdmin aide_gnu_linux@yahoo.fr | ||
| ServerName " | ServerName " | ||
| - | # Port mode PASSV | + | #Port mode PASSV |
| PassivePorts 5000 5100 | PassivePorts 5000 5100 | ||
| - | # Addresse de Masquage !!! A REMPLACER PAR LA VOTRE !!! | + | #Addresse de Masquage !!! A REMPLACER PAR LA VOTRE !!! |
| MasqueradeAddress | MasqueradeAddress | ||
| Port 21 | Port 21 | ||
| Ligne 277: | Ligne 270: | ||
| </ | </ | ||
| - | # Hôte Virtuel Pour le réseau local | + | #Hôte Virtuel Pour le réseau local |
| - | # !!! A remplacer par l' | + | #!!! A remplacer par l' |
| - | < | + | |
| - | ServerName "FTP Local" | + | |
| - | Port 80 | + | |
| - | MasqueradeAddress | + | |
| - | </ | + | |
| - | </ | + | |
| ==== Redémarrer Proftpd ==== | ==== Redémarrer Proftpd ==== | ||
| Ligne 315: | Ligne 302: | ||
| ===== Bugs fréquents ===== | ===== Bugs fréquents ===== | ||
| + | |||
| + | ==== Activation de ProFTPd ==== | ||
| Il est possible que l'on n' | Il est possible que l'on n' | ||
| Ligne 323: | Ligne 312: | ||
| Tout devrait fonctionner maintenant. | Tout devrait fonctionner maintenant. | ||
| - | |||
| - | ===== Avertissements liés au mod_tls ===== | ||
| - | Fonctionnement vérifié sur Ubuntu 12.04 LTS (Precise Pangolin) | ||
| - | |||
| - | Si au démarrage de proftpd vous obtenez les messages d' | ||
| - | < | ||
| - | | ||
| - | | ||
| - | | ||
| - | </ | ||
| - | |||
| - | Rien de grave. Il s'agit de simples messages d' | ||
| - | Si toutefois vous souhaitez solutionner ces messages, il vous faudra procéder comme suit : | ||
| - | |||
| - | ==== Récupérer la bonne version pour OpenSSL ==== | ||
| - | |||
| - | Visiblement ProFTPd attend OpenSSL en version 1.0.0e. Nous avons de la chance car cette version est disponible dans les dépôts Oneiric. | ||
| - | |||
| - | Nous allons rajouter les dépôts Oneiric dans le fichier "/ | ||
| - | < | ||
| - | $ sudo nano / | ||
| - | </ | ||
| - | |||
| - | Et écrire la ligne suivante : | ||
| - | < | ||
| - | deb http:// | ||
| - | </ | ||
| - | |||
| - | Mais attention car seul le paquet " | ||
| - | Il va falloir créer (ou éditer s'il existe déjà) le fichiet / | ||
| - | < | ||
| - | $ sudo nano / | ||
| - | </ | ||
| - | |||
| - | Et définir les options en inscrivant les lignes suivantes : | ||
| - | < | ||
| - | | ||
| - | Pin: release n=oneiric | ||
| - | | ||
| - | |||
| - | | ||
| - | Pin: release n=oneiric | ||
| - | | ||
| - | |||
| - | | ||
| - | Pin: release n=oneiric | ||
| - | | ||
| - | |||
| - | | ||
| - | Pin: release n=oneiric | ||
| - | | ||
| - | |||
| - | | ||
| - | Pin: release n=oneiric | ||
| - | | ||
| - | </ | ||
| - | |||
| - | < | ||
| - | Package: le nom exact du paquet sur lequel nous allons agir | ||
| - | |||
| - | Pin: le dépôt du paquet | ||
| - | |||
| - | Pin-Priority: | ||
| - | |||
| - | Pour plus de détails, voir la manpage apt_preferences | ||
| - | |||
| - | Vous remarquez que d' | ||
| - | |||
| - | Les trois dernières lignes servent à ignorer les autres paquets du dépôts afin d' | ||
| - | </ | ||
| - | |||
| - | Ensuite il faut mettre à jour APT pour la prise en compte de ces valeurs : | ||
| - | < | ||
| - | $ sudo apt-get update | ||
| - | </ | ||
| - | |||
| - | Vérifions que les versions attendues des paquets remontent correctement : | ||
| - | < | ||
| - | $ sudo apt-cache show openssl | grep " | ||
| - | $ sudo apt-cache show libssl1.0.0 | grep " | ||
| - | $ sudo apt-cache show libssl-dev | grep " | ||
| - | $ sudo apt-cache show libssl-doc | grep " | ||
| - | </ | ||
| - | |||
| - | Vous devez voir apparaître à chaque fois la ligne suivante : | ||
| - | < | ||
| - | Version: 1.0.0e-2ubuntu4.6 | ||
| - | </ | ||
| - | |||
| - | Dans le cas contraire, il faut reprendre les fichiers de configuration " | ||
| - | |||
| - | Si les bons paquets s' | ||
| - | < | ||
| - | $ sudo apt-get install openssl libssl1.0.0 libssl-dev libssl-doc | ||
| - | </ | ||
| - | |||
| - | < | ||
| - | Les paquets les plus récents seront substitués par les paquets de la version souhaitée. | ||
| - | </ | ||
| - | |||
| - | ==== Maintenir l' | ||
| - | |||
| - | Pour être sûr qu' | ||
| - | |||
| - | Editez une nouvelle fois le fichier "/ | ||
| - | |||
| - | Ensuite il faut ré-éditer le fichier "/ | ||
| - | < | ||
| - | Package: openssl | ||
| - | Pin: release n=precise | ||
| - | Pin-Priority: | ||
| - | |||
| - | Package: libssl1.0.0 | ||
| - | Pin: release n=precise | ||
| - | Pin-Priority: | ||
| - | |||
| - | Package: libssl-dev | ||
| - | Pin: release n=precise | ||
| - | Pin-Priority: | ||
| - | |||
| - | Package: libssl-doc | ||
| - | Pin: release n=precise | ||
| - | Pin-Priority: | ||
| - | </ | ||
| - | |||
| - | < | ||
| - | Il est spécifié à APT de ne pas rechercher de mise à jour pour les paquets mentionnés. | ||
| - | </ | ||
| - | |||
| - | Recharger une nouvelle fois les sources de dépôts pour APT : | ||
| - | < | ||
| - | $ sudo apt-get update | ||
| - | </ | ||
| ==== Module memcache ==== | ==== Module memcache ==== | ||
| - | + | FIXME Il faut commenter le chargement du module memcache dans "/ | |
| - | Il faut commenter le chargement du module memcache dans "/ | + | |
| < | < | ||
| - | $ sudo / | + | $ sudo nano / |
| </ | </ | ||
| Ligne 469: | Ligne 324: | ||
| </ | </ | ||
| - | Ajouter un # en début de ligne. | + | Ajouter un #en début de ligne. |
| Redémarrer le service " | Redémarrer le service " | ||
| Ligne 480: | Ligne 335: | ||
| ---- | ---- | ||
| - | // | + | // |
