XFile 服务器端配置入门(windows版)

 

[1] 本入门针对的是XFile新版本(2025.05.01 4.00版或者更新版本),因为从这个版本开始服务器端是被完全重写重构的,虽然配置参数默认可以兼容旧版本XFtpSvr的配置,但是配置条目其实完全不相同,老版本请访问老版本的入门指南.

[2]本入门是针对的Windows平台XFile服务部署,但是实际上,Windows平台配置完成的三个主要文件,set.ini , myaccount.ini ,myshare.txt其实和Linux平台是通用的(目录部分不同),因此有参考作用,不过Linux平台的服务配置建议在看完本入门后,再去看Linux的针对性配置.

[3]很重要的一点是,无论是windows还是linux平台,配置文件都被放在您安装目录下的config子目录中,分别是 set.ini 核心参数配置文件 , myaccount.ini 账户配置文件 以及资源文件 myshare.txt ,通常备份这三个文件,就可以完成服务器配置的备份,您重装系统后重新安装,或者迁移到不同的系统中,只需要覆盖这三个配置文件,旧配置就回来了,其他可能需要备份的是您可能自行制作的SSL证书,后缀名是pem,系统自带的证书就不需要备份,会在安装的时候自动安装.

[4] 在您启动XFile服务前,强烈建议您先尝试为windows更新到最新补丁,通常是无法禁用windows10的自动更新的,windows更新的优先级非常高,在集中更新的时候会严重影响到类似XFile等普通服务的性能,因此建议您更新完了再启动.

[5]重要: 如果您需要启用XFile 特有的email-dns功能,那么需要禁用系统的RFC3041 ipv6临时地址机制,这一机制会让服务器同时拥有长效地址和临时地址,随着时间的推移系统中的ipv6临时地址会越来越多,服务器程序很难判断到底哪个是新的长期有效地址,因此,为了避免出错,应该关闭这个机制,方法如下:

windows7等早期系统下,在系统菜单 开始--> 附件 --> 命令提示符 ,用鼠标右键 以管理员身份运行

windows10等更新版本,使用菜单 以管理员身份打开 windows Powershell

请依次输入

 netsh interface ipv6 set global randomizeidentifiers=disabled
 netsh interface ipv6 set privacy state=disabled

这两行命令来关闭windows 系统 ipv6临时地址机制,完成后需要重启windows系统以生效.

 

现在,请打开windows桌面上的XFileAdmin图标,是紫色的那个,不是老版本的XFtpAdmin,别高混了,如果您之前已经安装过老版本的XFile软件,会出现类似下图

注意用红框标记出来的部分,你会发现很多not found, 是不是有点心慌,其实别紧张,这只是XFileAdmin服务管理程序提示,新版本配置文件中的正确条目不存在,真正的服务核心会在启动的时候先自动尝试从老的配置文件格式中读取关键参数,如果连老的配置文件也不存在,那么会自动尝试用默认的参数进行替代.

如果您是全新安装,或者进行过任意一次配置保存操作,则显示的界面可能会象下图这样:

各位会发现,之前类似红框标记出的大量not found项目都有了准确的结果,这就说明配置条目已经正确存在.

现在先点左上角 系统服务 主菜单,选择 参数设置, 就可以进入参数配置,切换到 FTP服务属性页面,如下图:

启用FTP ipv4服务: 是否启用FTP ipv4服务,默认都是启用,一般家庭或者内网都优先走ipv4内网,如果ipv4被关闭,那么http流服务的ipv4部分也会被关闭,这是联动的.

启用FTP ipv6服务: 是否启用FTP ipv6服务,一般有外部访问或者远程访问需求的普通家庭或者小型公司,都建议启用,除非是类似大公司,绝对要求内网安全,那么可以禁用ipv6服务,把钩去掉就可以关闭.

最多在线用户数,其实这个是在线连接数,例如32 [最大63] ,意味着ftp ipv4允许最多有32个连接,同时已经启用了ipv6,因此ftp ipv6也允许最多有32个连接,这对绝大部分场合都适合,因为针对视频在线播放,普通的机械硬盘一般顶多能承受8个并发读,再多或者同时有写入操作,这个时候机械硬盘的效率会急速下跌.

服务端口[ipv4]:这个标准端口是21, 请注意,操作系统的防火墙对21端口服务有针对FTP的特殊限制和特殊穿透优化,如果没有特许需求. 如果您为了对于网络上那些脚本扫描,设置成高端口例如20021,也是可以的,如果您本身就没有公网独立ip地址[绝大部分家庭用户是不分配公网独立ipv4地址,而是通过NAT的),那么大胆的修改好了,但是如果有少数特殊用户申请了公网独立ipv4地址,那么建议不要改,理由和上面相同,21端口无论防火墙还是路由器,都有特殊优化,穿透性要好过改端口,这主要是针对第三方标准FTP客户端的访问,如果您仅使用我们提供的客户端,那么不受任何限制,随便改.

服务端口[ipv6]:请参考ipv4,这个建议您和ipv4端口好保持一致,虽然我们也允许您设置不同的端口号,但是强烈建议您保持相同.

Ipv4 TLS/SSL支持,这个是问你,FTP服务是否支持基于TLS/SSL的加密登录,最优的选择是 0 启用TLS加密连接(由客户端决定),这个是兼容性最好的,例如您在内网,需要高效率传输文件,这个时候加密是个累赘,您强制客户端走明文通道,速度是最快的,而且内网绝大部分场景下都没必要用加密.

Ipv6 TLS.SSL支持,这个和ipv4是相同的选择.

