IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Sécurité Discussion :

[Proftpd] : FTPS


Sujet :

Sécurité

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 24
    Points : 42
    Points
    42
    Par défaut [Proftpd] : FTPS
    Bonjour, souhaitant mettre en place un serveur FTP sur mon tout nouveau serveur sous une GNU/Linux construite avec LFS (Linux From Scratch, ou comment construire un système d'exploitation GNU/Linux en compilant chacun de ses paquets un par un, y compris GCC, binutils, Glibc, Linux et autres prises de têtes :Þ), j'ai tout de suite opté pour Proftpd, mais je me retrouve face au même problème de configuration que je découvrais sous Debian: La mise en place de connections FTPS:
    tout d'abord je voudrais un FTPS implicite, bien que pour le moment aucun des deux ne fonctionne, ensuite je voudrais qu'il offre un accès anonymous.

    Donc, le seul problème c'est que... malgré ma configuration qui normalement devrait fonctionner... àa ne fonctionne toujours pas, comme si le FTPS n'était pas là, je précise qu'à la compilation j'ai compilé avec proftpd avec ses modules postgresql, sftp et ftps.

    Donc voici mes fichiers de configuration:

    /etc/proftpd/proftpd.conf:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     
    [21:23:01]root@server-713:[ ~ ]# cat /etc/proftpd/proftpd.conf
    # Begin /etc/proftpd/proftpd.conf
     
    ServerName                      "ftp.galex-713.42"
    ServerType                      standalone
    DefaultServer                   on
    ShowSymLinks		     on
     
    # Le port 21 est le port FTP standard.
    Port                            21
    # Umask 022 est un bon umask standard pour empêcher les nouveaux répertoires et
    # les nouveaux fichiers d'être inscriptibles par les membres du groupe et par 
    # tout le monde.
    Umask                           022
     
    # Pour empêcher les attaques DoS, paramétrez le nombre maximum de processus fils
    # à 30. Si vous avez besoin d'autoriser plus de 30 connexions simultanées,
    # augmentez tout simplement cette valeur. Remarquez que cela ne fonctionne qu'en
    # mode autonome, en mode inetd, vous devriez utiliser un serveur inetd qui vous
    # autorise à limiter le nombre maximum de processus par service 
    MaxInstances                    42
     
    # Réglez l'utilisateur et le groupe sous lesquels le serveur fonctionne
    # en principe.
    User                            ftp
    Group                           ftp
     
    # En principe, on devrait pouvoir remplacer les fichiers.
    <Directory /*>
      AllowOverwrite                on
    </Directory>
     
    # Une configuration pour un anonyme de base, pas de dossiers de dépôt.
    <Anonymous ~ftp>
      User                          ftp
      Group                         ftp
      # Les clients devraient pouvoir se connecter avec "anonymous" ou "proftpd"
      UserAlias                     anonymous ftp
      # Limitez le nombre maximum de connexions anonymes
      MaxClients                    713
     
      # 'welcome.msg' devrait s'afficher à la connexion et '.message' devrait
      # s'afficher dans chaque répertoire où l'on se rend.
    #  DisplayLogin                  connect
    #  DisplayFirstChdir             .index
     
      # Limiter WRITE (écriture) partout dans le chroot anonyme
      <Limit WRITE>
        DenyAll
      </Limit>
    </Anonymous>
     
    LoadModule mod_tls.c
    LoadModule mod_ftps.c
     
    Include tls.conf
    Include sftp.conf
    # End /etc/proftpd/proftpd.conf
    /etc/proftpd/tls.conf:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    [21:23:15]root@server-713:[ ~ ]# cat /etc/proftpd/tls.conf
    # Begin /etc/proftpd/tls.conf
     
    <IfModule mod_tls.c>
      <VirtualHost 192.168.1.42>
        TLSEngine on
        TLSLog /var/log/proftpd-ftps.log
     
        # Support both SSLv2 and v3 and TLSv1
        TLSProtocol SSLv23 TLSv1
     
        # Are clients required to use FTP over TLS when talking to this server?
        TLSRequired off
     
        # Server's certificate
        TLSRSACertificateFile /usr/share/ssl/certs/proftpd-ca.pem
        TLSRSACertificateKeyFile /usr/share/ssl/certs/proftpd-key.pem
     
        # Authenticate clients that want to use FTP over TLS?
        TLSVerifyClient off
     
        # Allow SSL/TLS renegotiations when the client requests them, but
        # do not force the renegotations.  Some clients do not support
        # SSL/TLS renegotiations; when mod_tls forces a renegotiation, these
        # clients will close the data connection, or there will be a timeout
        # on an idle data connection.
        TLSRenegotiate none
     
        TLSOptions UseImplicitSSL
        Port 990
     
      </VirtualHost>
    </IfModule>
    # End /etc/proftpd/tls.conf
    /etc/proftpd/sftp.conf:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    [21:23:20]root@server-713:[ ~ ]# cat /etc/proftpd/sftp.conf
    # Begin /etc/proftpd/sftp.conf
    <VirtualHost 192.168.1.42>
        Port       22
        SFTPEngine on
    </VirtualHost>
    # End /etc/proftpd/sftp.conf
    Pour la config, je me suis basé sur la doc de proftpd.org

    Bon, j’espère que quelqu'un ici pourra m'aider à faire fonctionner le FTPS en mode implicite, Merci d'avance !

  2. #2
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 24
    Points : 42
    Points
    42
    Par défaut
    Oups... je suis vraiment désolé... mais... vous allez rire, lors de la compilation, j'ai mis --prefix=/usr et --sysconfdir=/etc comme à mon habitude, Or là, eh bien il semble que le fichier de configuration soit /etc/proftpd.conf au lieu de /etc/proftpd/proftpd.conf... contrairement à ce que j'avais crû, eh donc, il ne me reste qu'à recompiler avec les bonnes options ^^

    Encore désolé, et excusez moi du dérangement et du post inutile (pas tellement que ça en fait, le fait d'avoir dû expliquer de façon claire et récapitulative mon problème ici m'a remis les idées en place et m'a fait re-bosser sur le problème...)
    J'ai même remarqué quelques erreurs dans mes fichiers de config.

    Edit: Et non ! le problème n'est finalement pas résolu, avec mes modifications, je pouvais avoir le ftps implicite, mais pas de ftp sans encryptions...

    revoilà donc mes fichiers de configs:

    /etc/proftpd/proftpd.conf:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
     
    [22:31:53]root@server-713:[ /etc/proftpd ]# cat proftpd.conf
    # Begin /etc/proftpd/proftpd.conf
     
    ServerName                      "ftp.galex-713.42"
    ServerType                      standalone
    DefaultServer                   on
    ShowSymLinks			on
     
    # Le port 21 est le port FTP standard.
    Port                            21
    # Umask 022 est un bon umask standard pour empêcher les nouveaux répertoires et
    # les nouveaux fichiers d'être inscriptibles par les membres du groupe et par 
    # tout le monde.
    Umask                           022
     
    # Connection ftp en mode passif
    PassivePorts 49152 65534
     
    # Pour empêcher les attaques DoS, paramétrez le nombre maximum de processus fils
    # à 30. Si vous avez besoin d'autoriser plus de 30 connexions simultanées,
    # augmentez tout simplement cette valeur. Remarquez que cela ne fonctionne qu'en
    # mode autonome, en mode inetd, vous devriez utiliser un serveur inetd qui vous
    # autorise à limiter le nombre maximum de processus par service 
    MaxInstances                    713
     
    # Réglez l'utilisateur et le groupe sous lesquels le serveur fonctionne
    # en principe.
    User                            ftp
    Group                           ftp
     
    # En principe, on devrait pouvoir remplacer les fichiers.
    <Directory /*>
      AllowOverwrite                on
    </Directory>
     
    # Une configuration pour un anonyme de base, pas de dossiers de dépôt.
    <Anonymous ~ftp>
      User                          ftp
      Group                         ftp
      # Les clients devraient pouvoir se connecter avec "anonymous" ou "proftpd"
      UserAlias                     anonymous ftp
      # Limitez le nombre maximum de connexions anonymes
      MaxClients                    42
     
      # 'welcome.msg' devrait s'afficher à la connexion et '.message' devrait
      # s'afficher dans chaque répertoire où l'on se rend.
    #  DisplayLogin                  connect
    #  DisplayFirstChdir             .index
     
      # Limiter WRITE (écriture) partout dans le chroot anonyme
      <Limit WRITE>
        DenyAll
      </Limit>
    </Anonymous>
     
    LoadModule mod_tls.c
     
    Include /etc/proftpd/tls.conf
     
    # End /etc/proftpd/proftpd.conf
    /etc/proftpd/tls.conf:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
    [22:31:56]root@server-713:[ /etc/proftpd ]# cat tls.conf
    # Begin /etc/proftpd/tls.conf
     
    <IfModule mod_tls.c>
    #  <VirtualHost 192.168.1.42>
     
        TLSEngine on
        TLSLog /var/log/proftpd-ftps.log
     
        # Support both SSLv2 and v3 and TLSv1
        TLSProtocol SSLv23 TLSv1
     
        # Are clients required to use FTP over TLS when talking to this server?
        TLSRequired off
     
        # Server's certificate
        TLSRSACertificateFile /usr/share/ssl/certs/proftpd-ca.pem
        TLSRSACertificateKeyFile /usr/share/ssl/certs/proftpd-key.pem
     
        # Authenticate clients that want to use FTP over TLS?
        TLSVerifyClient off
     
        # Allow SSL/TLS renegotiations when the client requests them, but
        # do not force the renegotations.  Some clients do not support
        # SSL/TLS renegotiations; when mod_tls forces a renegotiation, these
        # clients will close the data connection, or there will be a timeout
        # on an idle data connection.
        TLSRenegotiate none
     
    #    TLSOptions UseImplicitSSL
    #    Port 990
     
    #  </VirtualHost>
    </IfModule>
     
    # End /etc/proftpd/tls.conf
    plus de /etc/proftpd/sftp.conf, apparemment les instructions utilisées n'étaient pas reconnues

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 24
    Points : 42
    Points
    42
    Par défaut
    Up !

    Edit: bon, ça doit être une habitude chez moi... ou peut-être que pour une raison ou une autre mon subconscient à vraiment envie de vous saouler... mais j'ai (encore) résolu le problème ! en résulte une config bien tordue avec Une re-configuration complète dans un new VirtualHost, changement de port, et suppression de certaines directives ne convenant plus au contexte, j'ai également désactivé l'utilisation du protocol ftp-data en mode passif, après tout, c'est un serveur ftp perso (pour le moment) et je ne crois pas atteindre trop de connexion... et le vieux pentium4 et les 512Mo de RAM de mon vieux serveur seront sans-doutes submergés bien plus rapidement que le nombres de ports...

    Bon, pour aider tout ceux qui finirons un jour ou l'autre dans mon cas, je poste ma config, qui marche très bien (pour l'instant):

    /etc/proftpd/proftpd.conf
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    [22:45:28]root@server-713:[ /etc/proftpd ]# cat proftpd.conf
    # Begin /etc/proftpd/proftpd.conf
     
    ServerName                      "ftp.galex-713.42"
    ServerType                      standalone
    DefaultServer                   on
    ShowSymLinks			on
     
    # Le port 21 est le port FTP standard.
    Port                            21
    # Umask 022 est un bon umask standard pour empêcher les nouveaux répertoires et
    # les nouveaux fichiers d'être inscriptibles par les membres du groupe et par 
    # tout le monde.
    Umask                           022
     
    # Connection ftp en mode passif
    #PassivePorts 49152 65534
     
    # Pour empêcher les attaques DoS, paramétrez le nombre maximum de processus fils
    # à 30. Si vous avez besoin d'autoriser plus de 30 connexions simultanées,
    # augmentez tout simplement cette valeur. Remarquez que cela ne fonctionne qu'en
    # mode autonome, en mode inetd, vous devriez utiliser un serveur inetd qui vous
    # autorise à limiter le nombre maximum de processus par service 
    MaxInstances                    713
     
    # Réglez l'utilisateur et le groupe sous lesquels le serveur fonctionne
    # en principe.
    User                            ftp
    Group                           ftp
     
    # En principe, on devrait pouvoir remplacer les fichiers.
    <Directory /*>
      AllowOverwrite                on
    </Directory>
     
    # Une configuration pour un anonyme de base, pas de dossiers de dépôt.
    <Anonymous ~ftp>
      User                          ftp
      Group                         ftp
      # Les clients devraient pouvoir se connecter avec "anonymous" ou "proftpd"
      UserAlias                     anonymous ftp
      # Limitez le nombre maximum de connexions anonymes
      MaxClients                    42
     
      # 'welcome.msg' devrait s'afficher à la connexion et '.message' devrait
      # s'afficher dans chaque répertoire où l'on se rend.
    #  DisplayLogin                  connect
    #  DisplayFirstChdir             .index
     
      # Limiter WRITE (écriture) partout dans le chroot anonyme
      <Limit WRITE>
        DenyAll
      </Limit>
    </Anonymous>
     
    LoadModule mod_tls.c
    Include /etc/proftpd/tls.conf
     
    # End /etc/proftpd/proftpd.conf
    /etc/proftpd/tls.conf
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
     
    [22:45:36]root@server-713:[ /etc/proftpd ]# cat tls.conf
    # Begin /etc/proftpd/tls.conf
     
    <IfModule mod_tls.c>
      <VirtualHost 192.168.1.42>
     
        ServerName    "ftp.galex-713.42"
        ShowSymLinks  on
     
        # Le port 990 est le port FTPS implicite.
        Port          990
        # Umask 022 est un bon umask standard pour empêcher les nouveaux répertoires et
        # les nouveaux fichiers d'être inscriptibles par les membres du groupe et par 
        # tout le monde.
        Umask         022
     
        TLSEngine on
        TLSLog /var/log/proftpd-ftps.log
        # Support both SSLv2 and v3 and TLSv1
        # TLSProtocol SSLv3 TLSv1
     
        # Are clients required to use FTP over TLS when talking to this server?
        TLSRequired off
     
        # Server's certificate
        TLSRSACertificateFile /usr/share/ssl/certs/proftpd-ca.pem
        TLSRSACertificateKeyFile /usr/share/ssl/certs/proftpd-key.pem
     
        # Authenticate clients that want to use FTP over TLS?
        TLSVerifyClient off
     
        # Réglez l'utilisateur et le groupe sous lesquels le serveur fonctionne
        # en principe.
        User   ftp
        Group  ftp
     
        # En principe, on devrait pouvoir remplacer les fichiers.
        <Directory /*>
          AllowOverwrite on
        </Directory>
     
        # Une configuration pour un anonyme de base, pas de dossiers de dépôt.
        <Anonymous ~ftp>
          User      ftp
          Group     ftp
          # Les clients devraient pouvoir se connecter avec "anonymous" ou "proftpd"
          UserAlias anonymous ftp
          # Limitez le nombre maximum de connexions anonymes
          MaxClients                    42
     
          # Limiter WRITE (écriture) partout dans le chroot anonyme
          <Limit WRITE>
            DenyAll
          </Limit>
        </Anonymous>
     
        # Allow SSL/TLS renegotiations when the client requests them, but
        # do not force the renegotations.  Some clients do not support
        # SSL/TLS renegotiations; when mod_tls forces a renegotiation, these
        # clients will close the data connection, or there will be a timeout
        # on an idle data connection.
        TLSRenegotiate none
     
        TLSOptions UseImplicitSSL
     
      </VirtualHost>
    </IfModule>
     
    # End /etc/proftpd/tls.conf
    [22:45:39]root@server-713:[ /etc/proftpd ]#
    Well, comme je suis très sympa, je refile aussi ma commande configure (qui a juste été suivie des fameux `make` et `make install`) que j'ai utilisé pour compiler proftpd, ce qui évitera à certains une compilation sans modules ftps, ou avec le fichier de config /etc/proftpd.conf, qui m'a fait des misères comme à mon 2e post comme vous avez pu le remarquer, j'ai configuré proftpd pour se lier à postgreSQL (je ne sais pas pourquoi il en a besoin, mais ça doit surement être utile ^^, et comme je me suis donné le mal de compiler postgreSQL...) et gérer le sftp ainsi que le ftps (obviously)

    So, le voici:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ./configure --prefix=/usr --sysconfdir=/etc/proftpd --localstatedir=/var/run --enable-dso --with-modules=mod_tls:mod_sftp:mod_sql:mod_sql_postgres --with-shared=mod_sql:mod_sql_postgres:mod_sftp:mod_tls --enable-openssl
    PS: non je ne suis pas anglophone, j'avais juste envie de foutre des mots anglais dans mon post, je suis quelque peu impulsif... :-°

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. proftpd ( ftp ) problème
    Par maloy dans le forum Administration système
    Réponses: 4
    Dernier message: 25/01/2013, 18h31
  2. [ProFTPd] FTP anonyme multidomaine
    Par Benjamin GAGNEUX dans le forum Administration système
    Réponses: 0
    Dernier message: 05/01/2012, 12h53
  3. Proftpd / FTP over TLS/SSL pour un user/domaine spécifique ?
    Par thibotus01 dans le forum Administration système
    Réponses: 0
    Dernier message: 02/08/2009, 15h30
  4. Configuration du serveur FTP PROFTPD sous Debian
    Par ptit_seb dans le forum Réseau
    Réponses: 2
    Dernier message: 15/04/2006, 18h48
  5. Lien symbolique dansle repertoire du ftp - Proftpd
    Par __fabrice dans le forum Réseau
    Réponses: 8
    Dernier message: 20/05/2005, 20h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo