Serv-U是Rob Beckers开发的一个功能强大的、简单易用的、成熟的FTP服务器,FTP服务器用户通过Internet的FTP协议共享文件.Serv-U不仅仅能100%适用于标准的FTP,同样也包括了很多功能,是一个完美的文件共享解决方案.
试用下载:
Serv-U FTP Server 7.3.0.2Serv-U 发布说明:
(+ 新功能/改进,- 错误修复)
7.0.0.1(2008年4月2日发布)
+ 使用内置的 web 客户端,添加了对 HTTP 协议的支持。
+ 添加了对 SSH 协议的支持。
+ 添加了对使用 HTTP 协议的 FTP Voyager JV 的支持。
+ 添加了 THMB 命令,可以将图形文件转换为缩略图然后下载。THMB 命令的作用方式与 RETR 完全一致,只是在传输前文件已按指定的格式被压缩到最大尺寸以内。
+ 添加了 HOST 命令,它可以使 FTP 客户端更改到服务器上的特定域。这使得 FTP 服务器可在单个 IP 地址和端口上支持多个域。注意:并非所有的 FTP 客户端都支持该功能。支持这一功能的客户端如 FTP Voyager。
+ 添加了 DSIZ 命令,以返回目录内容的大小(包括子目录在内)。可以指定目录,如果留空则使用当前工作目录。
+ 添加了 AVBL 命令,以返回目录中可用的字节数。可以指定目录,如果留空则使用当前工作目录。
+ 添加了启用/禁用特定 FTP 命令的功能。
+ 添加了更改几乎任何 FTP 命令响应的功能。
+ 添加了动态 HELP 信息,其中 HELP 发送所有支持的和启用的命令信息。
+ 添加了命令级 HELP。例如,"HELP LIST" 将返回有关 LIST 命令的特定帮助信息。
+ 当读取客户端正在下载的文件时,添加了使用浮动缓冲区大小的功能。浮动缓冲区大小取决于当前的传输率,这使得传输效率大大提高。
+ 添加了目录重命名权限设置。
+ 添加了文件重命名权限设置。
+ 添加了 "\" 路径概念。"\" 路径类似于 Windows 资源管理器中的 "我的电脑"。当用户的根目录设置为 "\" 时,"/" 列表显示了可用的磁盘驱动器。当在用户、群组、域或服务器级别启用 "允许根('/')为未锁定用户列出驱动器" 时,未登录根目录的用户也可以充分利用该功能。
+ 更改了 FEAT 命令,使其仅列出已启用的特殊命令。
+ 更改了 "OPTS MLST" 命令,从而对未严格遵守 RFC 的客户端更为宽容。例如,Serv-U 现在既接受 "OPTS MLST Type;Size;Modify;Perm;",也接受 "OPTS MLST Type;Size;Modify;Perm"。
+ 为 MLST 和 MLSD 命令添加了 "Perm" 功能,"Perm" 标识了 MLST/MLSD 列表中与连接用户相关项目的权限。
+ 为 MLST 和 MLSD 命令添加了 "Win32.dt" 功能。当列出 /C:/、/D:/、或 / 时,"Win32.dt" 为磁盘驱动器列表标识了驱动器类型。如果对象不是磁盘驱动器,则不会在目录列表中返回该功能的结果。
+ 为 MLST 和 MLSD 命令添加了 "Win32.dl" 功能。当列出 /C:/、/D:/、或 / 时,"Win32.dl" 为磁盘驱动器列表标识了驱动器卷标。如果对象不是磁盘驱动器,则不会在目录列表中返回该功能的结果。
+ 对于 "os.UNIX=slink",添加更多信息到 MLST / MSLD Type 结果,并且如果向用户提供 ":linked_path",则 Serv-U 还会追加该信息。
+ 改进了 Windows 快捷方式解决方案,以同时包括使用相对路径和其他属性组合的快捷方式。
+ 添加了使用 "SITE EXEC" 命令时指定带空格的路径名的功能。如果需要使用空格,Serv-U 将文件名括起来解析。
+ 添加了 XDEL 命令,功能与 DELE 命令相同。
+ 添加了 RMDA 目录作为 RMD 的父集,使得客户端可以用一个命令删除目录及其所有文件和子目录。一则错误响应指出客户端应刷新其目录列表,以确定哪些文件和子目录被删除,哪些未被删除。
+ 更改了 Windows 链接支持,从而当遇到 Windows .LNK 文件时,对于 SIZE 命令和传输操作,将其作为列表显示时所引用的文件处理。
+ 删除了 -L LIST 和 NLST 选项,因为它们会与其他设置冲突。
+ 在辅助线程执行所有冗长的命令,以便释放主线程供其他客户端使用。这些操作包括 LIST、NLST、MLST、MLSD、RMDA、RETR、THMB、RNTO、XCRC、STOR、APPE、STOU、SITE EXEC 以及所有其他冗长的操作。
+ 添加了使用多个 CPU 的功能,以执行占用 CPU 较多的操作。
+ 向 "226 传输完成" 应答中添加了传输总量和传输速率信息。
+ 向压缩的 "226 传输完成" 应答中添加了压缩总量、统计和传输速率信息。
+ 添加了在域上以及服务器上定义反攻击限制的功能。
+ 将消息文件中最大字符串长度从 195 个字符增加到 512 个字符。
+ 添加了一个选项以包含服务器对 FTP 命令处理器的响应值,从而在多行响应的每一行中包含数字响应代码。
+ 添加了一个选项以包含服务器对个别消息文件的响应值。
+ 使用合适的 FTP 命令移动消息文件设置到个别命令处理器。
+ 添加了基于文件扩展名,为某些类型的文件设置最大文件尺寸的功能。该功能通过目录访问规则得以实现,在规则中可使用通配符来标识文件访问权限。
+ 为目录访问规则中指定的目录添加了最大目录尺寸限制,以取代磁盘配额。
+ 除了会话带宽限制,还为整个服务器、每个域、每个群组和每个用户添加了上传和下载带宽限制。
+ 为 STAT 命令添加了更多统计信息。
+ 改进了 ALLO 命令,使其不仅能够检查可用的硬盘空间,还能检查用户可用的磁盘空间数量。该处更改考虑了配额和目录大小限制。
+ 添加了使用 FTP LIST 命令,以 Microsoft IIS FTP Server (-h:IIS) 格式,或 DOS (-h:DOS) (Windows 2000 或更高版本中的命令行) 格式,显示目录列表的功能。
+ 添加了 -h:"DOS"、-h:"IIS"、和 -h:"UNIX" (默认) LIST 指令。-h:"DOS" 以类似于 Windows 命令行的方式列出文件和目录。-h:"IIS" 以类似于 Microsoft 的 IIS FTP 服务器的方式列出文件和目录。-h:"UNIX" 以类似于 BSD UNIX FTP 服务器的方式列出文件和目录。任何其他 -h"xxx" 指令都将恢复为 "UNIX" 样式的列表。该指令不区分大小写。
+ 更改了 IP 访问规则的操作。如果没有 "允许访问" 规则,则自动假定为 "*.*.*.*" 。
+ 添加了功能,使得从活动会话列表中断开用户连接时,可以在 IP 访问规则列表中查看被阻止的 IP 地址。
+ 当上传并覆盖文件时,以指定的文件名重命名原始文件。
+ 更改了目录列表,使得当锁定用户于根目录时,不会显示 "." 和 ".." 。
+ 在正常显示 "." 和 ".." 的目录列表中,无论这两个目录是否存在于 Windows 中都正常显示。这有助于导航并防止用户推断出目录是否为根目录虚拟路径。
+ 添加了功能,可以使用 FTP 命令,在有关失败操作的日志中查看密码。
+ 添加了用户归类,有助于对用户进行合理的分组管理。当将用户分别置于不同类别中时,管理控制台和 Ser-U 都能更有效地操作。
+ 现在只需通过允许访问相应的物理路径,就可以授予虚拟路径的访问权限。早先的版本还需要明确设置虚拟路径的访问权。
- 修正了以下错误:至少登录一次以后当试图登录的次数超过了上限值时, Serv-U 会返回两个而不是一个错误应答。
- 修正了某些 LIST 和 NLST 参数不能正常工作的错误,例如忽略某些文件的 -I:"*.txt" 参数。
- 修正了 MLST/MLSD 中 Serv-U 返回的文件时间误差 1 小时的错误,这是因为服务器当前以夏时制运行而文件日期和时间并未采用夏时制,反之亦然。
- 修正了以下错误:当使用包含通配符的字符串指定完整的路径时,"子目录继承" 设置会被忽略。例如,即使选择了继承参数,C:\Windows\*.jpg 也不会包含 C:\Windows\System32\*.jpg。
- 修正了以下错误:当虚拟路径引用父目录时,递归目录列表会导致 Serv-U 崩溃。
- 修正了以下错误:当使用 "盲" 目录时,如果可以访问至少嵌套两层的目录,则会话可能永远无法使用 CWD 命令返回根目录。
托盘
+ 添加了新的风格菜单。
+ 添加了使用不同主题的功能。
+ 添加了主题编辑器。
+ 添加了气球提示。
+ 添加了自动更新检查器。
+ 在弹出式菜单中添加了支持链接。
+ 在鼠标置于上方时出现的工具提示中添加了更多统计信息。
Serv-U 7.0.0.1 was released April 2, 2008. A complete list of changes and upgrades follows:
Features:
Added support for the HTTP protocol with a built-in web client.
Added support for the SSH protocol.
Added support for FTP Voyager JV via the HTTP protocol.
Added the THMB command to convert graphical files to thumbnails then download. The THMB command acts exactly like RETR, except prior to transfer the file is reduced to the specified format and maximum size.
Added the HOST command which allows the FTP client to change to a specific domain on the server. This allows the FTP server to support multiple domains on a single IP address and port. NOTE: not all FTP clients support this feature. FTP Voyager, for example, does.
Added the DSIZ command to return the size of a directory's contents, including sub-directories. A directory may be specified, or if left blank, the current working directory is used.
Added the AVBL command to return the number of bytes available in a directory. A directory may be specified, or if left blank, the current working directory is used.
Added support to enable and disable specific FTP commands.
Added support to change nearly any FTP command responses.
Added dynamic HELP information where HELP sends all supported and enabled commands.
Added command level HELP. For example "HELP LIST" returns help specifically about the LIST command
Added the use of a floating buffer size when reading from files being downloaded by a client. The floating buffer size is based on the transfer rate for the ongoing transfer, making transfers much more efficient.
Added directory rename rights setting.
Added file rename rights setting.
Added the "\" path concept. The "\" path is similar to "My Computer" in Windows Explorer. When a user's home directory is set to "\" a listing of "/" shows the available disk drives. Users who are not logged in their home directory can also take advantage of this feature when the "Allow root ("/") to list drives for unlocked users" is set to true at the user, group, domain or server levels.
Changed FEAT to list special commands only when they're enabled.
Changed the "OPTS MLST" command to be more forgiving of clients that don't follow the RFC exactly. For example, Serv-U now accepts both "OPTS MLST Type;Size;Modify;Perm;" and "OPTS MLST Type;Size;Modify;Perm"
Added the "Perm" feature for MLST and MLSD commands, "Perm" identifies permissions for an item in an MLST/MLSD listing, relative to the connected user.
Added the "Win32.dt" feature for MLST and MLSD commands, "Win32.dt" identifies a drive type for disk drive listings, when listing /C:/, /D:/, or /. This feature will not be returned in a directory listing if the item is not a disk drive.
Added the "Win32.dl" feature for MLST and MLSD commands, "Win32.dl" identifies a drive label for disk drive listings, when listing /C:/, /D:/, or /. This feature will not be returned in a directory listing if the item is not a disk drive.
Added more information to the MLST / MSLD Type fact for "os.UNIX=slink" where Serv-U now also appends ":linked_path" if this information is available to the user.
Improved Windows Shortcut resolution to also include shortcuts using relative paths and other combinations of attributes.
Added the ability to specify path names with spaces when using the "SITE EXEC" command. If spaces are required, Serv-U parses the file name in quotes.
Added the XDEL command, same as DELE.
Added RMDA directory as a superset of RMD, allowing the client to delete a directory an all of its files and sub-directories in one command. An error response indicates that the client should refresh its directory listing to determine which files and sub-directories were deleted and which where not.
Changed Windows Link support so that when Windows .LNK files are encountered they are treated as the file they reference when listing, for the SIZE command, and transfer operations.
Removed the -L LIST and NLST option because it can conflict with other settings.
Perform all lengthy commands in a worker thread, freeing up the main thread to service other clients. These operations include LIST, NLST, MLST, MLSD, RMDA, RETR, THMB, RNTO, XCRC, STOR, APPE, STOU, SITE EXEC, and all other lengthy operations.
Added the use of multiple CPUs to perform CPU intensive activity.
Added transfer totals and transfer rates to the "226 Transfer complete." reply.
Added compression totals, statistics, and transfer rates to the compressed "226 Transfer complete." reply.
Added the ability to define anti-hammer limits for the domain in addition to at the server.
Increased the maximum string length in a message file from 195 characters to 512 characters.
Added an option to include server response values to the FTP command processor to include the numeric response code in every line of a multi-line response.
Added an option to include server response values for individual message files.
Moved message file settings with the appropriate FTP command and to individual command processors.
Added the ability to set maximum file sizes for files of certain types, based on the file extension. This feature is implemented through directory access rules where wild cards can be used to identify file access rights.
Added maximum directory size restrictions for directories specified in the directory access rules, replacing disk quotas.
Added upload and download bandwidth limits for the entire server, each domain, each group, and each user, in addition to session bandwidth limits.
Added additional statistics to the STAT command.
Improved the ALLO command to check the amount of disk space available to the user, instead of just the hard drive space available. This change takes into consideration quotas and directory size limits.
Added the ability to show directory listings in Microsoft IIS FTP Server (-h:IIS) format or DOS (-h:DOS) (command line from Windows 2000 or greater) format with the FTP LIST command.
Added -h:"DOS", -h:"IIS", and -h:"UNIX" (default) LIST directives. -h:"DOS" lists files and directories similar to the Windows command line. -h:"IIS" lists files and directories similar to Microsoft's IIS FTP server. -h:"UNIX" lists files and directories similar to BSD UNIX FTP servers. Any other -h"xxx" directive reverts back to "UNIX" style listings. This directive is not letter case sensitive.
Changed the operation of IP access rules. If there are no "allow access" rules, "*.*.*.*" is automatically assumed
Added the ability to see blocked IP addresses in the IP access rules list when disconnecting a user from the active session list.
When uploading and overwriting a file, the original file is renamed to the specified file name.
Changed directory listings not to show "." and ".." when the user is locked in the home directory.
In directory listings that show "." and ".." normally, these are properly shown whether or not they exist in Windows. This helps to aid both in navigation and in preventing the user from being able to determine if a directory is a root virtual path or not.
Added the ability to see passwords in the logs on failure, and with FTP commands.
Added categorization for users to help organize users into logical groupings. When users are placed into separate categories the Management Console can perform more efficiently as can Serv-U.
Access to virtual paths can now be granted by allowing access to the physical path only. Previous versions required an explicit access setting to the virtual path as well.
Bug Fixes:
Corrected an error when exceeding the maximum number of login attempts after being logged in at least once, where Serv-U would return two error replies instead of one.
Corrected an error where certain LIST and NLST parameters did not work correctly, for example -I:"*.txt" to ignore certain files.
Corrected an error in MLST/MLSD where Serv-U could return file times 1 hour incorrectly when the server is currently running in Daylight Saving Time and the file date and time is not and vice versa.
Corrected a bug where "Sub-directory Inherit" was ignored when a full path is specified containing a wildcard string. For example C:\Windows\*.jpg would not include C:\Windows\System32\*.jpg even when the inherit flag was selected.
Corrected a bug where recursively listing directories where Virtual Paths referenced the parent directory, would cause Serv-U to crash.
Corrected a bug when using "blind" directories, where directory access to directories nested at least two deep have access, it was possible for sessions to never be able to go back to the home directory with the CWD command.
Tray:
Added new style menus.
Added the ability use different themes.
Added Theme Editor.
Added balloon tips.
Added automatic update checker.
Added support links to pop-up menu.
Added more statistics to the mouse over tool tips.