IPV4网络类型: 默认选择0 内网加公网,也就是允许内网和公网同时访问,如果用在封闭的内网环境,您可以选择 1 仅内网, 这样公网的ip地址连接会被丢弃,只允许内网连接.

IPV4网络类型:同上,不过用ipv6做纯内网访问的,非常罕见.

启用内部公告板:公后面几个字,因为界面太小给隐藏了,你可以通过右下角的拉伸,让隐藏的字符显示出来,这个很旧板是相同的,内部留言板.

禁用主动连接模式:主动连接模式,在某些特殊情况下,部署在同一内部服务器其他服务存在漏洞的话,有可能会被利用来做跳板, 通常情况下,优先使用固定数据端口连接,其次使用标准FTP的被动模式,最后才考虑主动模式,主动模式有一个特殊的优点,当服务器位于内网只做了主端口映射下,如果客户端有公网ip地址,有很大机会数据通道连接成功,除非你对网络安全有非常严格的要求,否则不需要禁用主动连接模式.,禁用主动连接模式会引发兼容性问题,很多命令行ftp默认只支持主动连接.

禁用明文口令:不是绝对必要不要勾选,否则使用明文的FTP登录会失败,类似windows资源管理器 ftp命令行等会失败.

所有登录失败视作攻击: 把登录或者连接超时的来源ip认定为攻击,该ip的失败次数超过规定次数会被拒绝一段时间才能解除.

启用扩展安全检测功能: 这个会指令服务器额外检测用户操作的目标文件或者目录,如果出现用户设置之外的目录会被拒绝.

基础数据端口[默认0]: 现在几乎没有什么人在NAT后部署FTP标准服务了吧,直接设置为0就可以了

现在切换到文件映射属性页面,如下图:

这个是FTP流映射成http/https流的总数量,同时包括了ipv4和ipv6映射,

最多映射文件数量: 这里是280,是一个比较中庸的数字,这个要根据服务器用户人数和使用频率来考虑,通常计算方法是 100 + FTP人数乘2*3, 也就是 100 + 32*2*3 ,大约就是280了

普通文件映射超时时间: 如果在规定秒数内没有被使用,则映射失效,通常设置数字为 280-480之间

媒体文件映射超时时间:同上,不过针对媒体文件,通常在普通文件基础上加 100-200, 480合适

公开分享映射超时时间: 通常设置为24--72小时,换算成秒.根据自己的需要进行调整,129600大约是一天半.

现在切换到第三个属性页 扩展参数

Ipv4固定数据连接服务端口 : 2020 , 默认是2020 ,这是XFile的扩展连接服务,是热监听,弥补FTP服务动态端口的冷监听,并减少端口占用,更适合防火墙.

Ipv6固定数据连接服务端口 : 2020 , 同上,不过是ipv6部分.

连接超时: 60秒,如果在60秒内没有完成连接,那么认为数据连接失败. 建议的数字为36-72

等待超时:72秒,如果在72秒内,请求方没有来及时获取已经完成的连接,那么会被自动清理,建议的数字为 40-100.

日志等级,0为不记录日志 5为记录所有信息,根据自己的需要选择日志等级,注意最大就是5,超过5是无效的,等于5.

日志文件大小限制:如果设置为0这样的数字,则系统认定为不限制日志文件大小,默认为2GB大小,单位是字节,当日志达到了限制的大小,那么会进行覆盖写入,当服务器重启并且之前的日志大小已经达到了规定最大数字,那么会清零并重新开始记录.

指定日志文件存储目录:为空,则默认保存在安装目录的config子目录下,您可以指定一个单独的日志存储目录.

仅允许管理员使用文件散列计算: 这是远程计算文件散列,这会严重消耗服务器的资源,一般情况下,这个功能只有管理员可以使用是合适的.

启用聚合传输CRC校验功能: 一般服务器端默认启用,但是要在传输中真正启用,还需要客户端也指定启用CRC校验,这个CRC不仅仅可以检查传输错误,由于聚合传输采用的是叠娃娃方式的校验,还可以同时检测出数据是否被中途篡改,如果发现数据CRC校验失败,聚合传输会失败而不是继续写入错误的数据或者重传.

强制兼容List非标参数:由于在苹果的各种客户端中,大量的app客户端都把list当成了可以加列表参数了,而不是目录参数,这个完全曲解了FTP协议,已经无法考证就竟谁是作俑者了,反正有一个算一个,几乎全部这样搞,这也是够奇怪的,我们用过滤的方式去解决这些app的错误列表参数,如果您遇到了这种应用,可以勾选后重启服务,一般兼容问题就消失,但是如果本来就没有兼容问题,则千万别勾选,兼容错误可能会导致windows正常的目录被过滤掉而引发其他错误.

强制禁止公网文件映射: 这个只有在非常特殊的场合下才禁用,普通不要勾选,一旦禁用,那么公网播放被禁止了.

新增映射时自动删除ftp旧映射: 常规情况下,一个客户端只能映射一个ftp流,一旦一个新的被映射,那么老的就应该被移除,默认勾选.

现在切换到第四个属性页

Ftp连接超时时间: 也就是如果Ftp指令在规定秒数内没有完成连接,那么就认为失败.

关键指令保护功能:这是oem功能,0为不启用,1启用 ,一旦启用该功能,而客户端中没有启用它,那么会导致登录或者操作失败引发兼容问题,非绝对保密安全单位不需要启用它

Ftp握手码:可以设置一个快速反蜜罐的握手码,用于在登录前快速确定是否是正确服务器,必须与客户端设置的握手码相同,或客户端设置为0[也就是不启用握手码检测],才会继续,否则会登录失败.

