Вышел ftp-сервер ProFTPD 1.3.3
Спустя год с момента выхода прошлой версии вышел релиз ftp-сервера ProFTPD 1.3.3 в котором исправлено 150 ошибок и внесено несколько улучшений:- Новые модули:
- mod_exec - позволяет привязать запуск внешних скриптов к определенным событиям внутри сессии;
- mod_sftp - реализует поддержку протоколов SSH2, SFTP и SCP. Из расширений SFTP поддерживается check-file, copy-file, vendor-id, version-select, posix-rename@openssh.com, fstatvfs@openssh.com и statvfs@openssh.com.
- mod_sftp_pam - предназначен для задействования в mod_sftp метода аутентификации 'keyboard-interactive' SSH2;
- mod_sftp_sql - позволяет хранить публичные ключи SSH2 в SQL-базе;
- mod_shaper - дает возможность ограничить пропускную способность для всего сервера в целом;
- mod_tls_shmcache - организует кэширование данных SSL-сессий в памяти. Для управления используется директива TLSSessionCache;
- mod_sql_passwd - организует возможность проверки в SQL-базе паролей, представленных в виде хэшей MD5, SHA1, SHA256 и SHA512;
- Новые конфигурационные директивы:
- RewriteHome - для переопределения домашней директории пользователя на основе заданного регулярного выражения. Для перезаписи в mod_rewrite нужно использовать псевдокоманду "REWRITE_HOME", например: "RewriteCondition %m REWRITE_HOME", "RewriteRule (.*) /my/new/prefix$1";
- SQLPasswordUserSalt - для привязки к конкретному пользователю заданного "salt" при создании хэша для аутентификации. Например, в качестве "salt" может использоваться имя пользователя или результат SQL-запроса.
- SFTPExtensions - для выборочного включения/выключения поддержки в mod_sftp заданных расширений протокола SFTP;
- HiddenStores - для задания префиксов скрытых директорий, по умолчанию используется префикс ".in.";
- SQLOptions - для определения дополнительных параметров обращения к SQL-серверу, например, указание "noReconnect" запрещает в mod_sql автоматическое повторное соединение с БД в случае обрыва текущего соединения;
- Изменение поведения директив:
- В AllowOverride отныне запрещено указывать группы и пользователей, вместо этого нужно использовать модуль mod_ifsession. Т.е. вместо "AllowOverride off user !admin" следует создать серию блоков "IfUser" с "AllowOverride on/off" внутри;
- В BanOnEvent появилась возможность привязки к таймауту (TimeoutLogin);
- В VirtualHost можно указывать адрес 0.0.0.0;
- В директивах mod_rewrite к переменным окружения теперь можно обращаться через "%{ENV:var}";
- В SQLGroupInfo и SQLUserInfo теперь допустимо использовать собственные SQL-запросы для получения информации о группе и пользователе;
- Удалена поддержка директивы AnonymousGroup.
- При обработке .ftpaccess, заданные в .ftpaccess директивы больше не могут изменять параметры уже определенные в основной конфигурации;
- Задействован алгоритм для оптимизации передачи большого числа мелких файлов;
- Добавлена опция командной строки "-S" ("--serveraddr"), дающая возможность указать в момент запуска IP для привязки сервера, при указании 0.0.0.0 прием соединений будет производиться на всех доступных сетевых интерфейсах;
- В модуль mod_tls добавлен код, отключающий возможность выполнения операций согласования для установленного соединения (renegotiation), что делает невозможным проведение атаки по подстановке данных в устанавливаемое между двумя точками защищенное соединение.
- Изменена организация обращений к SQL серверу, которые теперь не производятся до момента аутентификации, что позволяет избавиться от лишних SQL-запросов при блокировании соединений такими модулями как mod_ban, mod_dnsbl и mod_wrap2_sql.
© OpenNet