После двух с половиной лет разработки увидел свет новый значительный выпуск ftp-сервера ProFTPD 1.3.5, сильными сторонами которого являются расширяемость и функциональность, а слабыми - недостаточное внимание к качеству и безопасности кода. Одновременно доступен корректирующий выпуск ProFTPD 1.3.4e, который станет последним в серии ProFTPD 1.3.4.

Основные новшества ProFTPD 1.3.5:

  • Новые модули:
    • mod_dnsbl для ограничения доступа по черным спискам, опрашиваемым через DNS (DNSBL);
    • mod_snmp для накопления различной статистики и предоставления доступа к ней через протокол SNMP (поддерживается SNMPv1 и SNMPv2);
    • mod_log_forensic для сбора данных о действиях пользователя в рамках установленного сеанса, но сброса данной информации в лог только при выявлении необычной активности;
    • mod_rlimit - в отдельный модуль вынесен код для задания лимитов через директивы RLimitCPU, RLimitMemory и RLimitOpenFiles;
    • mod_geoip для получения информации о местоположении пользователя по его IP-адресу. На основе полученных данных могут быть созданы фильтры (например, можно запретить доступ из отдельных стран) или просто добавлена информация в лог.
  • Новые директивы конфигурации
    • LDAPLog для сохранения лога работы mod_ldap в отдельном файле;
    • RLimitChroot для включения дополнительных ограничений на запись в директории /etc и /lib внутри chroot-окружения с целью защиты от атак по организации загрузки фиктивных библиотек.
    • SQLUserPrimaryKey и SQLGroupPrimaryKey (mod_sql) для определения первичных ключей для хранимых в SQL таблиц с пользователями и группами;
    • AllowChrootSymlinks для запрета следования символическим ссылкам при переходе в chroot;
    • CapabilitiesRootRevoke для выборочного сброса root-привилегий при использовании модуля mod_cap;
    • IfAuthenticated для задания набора директив, применяемых только к сеансам с аутентифицированным пользователем;
    • FactsOptions для тонкой настройки MLSD/MLST-вывода модуля mod_facts;
    • QuotaDefault для задания квоты по умолчанию, применяемой модулем mod_quotatab если квота для пользователя явно не определена;
    • RewriteMaxReplace для ограничения максимального числа замен в mod_rewrite;
    • TLSServerCipherPreference для расстановки приоритетов в выборе шифров при использовании mod_tls;
    • В директиве ExecOnEvent добавлена поддержка флага "~" при указании которого команда исполняется с правами вошедшего пользователя. ExecOnEvent также теперь допустимо использовать внутри блоков VirtualHost;
    • В директиву SFTPOptions добавлена опция IgnoreSCPUploadTimes для запрета изменения времени модификации и создания файлов;
    • В директиву SFTPOptions добавлена опция AllowInsecureLogin для принудительного включения поддержки небезопасных алгоритмов шифрования в mod_sftp, используемых в тестовых целях. Например, без использования "SFTPOptions AllowInsecureLogin" mod_sftp не работает при указании 'none' в SFTPCiphers и SFTPDigests;
    • В директивы AllowFilter и DenyFilter добавлена поддержка флагов "[NC]" и "[nocase]" для игнорирования регистра символов. Например: "AllowFilter \.html [NC]";
    • Для директивы CreateHome представлена опция NoRootPrivs для создания домашних директорий без использования root-привилегий (например, для решения проблем с NFS);
    • В RewriteCondition и RewriteRule добавлена поддержка переменных, содержащих время;
    • В RootRevoke добавлена опция "UseNonCompliantActiveTransfers", позволяющая сбросить root-привилегии, но сохранить возможность прикрепления к привилегированному порту для обеспечения работы активного режима FTP;
    • В директиве SFTPDigests обеспечена поддержка хэшей SHA-256 и SHA-512;
    • В SocketOptions добавлен параметр "keepalive", позволяющий управлять включением TCP keepalive;
    • В директивах VirtualHost, MasqueradeAddress и DefaultAddress теперь можно указывать имя сетевого интерфейса, а не только имя хоста или IP-адрес;
  • Добавлена поддержка команды SSCN FTP для организации безопасной передачи данных между серверами (site-to-site, FXP);
  • Обеспечена корректная работа конфигураций с TLS 1.1/1.2;
  • Изменён формат вывода времени в логах, который теперь соответствует спецификации ISO-8601. Например, вместо "Jan 31 15:33:03" теперь указывается "2013-01-31 15:33:03,832";
  • В утилиту ftpasswd добавлена поддержка хэшей SHA-256 и SHA-512, обеспечена возможность блокирования аккаунтов (--lock/--unlock);
  • Изменён метод обработки команд PORT и EPRT, адреса в которых теперь проверяются на вхождение в список непубличных подсетей (10.x.x.x, 192.168.x.x и 172.16.x.x), определённый в RFC 1918. Запросы с такими адресами теперь игнорируются и вместо них используется IP с которого поступил запрос;
  • В модуле mod_sql_passwd добавлена поддержка алгоритма хэширования PBKDF2. Управление производится через директиву SQLPasswordPBKDF2;
  • В модули mod_sftp и mod_tls добавлена поддержка методов шифрования по эллиптическим кривым (Elliptic Curve, ECDSA, ECDH). Обеспечена возможность аутентификации отдельных пользователей по цифровым сертификатам без пароля (директива TLSUserName).
  • В mod_sftp добавлена поддержка SFTP-расширения "fsync@openssh" (включается через SFTPExtensions fsync) для обработки клиентских запросов на принудительный сброс буферов.


Источник: http://www.opennet.ru/opennews/art.shtml?num=39785