Ftp无指令超时时间: 也就是FTP noop timeout, 如果在多少秒内客户端不发送指令,则认为连接已经中断,这个数字一般在 480 [秒] 到900之间. 建议数字为610.

Ftp登录超时时间:如果在规定的时间内没有完成登录,那么连接会中断,这取决于网络延迟和服务器负载,一般建议设置的数字为 90 到 220之间.

生成服务器启动报告: 会生成当前启动的部分配置参数的报告文件,在config子目录下,这个一般建议勾选,一旦启动失败可以用于辅助查找问题.

现在切换到第五个属性页

新版本的XFile服务器端已经换用了全局线程池,参数设置的好坏与否会影响到体验

全局最多线程数量: 这个数字包含了ftp http 服务的总的最多连接数量,建议的数字为 72---180之间,双核心cpu建议少点例如 80, 4核心或者以上没必要设置太多,根据你服务器实际可能遇到的上限极限连接数加2,一般 128足够绝大多数场景的极限了.

线程池最低容量: 默认 5  , 如果低于最低容量,线程池会自动补充一些等待线程, 建议的数字为5---8

线程池最高容量: 16, 这个一般的建议数字为12--20,并发少就数字小点,访问繁忙用户多就调的稍微多点,而立万一遇到爆发性连接需求,而线程池容量在短时间内被耗尽,守护线程来不及及时补充,那么可能导致有几个连接在这个补充的间隙时间被拒绝.

小内存块数量: 这个建议的数字是 12 -- 25 ,15是个合理的数字

中内存块数量:这个建议的数字为10-25 , 因为用途不多,需求不大

大内存块数量: 这个建议的数字为 10 - 25, 用途也不多,需求不大

大内存块数量: 这是个关键的数字,包括文件上下传,http点播等都会需要用到大内存块,每块大小为 512KB,也就是0.5MB,因此建议在内存池中多保留几个,建议的数字为 15--35,超出内存池范围的请求就需要直接申请系统内存了,速度会受到影响.

现在切换到第六个属性页

最多http连接数量: 这个数字一般设置在56-112之间.

Http监听端口[IPV4]: 8181 如果是内网没有冲突,也可以使用80端口,但是一般建议使用高位端口,比如8181

Http监听端口[IPV4]: 8181 这个一般建议和IPV4的端口保持一致,使用高位端口,避免冲突

启用Ipv4的https服务: 因为界面太小,服务的务被隐藏了,拉伸一下右下角就可以显示完整, 如果对https在线播放的安全性有特殊的安全要求,可以同时启用https流服务,但是请注意,由于https流的证书是私有证书,部分播放器直接不认拒绝播放的,而且tls/ssl加密对视频或者音乐播放来说,会严重影响传输效率,我个人不建议你选择https流.

启用Ipv6的https服务: 同上,不过是ipv6协议.

Https监听端口[IPV4]: 8081 , 这个一般建议用高位端口,不要和http监听端口冲突了,更多情况是不建议启用https流传输.

Https监听端口[IPV6]: 8081,同上,不过是ipv6协议.

流传输超时时间: 如果客户端或者播放器长时间不执行读操作,那么认为超时,注意这个数字,一般建议范围是 900--1800之间,单位是秒,这是一个非常关键的参数,影响到播放的各种兼容性,建议保持默认的1200左右.

Http请求头超时时间: 55 单位是秒,如果在55秒内没有获取到客户端的完整请求,连接被断开,这个一般建议范围是 40-72.

Http多媒体类型支持[10]: 数字越大,支持的反馈类型越多,最大数字是10,建议的数字是10,为0,则统统按二进制类型反馈给客户端.

无映射时自动保护: 这个一般建议启用,可以保护服务器免受不必要的外部攻击,虽然可能罕见情况下会出现兼容问题,建议启用

遇到不存在的文件返回404: 这个图片部分文字又被隐藏了,右下角拉伸一下就能显示了,也就是用户可能请求一个根本不存在的文件,如果直接中断,类似浏览器这样的客户端会海量的尝试各种可能,形成了局部的攻击,因此一般还是勾选一下吧,告诉客户端文件不存在,不好的地方在于,这等于告诉恶意尝试的连接文件不存在了.

不正确的请求头返回404: 这个是否启用由您决定,不返回404可以让各种攻击者搞不清楚情况,但是遇到某些浏览器或者播放器会变相的不停尝试,直到遇到200或者400/500回答,我个人倾向不启用.

现在切换到第七个属性页

启用Ipv4内部防火墙保护: 没有特别特别的理由,一定要启用,对付类似穷举密码之类的行为很有效

启用Ipv6内部防火墙保护: 同上,强烈建议启用

允许每IP最多尝试次书: 10 , 因为有时候可能真的是忘记密码了,一般尝试个几次能找到,但是如果超过这个数字还不正确,该IP就被临时处理成黑名单了,一段时间内无论怎么尝试都会直接被拒绝,建议数字8--12

黑名单ip持续时间[秒],也就是多少秒内连续当做黑名单对待,当达到了最长时间,该ip重新被当作正常ip,继续错误尝试次数,又被拉黑,就这么个循环,这个数字一般建议数字在 800 -- 6000之间,根据自己的情况设置吧.

防火墙刷新频率[秒]:也就是每多少秒重新检测一次,是否有黑名单达到最长封闭时间该释放了,这个数字一般建议 60--120

防火墙队列长度长度: 也就是保持多少个黑名单ip记录,这个数字越大,能记录的黑名单ip或者恶意ip越多,付出的代价是每次连接检测消耗也会增加,建议的数字是128的倍数,例如 128, 256, 512, 1024根据自己的需求选择,如果您使用的是我们的email-dns技术,而没有使用ddns也没有类似bt的p2p客户端操作,那么128个一般够了.

