Nach zweieinhalb Jahren Entwicklung wurde eine bedeutende Version des FTP-Servers ProFTPD 1.3.8 veröffentlicht. Zu den Stärken zählen Erweiterbarkeit und Funktionalität, während die Schwächen in der gelegentlichen Auffindbarkeit gefährlicher Sicherheitsanfälligkeiten liegen. Gleichzeitig steht auch das korrigierte Release ProFTPD 1.3.7f zur Verfügung, welches das letzte in der Reihe ProFTPD 1.3.7 sein wird.
Die wichtigsten Neuerungen in ProFTPD 1.3.8:
- Die Unterstützung des FTP-Befehls CSID (Client/Server ID) wurde implementiert. Dieser kann verwendet werden, um Informationen zur Identifizierung der Client-Software an den Server zu senden und eine Antwort mit Informationen zur Identifizierung des Servers zu erhalten. Beispielsweise kann der Client „CSID Name=BSD FTP; Version=7.3“ senden und die Antwort „200 Name=ProFTPD; Version=1.3.8; OS=Ubuntu Linux; OSVer=22.04; CaseSensitive=1; DirSep=/;“ erhalten.
- Die Implementierung des SFTP-Protokolls hat Unterstützung für die Erweiterung „home-directory“ hinzugefügt, um die Pfade ~/ und ~user/ aufzulösen. Zur Aktivierung kann die Direktive „SFTPExtensions homeDirectory“ verwendet werden.
- Im mod_sftp wurde die Unterstützung der Verschlüsselungen AES-GCM „aes128-gcm@openssh.com“ und „aes256-gcm@openssh.com“ hinzugefügt, sowie die Rotation von Host-Schlüsseln („SFTPOptions NoHostkeyRotation“) durch die OpenSSH-Erweiterungen „hostkeys-00@openssh.com“ und „hostkeys-prove-00@openssh.com“. In der Direktive SFTPCiphers wurde die Unterstützung zur Aktivierung der AES-GCM-Verschlüsselungen ergänzt.
- Die Option „—enable-pcre2“ wurde hinzugefügt, um eine Version mit der Bibliothek PCRE2 anstelle von PCRE zu erstellen. In die Direktive RegexOptions wurde die Möglichkeit integriert, den Regex-Engine zwischen PCRE2, POSIX und PCRE auszuwählen.
- Die Direktive SFTPHostKeys wurde hinzugefügt, um die den Clients angebotenen Algorithmen für Hostschlüssel im mod_sftp-Modul anzugeben.
- Die Direktive FactsDefault wurde hinzugefügt, um die Liste der zurückgegebenen „Fakten“ in FTP-Antworten für MLSD/MLSD explizit zu definieren.
- Die Direktive LDAPConnectTimeout wurde eingeführt, um die Zeitüberschreitung für die Verbindung zum LDAP-Server zu bestimmen.
- Die Direktive ListStyle ermöglicht es, die Ausgabe von Verzeichnisinhalten im Windows-Stil zu aktivieren.
- Die Direktive RedisLogFormatExtra wurde implementiert, um benutzerdefinierte Schlüssel und Werte in das JSON-Log einzufügen, das von den Direktiven RedisLogOnCommand und RedisLogOnEvent aktiviert wird.
- In die Direktive BanOnEvent wurde der Parameter MaxLoginAttemptsFromUser hinzugefügt, um bestimmte Kombinationen von Benutzern und deren Anmeldungen zu blockieren. IP-Adressen.
- Die Direktive RedisSentinel unterstützt nun TLS-Verbindungen zur Redis-Datenbank. In die Direktive RedisServer wurde die Unterstützung für die geänderte Syntax des AUTH-Befehls eingeführt, die ab Redis 6.x verwendet wird.
- In die Direktive SFTPDigests wurde die Unterstützung für ETM-Hashes (Encrypt-Then-MAC) hinzugefügt.
- In der Direktive SocketOptions wurde das Flag ReusePort hinzugefügt, um den SO_REUSEPORT-Modus für Sockets zu aktivieren.
- In der Direktive TransferOptions wurde das Flag AllowSymlinkUpload hinzugefügt, um das Hochladen in symbolische Links wieder zu ermöglichen.
- In der Direktive SFTPKeyExchanges wurde die Unterstützung für den Schlüsselwechselalgorithmus „curve448-sha512“ hinzugefügt.
- Im Modul mod_wrap2 wurde die Möglichkeit hinzugefügt, zusätzliche Dateien in die Allow/Deny-Tabellen einzufügen.
- Der Standardwert des Parameters FSCachePolicy wurde auf „off“ geändert.
- Das Modul mod_sftp wurde für die Nutzung mit der OpenSSL 3.x-Bibliothek angepasst.
- Die Unterstützung für den Bau mit der libidn2-Bibliothek für die Verwendung von internationalisierten von Domainnamen (IDN) wurde hinzugefügt.
- In der Utility ftpasswd wurde der SHA256-Algorithmus standardmäßig zur Generierung von Passwort-Hashes anstelle von MD5 aktiviert.
Quelle: opennet.ru
