proftp mit TLS Sicherheit

  • Hi @ all,


    habe die SE 3-0.243 und pdadmin v4.23 im Einsatz.


    habe unter FTP-Konten, Zusatzkonten einen ftp User angelegt f5.


    in meiner proftpd.conf habe ich folgenden Abschnitt, wobei der Pfad zum Zertifikat korrekt ist, funktioniert über https sowie pop3s und smtps.


    (habe in folgendem Abschnitt lediglich den fqdn durch <xxxfqdnxxx> ersetzt.

    Code
    <IfModule mod_tls.c>
    TLSEngine                  on
    TLSProtocol SSLv3 TLSv1
    TLSRSACertificateFile      /opt/pdadmin/sslcerts/<xxxfqdnxxx>-cert
    TLSRSACertificateKeyFile   /opt/pdadmin/sslcerts/<xxxfqdnxxx>-key
    TLSCACertificateFile       /opt/pdadmin/sslcerts/<xxxfqdnxxx>-cacert
    TLSVerifyClient            off
    TLSRequired                off
    TLSRenegotiate none
    </IfModule>


    Ich vermute, dass dieser Abschnitt von dem script "ci-ssl-install.sh" gesetzt wurde.


    Damit gehe ich doch davon aus, dass ich proftp über TLS betreiben kann. Aber egal wie ich
    TLSVerifyClient oder TLSRequired einstelle, es geht nicht über meinen Filezilla-Client, der immer alles brav macht :-))


    Das passwd von vadmin ist sowohl in der pdadmin.conf als auch in der proftpd.conf das gleiche.


    Über Port 21, passwort unverschlüsselt klappt die Verbindung, aber eben ohne jegliche Sicherheit.


    Woran kann das noch liegen???
    ich möchte einem Kunden ausser /bin/false keine Shell zuweisen.


    Vielen Dank für die kommenden Infos,
    Liebe Grüße,
    RudiX

  • *buddel*
    Hi RudiX,
    ich habe das gleiche Problem mit [php]PD-Admin Version: pd-admin version v4.58
    Installierte SE : 0.310[/php]
    Wie konntest Du das Problem seinerzeit lösen?

  • Vorrausgesetzt er konnte es lösen wäre es ja einfach gewesen ^^
    Aber hier etwaige Fehlermeldungen in der Hoffnung das wir eine Lösung finden:


    FileZilla


    Meldung in messages

    Code
    May  2 16:53:02 SERVER proftpd: 2018-05-02 16:53:02,615 SERVER.FQDN proftpd[2951] 127.0.0.2 (x1x.x2x.x3x.x4x[x1x.x2x.x3x.x4x]): FTP session opened.
    May  2 16:53:03 SERVER proftpd: 2018-05-02 16:53:03,735 SERVER.FQDN proftpd[2951] 127.0.0.2 (x1x.x2x.x3x.x4x[x1x.x2x.x3x.x4x]): USER PDUSERID: Login successful.
    May  2 17:03:04 SERVER proftpd: 2018-05-02 17:03:04,221 SERVER.FQDN proftpd[2951] 127.0.0.2 (x1x.x2x.x3x.x4x[x1x.x2x.x3x.x4x]): Client session idle timeout, disconnected
    May  2 17:03:04 SERVER proftpd: 2018-05-02 17:03:04,223 SERVER.FQDN proftpd[2951] 127.0.0.2 (x1x.x2x.x3x.x4x[x1x.x2x.x3x.x4x]): FTP session closed.


    Denke übrigens das es am "MLSD" anstelle von "LIST" liegt...
    Aber das setzen von

    Code
    <IfModule mod_facts.c>
        FactsAdvertise off
      </IfModule>


    in der /usr/local/pd-admin2//etc/proftpd.conf hatte keinen Erfolg.


    Wenn man im FileZilla-Client hingegen beim
    Servermanager bei „Verbindungsart“ auswählt: „Nur unverschlüsseltes FTP verwenden (unsicher)
    klappt es übrigens :/

  • Bisher hatte ich immer nur Daten per SFTP übertragen. FTPS hatte ich bisher nie getestet...


    Bei mir kam es zunächst aber auch zu einem Timeout nach dem 'MLSD' Befehl. Grund dafür war ein fehlender Eintrag in der proftpd Konfig und die Firewall.


    Mein Server:

    • Server mit CentOS
    • PDA 4.58
    • SE 4-0.312


    In /usr/local/pd-admin2/etc/proftpd.conf habe ich den Eintrag


    Code
    PassivePorts 6000 6100


    unterhalb von DefaultRoot gesetzt. Anschließend den Service mit


    Code
    svc -du /service/proftpd


    neu gestartet. Zum Schluss noch die Ports 6000-6100 in der Firewall freigegeben:


    Code
    firewall-cmd --add-port=6000-6100/tcp --permanent
    firewall-cmd --reload


    Das war es. Anschließnd klappte es mit expliziten FTPS Verbindungen. Bei impliziten FTPS Verbindung wird Port 990 verwendet. Soweit ich es gelesen habe, wird dies aber nicht mehr von mod_tls unterstützt. Daher geht nur explizites TLS.

  • Gefunden und installiert. Klappt aber nicht zu 100%, ich habe dasselbe Problem wie oben beschrieben, der Login klappt aber der Dateibrowser baut sich nicht auf. Ich nutze Cyberduck auf dem Mac aber auch ein anderer FTP Client tats nicht.


    Im user.log sieht man "Login successfull" aber mehr passiert nicht.


    Code
    PassivePorts 6000 6100

    habe ich wie beschrieben eingefügt, keine Änderung.


    Aktivieren des tls.log brachte folgende Einträge:

    Code
    2018-12-09 09:49:04,460 mod_tls/2.6[7563]: TLS/TLS-C requested, starting TLS handshake
    2018-12-09 09:49:04,608 mod_tls/2.6[7563]: client supports secure renegotiations
    2018-12-09 09:49:04,608 mod_tls/2.6[7563]: TLSv1 connection accepted, using cipher ECDHE-RSA-AES256-SHA (256 bits)
    2018-12-09 08:49:04,681 mod_tls/2.6[7563]: Protection set to Private

    Mehr kann ich leider nicht bieten...

  • Hmm da bin ich ersteinmal überfragt. Kann es selber nur mit filezilla testen und da klappt bei mir alles.


    Übrigens sollte die Zeile

    Code
    TLSProtocol SSLv3 TLSv1


    nach

    Code
    TLSProtocol TLSv1.2


    geändert werden. Ältere TLS Versionen sollten nicht mehr verwendet werden.