启用ipv6前缀拦截: 这个一旦勾选,会把前缀相同的ipv6给拦截掉,因为ipv6地址实在太多,拦截范围是大了,但是误杀也很离谱,所以默认不启用,一般也不建议启用.

现在切换到第八个属性页

启动ipv6地址变化自动邮件功能: 这是个关键的开关,启用它,那么就启动了XFile服务器软件的关键功能,email-dns,就是当服务器ipv6地址发生变化的时候,会自动向用户指定的邮箱发送一封邮件,邮件里包含ipv6地址,客户端可以通过读取该邮件来自动分析出服务器新的ipv6地址.

优先使用服务器ipv6地址: 就是如果目标邮件服务器能解析出ipv4+ipv6地址,是优先使用ipv6服务器发送邮件还是使用ipv4,这里注意了,ipv6目前彼此不通的情况比较常见,特别是美国等,运营商之间简直是灾难级,因此非必要情况下不要勾选,默认不启用.

要求TLS/SSL加密: 这个请参考您的邮箱提供商,是老的SMTP/POP3明文,还是新的SMTP-SSL /POP3-SSL ,一般来说,绝大部分都是带SSL加密的,因此默认启用,绝大部分都应该启用加密.

仅信任系统证书链: 这个一般不需要勾选,勾选了可能导致兼容问题.

使用枚举法检测ipv6地址变化: 这是新版本XFile引入的一个关键的优化技术,旧版本使用的是模拟连接法获取ipv6地址,新版本默认使用枚举法,枚举法的优点是检测速度会大大加快,系统开销更少,没有特殊的情景或者需求,请一律启用,默认启用.

smtp服务器地址: 请注意了,这里是填写服务器的smtp服务器地址(smtp-ssl等同于smtp),经常有人将这里和客户端的POP3服务器搞昏,常见的类似mail.xxxxx.com和smtp.xxxx.com

smtp服务器端口: 加密SMTP服务器的公认端口是465 ,注意别和POP3端口搞错,也不要与非加密的SMTP端口搞错.

邮箱登录用户名: 大部分邮箱系统要求的是全名,类似 user@xxxxxx.com ,也有少部分只填写用户名就可以,这里直接填写你的用户名 比如 user,请根据您的邮箱使用说明来填写

邮箱登录口令: 这里注意了,大部分邮箱直接填写邮箱登录密码,但是也有部分邮箱比如263等,可能会给SMTP/POP3登录方式单独开立一个密码,需要使用那个系统生成的登录密码,具体使用哪个需要根据邮箱提供商说明来操作.

邮箱登录口令[编码格式]: 这个目前不可用,只为与之前版本保持兼容.

发件人: 写你自己 ,例如 user@xxxxxx.com ,因为这个原理就是自己给自己发邮件

收件人: 同上,也是写你自己

抄送到: 没什么意义,请保持为空

邮件主题: 这里要注意了,这个邮件主题非常关键,我们是根据这个邮件主题来判断邮件是否是ipv6-dns邮件的,只能使用英文字母数字和下滑线以及等于号冒号等,不可以包含空格回车中文等,否则会出错,例如 ZhanShanEmail_  , 或者 Lisi_Ipv6: , Bady_li_Ipv6= 等等, 总之,这个邮件主题一定要设计的正规点,别搞的一点意义都没有的一串胡乱字符,容易被你的邮箱反垃圾邮件系统误判成垃圾邮件给吃掉,那email-dns就不起作用了,最好在设置完邮件主题后,把这个邮件主题加入您的邮箱设置里的白名单,任何包含这个主题字符串的邮件都认为是白名单.

加密口令: 这也很关键,为了防止第三方仿冒发送垃圾邮件或者冒充的假邮件来引诱用户连接,这里要设置一个加密口令用来识别合法邮件,默认是1234abcd或者www.phoenixp2p.com ,请根据需要改写成你自己的密码,例如 zhan5740@w8888 ,这个密码必须与客户端里收取邮件的保密密码设置相同.

可以参考:电子邮箱的基础

现在切换到第九个属性页

这是没有开启定时备份系统的样子,现在启用它并设置一个条目

启用定时备份系统: 这个启用后,自动备份里的其他项目才同时启用,我们一直都不建议个人家庭用户使用RAID,特别是使用各种raid来代替备份的,我们是反对的,个人用户使用备份才是王道,raid一般是给大公司用的,用于减少停机时间!!

文件修改时间不同则覆盖: 如果来源目录和备份目标目录中存在同名同长度文件,如果来源目录中的文件1最后修改时间与备份目标目录里的文件1不同,那么来源目录1里的文件1将覆盖写到备份目标目录里的文件1,否则会跳过,因为文件长度最后修改时间和文件名相同,则认为是相同文件. 默认启用,如果不启用,则不考虑文件时间是否相同.

使用同步模式进行备份[慎重]: 这个一般 不建议启用,一旦启用,那么将会删除目标目录里存在而来源目录里不存在的目录或者文件,万一忘记容易导致问题.

跳过系统属性文件:这个一定要启用,不启用容易导致各种问题.

来源备份目录 1:是指哪个目录需要被备份

备份目标目录 1: 指上面的 来源备份目录1 里的内容,需要被备份到哪个目录里去 , 本页的设置是 将D:\tempx目录下的内容, 备份到 E:\temp里去 , 也就是来源目录是读取,目标目录是写入.

备份来源目录2:

备份目标目录2: 同上面的目录1的说明,也就是服务器最多可以设置两个备份操作,分别是1和2

同步执行时间[0-23]: 也就是什么时间执行备份操作, 0-23为小时数字,例如设置为2, 那么会在凌晨 2 点,自动开始执行备份操作.

每隔多少小时执行备份[小时]: 也就是没过多少个小时在指定的同步时间执行备份操作,一般用户,一个星期甚至半个月执行一次自动备份就可以了,数据多的用户可以尝试每天自动备份,设置为 24----240,此外还可以通过客户端指令服务器立即执行备份操作.

现在切换到第十个属性页,也是最后一个属性页

这个属性页是设置证书文件,它会自动读取旧版配置中的参数,这是兼容的

Tls证书文件: 旧版本中对应的是 ?InstallDir?config\011E.pem ,这是完全兼容的,如果你依然使用旧的证书,不需要修改它,新版本增加了20年的新证书,

私有密钥文件: 旧版本中应的是?InstallDir?config\server.pem ,也是兼容的.

私有密钥密码: 默认是a12345678, 新版本证书和旧版本证书都是用的这个密码,如果您自己制作了证书并修改了口令,请填写您自己的证书和密钥密码.

如果这个搞乱了不知道如何处理,那么这3个行全部设置成空,然后保存,会自动恢复成新版本默认设置的证书和密钥以及密码a12345678.

请注意: 对于有一定电脑技术基础的用户,我们都推荐您自行制作TLS/SSL证书来代替系统自带的证书,使用方法和旧版本的替换完全相同,  自制TLS/SSL证书教程连接  如果您没有制作程序openssl.exe,可以从网站的旧版下载连接里获取 ==>旧版下载连接

              使用自制的TLS/SSL证书代替系统自带的公用证书,可以更好的保护您自己专有的安全.

 

设置完成后,请按左下角的 保存 按钮,配置参数就被保存到配置文件中去了,如果您之前已经安装使用过老版本[指小于等于3.84的版本]的配置,也就是set.ini,您在按保存按钮后,会重新生成新的服务器配置参数格式,但是老的那一套配置会依然被保留,这是为了兼容性考虑而故意这么设计的,老版本用户,正常情况下,您什么都不修改直接启动服务就能成功.

 

现在,我们来看下账户设置,从主菜单 系统服务-->账户设置 ,可以打开XFile服务的账户设置功能

从2025.05.01版本开始,新增加了8个通用账户,此外特别注意,临时账户被设置为可以随时动态关闭的账户,当然前提是该账户被激活,也就是该账户必须被激活,同时管理员启用它 ,那么可以正常登录等,管理员也可以随时关闭它,这时候虽然账户是激活的,但是登录会失败,这个账户主要是为了安全性而特意留的,因为有些时候您可能不得不远程在不安全的网络连接情况下,使用明文标准FTP远程登录到服务器,为了降低损失和风险,通过使用临时账户,偶尔使用一下远程不安全的明文标准FTP,在应急操作完成后,立即关闭临时账户,可以减少损失和风险,但是开启的这段时间的风险肯定是要担的,后续把临时账户一关,然后密码修改后重启,风险就消除了.  其次是代理账户, proxy,这是个操作受限制的账户,几乎除了代理没有任何权限,因此不要使用它,保留给未来使用.

这个账户管理页面,是唯一使用了颜色区分的列表框,绿色代表激活,并且已经启用了备份账户模式; 而蓝色,代表激活,但是没有设置备份目录,因此无法以备份模式登录的.

现在双击你想要编辑的任意一个账户,比如双击管理员账户,如下图:

管理员账户的登录名是 kroot, 你可以任意修改,但是不可以包含空格等特殊字符,甚至你可以包含中文,但是不建议在用户名使用中文,万一你需要使用FTP命令行登录进行调试,那就糟糕了,标准FTP命令行不支持中文用户名,而且容易忘记,建议改称类似 zhangroot 这样的,好记点.

口令: 如果不需要用标准FTP命令行登录,那么可以放心大胆的使用中文密码, 只要你的密码中包含一个中文字符,这个密码的强度直接几何级暴涨, 一来目前互联网上的密码普遍只支持ascii码(其实大部分拜那些数据库里utf-8编码问题,导致很少有网络登录系统会去支持utf-8编码,而是统统限制ascii),这导致密码字典和规则普遍只针对ascii码,而中文编码不在这些字典中,几乎免疫了所有密码字典和规则. 例如  三@yuanhewu2_3张 ,这个密码的长度实际是18个字符,一个中文最少3个utf-8码组成,这种强度是非常高的.

编码口令: 这是和旧版本兼容用的

备份目录: 如果您希望这个账户可以上传删除改名等操作,那么应该为该账户设置一个备份目录,然后该账户就可以采用备份模式登录了,如果不设置,那么该账户无法使用备份模式登录,在备份模式下,能且仅能读写您设置的备份目录,当然,如果你需要管理多个磁盘或者分区,您可以通过将磁盘或者分区挂载到该目录下的空目录来实现,这个就不重复了.

下载权限: 这旧版本是相同的,在普通模式下,用户能且只能访问,设置的访问权限小于等于用户下载权限的资源,例如,这里设置的下载权限为105, 当资源设置的下载权限为0是,那么本账户肯定可以访问,当资源设置的下载权限为105时,由于105小于等于本账户的105,因此也可以访问,但是当资源设置的权限大于105,比如106时候,本账户将无法访问该资源.

公网设置权限: 默认为-1 或者0 ,也就是和默认下载权限一致,这个公网限制权限的本意是为了防止用户,特别是家庭中的小朋友,在外边不小心操作而设置,非特殊情况下设置为-1,也就是同普通下载权限.

网络类型: 默认为0

反向验证码: 这个反向验证码是用于确认我要连接的服务器是真的,类似双因素认证,用户登录到服务器确认自己的身份,然后通过反向验证码确认服务器身份,等于双向确认,可以设置包含中文的口令,例如 波b36583##why , 客户端可以通过设置相同的反向验证码来确保服务器的真实性,一般内网没这必要.

对外分享: 这个其实就是手机端的公开分享功能,如果不启用,那么就无法使用公开分享功能了. 一般默认启用,根据需要调整. 注意,对外分享的资源是无须密码,只需要知道链接任何人都可以访问,ipv6地址变化或者时间达到限制后会自动删除.

修改完成后,一定要按保存按钮保存修改,否则被丢弃不产生任何修改. 此外注意,XFile服务器并不会动态重载账户或者配置或者共享设置,必须重新启动服务才生效.

 

现在我们来看下发布资源的设置,主菜单 系统服务-->资源设置 来进入设置功能

这里注意下: windows下的目录字符可以用/,也可以用\,都是合法的目录字符

这个文件和旧版本是完全兼容的,格式也兼容,但是不再有公开共享目录[推送目录]了,所有目录均相同. 在空白处双击鼠标左键,可以直接跳出新建资源,也可以鼠标右键菜单或者右侧按钮都可以,双击已存在项目,可以对已经存在的资源进行编辑.

我们添加一个资源,这里注意下载权限,只有用户的下载权限大于等于0 [实际上肯定大于等于0]才能访问这个资源,例如和上面的管理员账户联动, 管理员账户设置的下载权限是105,如果我们将这个资源的下载权限设置成106,那么管理员将无法访问该资源,通常设置为0,等于是所有用户都可以访问,XFile服务是根据下载权限来决定用户是否可以访问该资源的.

新建或者修改完成,必须按 保存 按钮进行保存,否则所有操作被丢弃.

现在参数设置完成,如果你之前已经安装过旧版本的XFtpSvr,那么请使用旧版本XFtpAdmin管理程序,先停止旧版本服务,然后卸载服务,防止与新版本发生冲突.

在windows系统下,在调整完主设置参数后启动前(第一次启动前,或者修改了服务端口包括ftp端口 固定数据连接端口 http流服务端口),强烈建议您使用主菜单 --> 系统服务 -->重置防火墙, 设置程序会尝试自动读取您的配置文件set.ini,并根据里面的参数自动处理您的高级防火墙,这里注意下,由于windows高级防火墙下,实际不区分ipv4/ipv6, 而我们为了防止将来可能的升级,ipv4/ipv6是分别设置的,因此会出现ipv6相同设置下覆盖ipv4设置,其实这没有影响,因为相同配置只能存在一条,这不是错误.

如果你在XFile启动后发现局域网内其他电脑或者手机无法连接到XFile服务器,这通常就是因为没有在启动前使用 重置防火墙菜单 功能,导致了端口并windows系统防火墙封闭而无法连接导致.

然后,您应该使用XFileAdmin管理程序的系统服务-->安装服务,进行服务的安装,它会弹出对话框问你是否部署为自动启动服务,和旧版是相同的,

如果您选择是,那么XFileSvr后台服务程序会自动在您windows启动的时候自动启动,然后您仅仅想尝试,您可以选择否,然后每次都需要您手动启动.

安装完服务后,如果您已经完成了参数设置和前面的 重置防火墙 , 现在就可以尝试启动XFile服务了.

任何时候,您需要停止XFile服务,您可以通过程序的 系统服务-->停止服务 来停止

请注意,服务启动后,XFileAdmin.exe这个设置和管理程序就可以被关闭了,XFileSvr.exe是个后台服务进程,和前台管理设置用的XFileAdmin是没有直接联系的.

此外,在服务安装完成后,您也可以通过Windows操作系统的 服务管理来对XFileSvr.exe进行管理

作用和使用XFileAdmin进行管理操作是基本相同的,但是系统提供的启动类型更多,因为windows不同系统支持的服务类型越来越多.

 

 

 

当然,你依然可以通过直接编辑安装目录下的config子目录下对应配置文件的方法,来直接修改配置,对应的三个文件依然是 set.ini myaccount.ini myshare.txt.

下面是原始标准set.ini的配置文件参数 [新版本]

;
;XFileSvr.exe config file
;请谨慎修改,建议您使用图形工具进行配置

[XFile_config]
Version_number=1


[XFile_global]
Debug_mode=0

[XFile_ftp]
Service_enablev4=1
Service_enablev6=1
Service_portv4=21
Service_portv6=21
Service_ipv4tls=1
Service_ipv6tls=1
Login_v4musttls=0
Login_v6musttls=0
No_syshiddenfile=1
No_portmode=0
Bbs_enable=1
No_ftpplainpass=0
Basic_dataport=0
Max_users=31
Net_typev4=0
Net_typev6=0
Loginfail_blackip=1
Extend_security=1

[XFile_extend]
Econ_portv4=2020
Econ_portv6=2020
Econn_connecttimeout=56
Econn_datawaittimeout=65
Filehash_adminonly=1
Ftp_jointcrc=1
List_compatible=1
No_internetmap=0
Ftp_autoremovelastmap=0
Log_level=1
Log_maxsize=0
Sublog_flushtime=620
Sublog_maxsize=0
Log_path=

[XFile_http]
Max_session=72
Service_portv4=80
Service_portv6=8080
Enable_httpsv4=0
Enable_httpsv6=0
Service_sslv4port=8081
Service_sslv6port=8081
File_sendtimeout=1200
Get_timeout=60
Http_mimetype=10
Http_protectmode=1
Http_send404=1
Http_badhead404=0

[XFile_filemap]
Max_items=280
Timeout_normal=300
Timeout_media=480
Timeout_longmap=0

[XFile_option]
Command_protect=0
Connect_timeout=60
Joint_cmdtimeout=120
Ftp_shakecode=0
File_transfertimeout=300
Noop_timeout=600
Login_timeout=300
Make_reportfile=1
Removelong_onipv6change=1

[XFile_threadpool]
Pool_maxthread=72
Pool_low=4
Pool_high=16


[XFile_backup]
Enable_backup=0
Backup_checktime=1
Backup_nosyshidden=1
Backup_syncmode=0
Backup_gaphours=168
Backup_exectime=2
Backup_source_1=
Backup_dest_1=
Backup_source_2=
Backup_dest_2=

[XFile_memorypool]
Mpool_small=12
Mpool_middle=6
Mpool_big=5
Mpool_large=18

[XFile_Ipwall]
Ipv4_ipwall=1
Ipv6_ipwall=1
Max_trytimes=12
Record_seconds=1200
Loop_scangapsec=100
Ipwall_listnum=160
Ipwall_prefixpblock=0

[XSvrMailSet]
Enable_Sendmail=0
Ipv6_Sendmail=0
Tls_Sendmail=1
Timer_Seconds=0
Probe_Enum=1
Cert_Verify=0
Server_addr=
Server_port=465
Mail_username=
Mail_password=
;;下面这个Mail_spassword只为兼容旧版本保留 新版本里请不要继续使用
Mail_spassword=
Mail_from=
Mail_sendto=
Mail_cc=
Mail_cc1=
Mail_cc2=
Mail_subject=_XFile_dnsmail_
Encode_string=

[Tls_config]
Tls_certificatefile=?InstallDir?config\sslcert.pem
Tls_privatekeyfile=?InstallDir?config\sslkey.pem
Tls_privatekeypass=a12345678

 

注意,分号开头或者#开头的是注释行,无作用.

下面是标准账户文件myaccount.ini

;;XFile服务器账户配置文件
;;请根据需要进行修改
;;Active_Mode非0 则该账户激活 否则无效
;;Access_Level=该账户的资源读等级,例如如果该账户level为100,在资源设置中,所有等级小于等于100的资源都可以被读取访问,而超过100的则被禁止
;;Access_OutLevel=默认设置为-1,也就是和Level一个等级,如果该数字大于0,则当用户从公网访问的时候,会被赋予这个权限,非必要设置为-1,则该参数无作用
;;Access_upload=这个参数是旧版本中的,目前一律使用备份目录来确定该账户的备份模式登录权限
;;Access_speedlimit=这个参数在新版本中没有任何作用了,只为兼容旧版本 限制传输速度
;;Access_nettype=网络访问类型,默认为0 也就是公网和内网都可以登录
;;User_Name=这是账户的用户名 注意不要包含空格或者非法字符
;;User_Respcode=这是反向验证码 用于确定你要登录的服务器确实是你的服务器,用于防止蜜罐服务器攻击
;;Pass_Word=这是账户的口令,注意XFile包括服务器端和客户端都是支持中文密码的,但是少数标准ftp客户端是不支持中文口令的
;;SPass_Word=这是加密口令,旧版本兼容性而保留
;;Backup_dir=指定该账户的备份目录,该目录被指定后,对应的账户可以使用备份模式登录服务器,并执行上传下载同步删除等各种访问
;;Pass_Word256=软件自动生成的针对账户口令的散列,当服务器设置文件中开启usesha256账户后,将首先读取散列,可以去掉明文密码了 不要手动修改
;;Access_share=默认为1 允许使用分享功能
;;Access_NoWeb=不允许使用映射功能 这是个隐藏的未来功能 保持默认的0

[XFile_Account_File]
Version_int=2

[User_guest]
Active_Mode=0
Access_Level=0
Access_OutLevel=-1
Access_upload=0
Access_speedlimit=0
Access_nettype=0
User_Name=guest
User_Respcode=
Pass_Word=
SPass_Word=
Backup_dir=
Pass_Word256=
Access_share=1
Access_NoWeb=0

[User_temp]
Active_Mode=0
Access_Level=0
Access_OutLevel=-1
Access_upload=0
User_Respcode=
Access_speedlimit=0
Access_nettype=0
User_Name=temp
Pass_Word=
SPass_Word=
Backup_dir=
Pass_Word256=
Access_share=1
Access_NoWeb=0

[User_child]
Active_Mode=0
Access_Level=0
Access_OutLevel=-1
Access_upload=0
User_Respcode=
Access_speedlimit=0
Access_nettype=0
User_Name=child
Pass_Word=
SPass_Word=
Backup_dir=
Pass_Word256=
Access_share=1
Access_NoWeb=0

[User_parent]
Active_Mode=0
Access_Level=0
Access_OutLevel=-1
Access_upload=0
User_Respcode=
Access_speedlimit=0
Access_nettype=0
User_Name=parent
Pass_Word=
SPass_Word=
Backup_dir=
Pass_Word256=
Access_share=1
Access_NoWeb=0

[User_friend]
Active_Mode=0
Access_Level=0
Access_upload=0
Access_OutLevel=-1
User_Respcode=
Access_speedlimit=0
Access_nettype=0
User_Name=friend
Pass_Word=
SPass_Word=
Backup_dir=
Pass_Word256=
Access_share=1
Access_NoWeb=0

[User_admin]
Active_Mode=1
Access_Level=105
Access_OutLevel=-1
Access_upload=100
User_Respcode=
Access_speedlimit=0
Access_nettype=0
User_Name=admin
Pass_Word=88888888
SPass_Word=
Backup_dir=
Pass_Word256=
Access_share=1
Access_NoWeb=0

[User_proxy]
Active_Mode=0
Access_Level=1
Access_OutLevel=-1
Access_upload=0
User_Respcode=
Access_speedlimit=0
Access_nettype=0
User_Name=proxy
Pass_Word=
SPass_Word=
Backup_dir=
Pass_Word256=
Access_share=1
Access_NoWeb=0

[User_monitor]
Active_Mode=0
Access_Level=10
Access_OutLevel=-1
Access_upload=10
User_Respcode=
Access_speedlimit=0
Access_nettype=0
User_Name=monitor
Pass_Word=
SPass_Word=
Backup_dir=
Pass_Word256=
Access_share=1
Access_NoWeb=0

[User_user1]
Backup_dir=
Pass_Word256=
Pass_Word=
User_Respcode=
User_Name=
Access_NoWeb=0
Access_nettype=0
Access_speedlimit=0
Access_upload=0
Access_share=1
Access_OutLevel=-1
Access_Level=0
Active_Mode=0

[User_user2]
Backup_dir=
Pass_Word256=
Pass_Word=
User_Respcode=
User_Name=
Access_NoWeb=0
Access_nettype=0
Access_speedlimit=0
Access_upload=0
Access_share=1
Access_OutLevel=-1
Access_Level=0
Active_Mode=0

[User_user3]
Backup_dir=
Pass_Word256=
Pass_Word=
User_Respcode=
User_Name=
Access_NoWeb=0
Access_nettype=0
Access_speedlimit=0
Access_upload=0
Access_share=1
Access_OutLevel=-1
Access_Level=0
Active_Mode=0

[User_user4]
Backup_dir=
Pass_Word256=
Pass_Word=
User_Respcode=
User_Name=
Access_NoWeb=0
Access_nettype=0
Access_speedlimit=0
Access_upload=0
Access_share=1
Access_OutLevel=-1
Access_Level=0
Active_Mode=0

[User_user5]
Backup_dir=
Pass_Word256=
Pass_Word=
User_Respcode=
User_Name=
Access_NoWeb=0
Access_nettype=0
Access_speedlimit=0
Access_upload=0
Access_share=1
Access_OutLevel=-1
Access_Level=0
Active_Mode=0

[User_user6]
Backup_dir=
Pass_Word256=
Pass_Word=
User_Respcode=
User_Name=
Access_NoWeb=0
Access_nettype=0
Access_speedlimit=0
Access_upload=0
Access_share=1
Access_OutLevel=-1
Access_Level=0
Active_Mode=0

[User_user7]
Backup_dir=
Pass_Word256=
Pass_Word=
User_Respcode=
User_Name=
Access_NoWeb=0
Access_nettype=0
Access_speedlimit=0
Access_upload=0
Access_share=1
Access_OutLevel=-1
Access_Level=0
Active_Mode=0

[User_user8]
Backup_dir=
Pass_Word256=
Pass_Word=
User_Respcode=
User_Name=
Access_NoWeb=0
Access_nettype=0
Access_speedlimit=0
Access_upload=0
Access_share=1
Access_OutLevel=-1
Access_Level=0
Active_Mode=0

最后是myshare.txt, 为什么要用.txt格式呢,原因很简单,就是为了方便编辑,别误会了,这旧版本完全一致.

权限数字:用户的下载权限必须大于等于资源中设置的权限,才能看到并下载或者播放等操作
;格式 下载权限:保留数字 0:是否是推送目录:保留数字0*映射名称*本地实际目录
;例如 2:0:0:0*myshare*d:\dans_bk\
;上面这行表示 如果用户账户的下载权限大于等于2,才可以看到这个资源,保留数字0[之前是上传权限,但是新版本统一到备份模式,这个数字请设置为0]. 之后的0代表是普通目录,如果是8888,则表示该目录是公开的共享目录,能且只能设置一个共享目录
;后面跟一个*, myshare 代表的是映射名称 然后再跟一个* 最后是实际的本地目录 d:\dans_bk\
;;
;;分号开头为注释语句
;如果你启动服务后,登录服务器发现什么都不存在 那么一般就是本共享内容文件没有配置
;0:0:8888:0*share*d:\share\
;0:0:0:0*driver*d:\drv\
;10:0:0:0*电影1*d:\movie\

 


 

上面是在您新安装XFile软件时,标准配置文件里的内容,如果您在后续的修改中将配置改乱了,可以参考上面来进行恢复,我们没有公开启用的功能请不要自行开启. 此外,旧版本中,私有密钥密码:a12345678, 签署:phoenixp2p.com, server.pem是key证书,011E.pem是授权证书,新版本中, 011E.pem = sslcert.pem , server.pem=sslkey.pem ,您可以自行迁移,也可以保留旧的证书,密钥是同一个.

XFile的windows版本和linux版本的配置参数以及配置文件,是通用的,格式完全相同,编码也一样[utf-8],除了包含目录的部分设置例如备份目录等,其他完全相同,因此您可以在windows平台配置完,然后覆盖到linux版本的config子目录下的同时配置文件,然后只需要修改包含目录的少数几个参数,就实现了平移.


忠告: XFile服务器是完全依赖核心配置参数来运行的,通常默认情况下,我们的核心参数配置文件set.ini足够大部分用户的使用场景,是一个合理的配置参数文件,我们强烈建议您不要在没有搞清楚需求的情况下胡乱修改核心参数,否则可能导致各种的意外情况而导致服务启动失败.