XFile

关于XFile XFile架构 利用XFile打造家用文件服务系统 移动端应用 开发历史 下    载 授    权 联系我们

利用XFile打造家用文件服务系统

  昨天的奢侈品,就是明天的必需品,在电子技术快速发展的今天,私人组建家用文件服务器,已经变的非常容易了,这里我们将手把手指导您,打造一台属于您自己的家用文件服务器!

1 家用文件服务器的用途:

2 家庭装修时网络结构的布局:

3 家用文件服务器硬件采购和组装:

4 家用文件服务器操作系统的选择和调优:

5 服务器端XFile软件的安装和设置:

6 手机 平板和电脑端客户端软件的安装和设置

7 日常维护

8 常见问题和解决方法

 

Linux平台的设置请点这里

 

1 家用文件服务器的用途:

  家用文件服务器,一般家庭其实主要是媒体分级共享服务,为什么要分级,你懂的,也可以支持从外部,例如坐火车时,或者在外地住旅馆时,使用手机或者笔记本等通过网络来远程访问家庭文件服务器,在线观看服务器上影片下载资源等.至于资源从那里来,一般可以通过在实体电脑店里出钱拷贝,也可以通过网络市场例如淘宝ebay等通过直接购买高清资源硬盘来解决,常见的也是最廉价的途径是通过Private BT或者迅雷等下载软件,通过搜索bt种子或者连接等来下载实现,但是请注意版权问题,避免盗版;其次是文件的下载和上传功能,比如手机里的照片,视频之类的.

2 家庭装修时网络结构的布局:

  现在在房子装修时,通常会在家里做个多媒体箱,然后布置几条有线网络,但是很多都存在问题,例如家里只布置一条有线网络,其他以为用无线就能解决,多简单,还不用布线?但是,这里笔者给你强调一下,再牛的无线,也赶不上一条最普通的有线网络来的稳定!!! 有些装修公司想当然的,为了美观,把路由器,拨号猫[光猫],交换机全给塞进多媒体箱里,但是,这其实很不好,一来散热不好,多媒体箱空间有限,你塞一堆24小时运行的电子设备进一个封闭箱子,散热是大问题;其次,家用路由器和交换机,拨号猫,其实是无法实现365*30*24小时稳定运行的,一般在15到30天需要重新启动一次,否则性能会直线下降或者无法上网;最后,你把路由器放进多媒体箱里,会影响无线信号,经常有人认为,只上个网,信号弱点就弱点,能上就行,其实这个认识有问题,无线网络下,如果发射端[路由器]检测到与终端[用户端,手机笔记本等]信号太弱,那么双方都会加强无线发射功率,而手机端通常里身体近,因此反而对身体不好,因此最好的办法是将路由器从多媒体箱里拿出来,做个托板,放在客厅吊顶的下方. 给一个比较合理的网络布线参考图片,后续升级什么的也很容易.

3 家用文件服务器硬件采购和组装:

  目前常见的成品,有NAS如群辉等,也有路由器加USB的解决方法,但是为什么我们不推荐这两个解决呢,首先路由器加USB共享的方案,因为路由器本身的硬件限制,好点的解决不过是双核心ARM CPU +256m内存,路由器要同时承担上网,交换,web管理,ftp管理,防火墙等后台操作,本身性能已经很着急,再加上用USB外置共享,这种性能和稳定性你可想而知,因此可以直接忽略掉.

   而成品NAS,价格偏高,性能差,扩展性弱[盘位少,多于2个盘位的,价格离谱],而且操作系统普遍是基于FREE BSD UNIX或者LINUX加SAMBA来实现的,对普通用户来说就是个黑盒子,如果系统出个漏洞,例如前些日子暴出的UPNP远程访问漏洞等,除非你立即刷ROM,否则你自求多福吧. 对普通用户来说,windows是个很成熟而且友好的平台,更容易上手,技术成本更低,如果您需要在IPV4和IPV6双协议下部署本服务,如果您不想使用Windows服务器版,那么Linux相对来说更安全,我们也提供了Linux版的服务器软件. 

  相对来说,我们推荐用Windows PC来做家用文件服务器,因为有时候需要长时间稳定运行,因此需要同时考虑功耗,性能,噪音,散热,性价比等,在今天,2017年8月这个时间点,推荐的硬件如下: [单纯的文件服务器], CPU, Intel celeron g1620/1630,或者 pentinum g2020t/2030t, 主板, Asus MSI Gigayte这三个牌子的H61 H67 H77 B75等带集显的主板都可以, 内存 , 2条2G DDR3-1333 一共4g, 电源, 这非常重要,再强调一次, CPU 主板你可以买二手或者家里淘汰的,但是这个电源一定要买新的买好的,这关系到你的硬盘寿命,我们推荐 长城巨龙系列 航佳 磐石600S以上 或者台达服务器电源,但是全新正品台达服务器电源零售非常少见,因此还是推荐前两个. 硬盘, 建议购买一个SSD 60g-120g 硬盘用来安装操作系统 , 至于文件服务盘[资源盘], 建议不要超过3个,目前这个时间点, 推荐买WD 黑盘 或者西捷酷鱼 普通7200转 3TB硬盘,当然如果你愿意购买专用的企业硬盘或者NAS硬盘,那更好,但是普通家用毕竟要考虑成本,因此普通硬盘就可以.至于组不组RAID,看个人偏好吧,一般是不需要. 这样的一台文件服务器,在无负载的时候,功耗非常低,大约只有35W左右,就算加上硬盘,典型的同时有5个人同时看1080P电影,功耗也就在60瓦左右,比NAS [50瓦]高不了多少,最新版本服务器软件中,默认开启了搜索功能,由于搜索需要耗费大量cpu资源,因此如果您需要多人同时频繁使用搜索功能,我们建议您使用更好的多核CPU.    如果您需要一年365天全天运行的文件服务器,我们建议您使用服务器主板+ECC内存的实现,普通pc常年运行稳定性是不够的.

4 家用文件服务器操作系统的选择和调优:

  Linux或者Free BSD UNIX操作系统免费,安全性相对比windows桌面操作系统更安全,而且发展到现在,已经非常容易部署和使用,比较适合有探索精神的用户.

  Windows server 操作系统,例如 windows server 2008 2012等,我们不建议普通用户使用,因为server操作系统配置需要技巧,驱动少,对普通的家用文件服务器来说,大才小用了.

  至于Windows xp vista 7 8 10各操作系统,我们强烈建议您采用 windows 7 64位操作系统,虽然win10是最新的操作系统,但是win10的系统太过"霸道",很多后台服务,无法象win7那样通过服务管理进行禁止,对系统的开销太大,下面我们以windows7 professional x64 sp1操作系统为例,关闭后台服务,来示范如何打造一个安全的操作系统.

  首先,请将win7 x64操作系统安装在您的家用服务器的SSD硬盘上,安装驱动并打上SP1补丁,然后请联网,安装最新的补丁,这可能会耗费您3个小时的时间;请记住,务必使用原版windows操作系统映像进行安装,切末使用各种Ghost版,因为非原装的windows系统可能被安装了后台木马软件,或者某些全家桶软件等.

  然后,请在控制面板里,打开 系统->高级系统设置->系统保护,关闭所有的磁盘还原功能,

  如果您不需要远程桌面之类的,请在 远程属性页面里 关闭远程功能;在高级属性页里,在启动和故障恢复里,写入调试信息,设置为无. 请插上网线,设置网络连接为家庭网络[如果您需要使用upnp],或者设置为工作网络.

  然后请在 开始菜单->附件->命令提示符, 使用鼠标右键, 在弹出的右键菜单里  以管理员身份运行, 打开命令行, 请输入 powercfg -h off , 如果没有任何错误,那么没有任何提示,直接到下一行命令等待,请输入 services.msc , 会弹出系统服务管理界面,也可以通过控制面板->管理工具->服务 来打开. 建议禁用我们标记出来的服务,特别是server 和 workstation服务,这两个后台服务是windows系统的漏洞之母,如果不需要使用samba,务必禁止这两个自动启动的服务.

在禁止这些后台服务后,通过 控制面板->网络和共享中心->更改适配器设置, 选择已经连接的网络适配器,点属性

 

如果要彻底点,可以把Microsoft网络客户端 和 Micorsoft 网络的文件和打印机共享 这两个协议给 卸载了, 就算不卸载,也务必把前面的钩去掉,可以这么说吧, Windows平台糟糕的安全性,好多漏洞是这两个东西传播的.切换到共享页面,把不需要的勾给去掉.

最后,如果您对windows的管理比较熟悉,可以用管理员权限打开命令行,请输入 gpedit.msc,通过本地组策略,来关闭一些用不到的功能. 命令行里输入 netstat -a, 查看系统默认打开的端口,如果发现 135/136/138/139/3389端口在经过上面的操作后,依然是打开状态,您可以在windows系统高级防火墙里,新建禁用项目,来关闭这些端口,经过这些操作后, 这个windows7系统,至少在系统层面,基本上达到了一个非常安全的级别,普通的漏洞已经无法影响这台电脑了.

5 服务器端XFile软件的安装和设置:

  在前面的win7 x64操作系统安装完成后,请在您的操作系统所在盘下,例如c盘下,单独建立一个文件夹,并命名为prog或者类似的目录,专门用来安装各种软件,单独建立一个目录的好处在于,可以很方便的打开目录,避免管理员权限导致的各种无法修改.

  请下载最新版本的XFile软件,在xfilesetup.exe上,用鼠标右键 以管理员身份运行 ,执行XFile的安装,

建议您修改默认的安装目录,注意,最好安装到独立文件夹,如下图:

然后一路下一步,完成安装工作.

安装完成后,在您的桌面会有两个小图标,请双击打开XFtpAdmin图标[会出现管理员权限提示,请按是]

如果您对电脑软件使用配置不熟悉,也不想请求别人帮助,并且您的电脑上没有任何私人文件或者保密文件等机密文件,您可以参考这里 快速完成设置和启动.

这样将打开XFile文件服务管理程序,如下图:

请注意蓝色框标记出的部分,同时按下 ctrl alt c 3个键 [注意,如果您在后台同时运行qq等程序,可能出现冲突,建议您先临时关闭qq等软件,避免快捷键冲突],系统将自动以管理员权限打开3个核心的配置文件,当然您也可以在XFile安装目录下找到这3个文件,分别是set.ini, myaccount.ini,myshar.txt

这3个文件都是UTF-8编码,必须使用管理员权限打开才能编辑修改[如果安装在系统程序目录下], 为了避免各种问题,我们建议您通过XFtpAdmin软件里同时按ctrl alt c 三个热键来打开修改.

XFile是服务器端的后台软件,我们目前没有专门开发图形界面的配置,而是采用直接打开的方式进行修改,后缀都是ini,首先详细解释一下每个项目的含义,注意,set.ini配置文件必须谨慎修改,小小的一个配置错误,可能导致各种问题.

请注意,2018.02.10版本开始,我们增加了快速简化配置功能,
[XSetSimple]
Mode_GuestSimplest=0
如果这两行不存在或者Mode_GuestSimplest=0,说明快速启动是被关闭的;
如果Mode_GuestSimplest=1或者任何非0数字,那么快速简化配置功能被启用,在这个模式下,服务器会自动发布除C盘[软件所在盘]以外的所有磁盘,并自动设置成内网,允许任何人使用任何口令登录到服务器,这可能导致安全问题.
您可以通过修改成Mode_GuestSimplest=0来关闭这个功能,默认本功能是关闭的,但是可以在XFtpAdmin管理程序中,通过同时按Ctrl Alt P 来激活这功能.如果您熟悉配置,您可以在软件安装目录下的config子目录下,建立一个safeserver.txt的空文件,来彻底禁用这个快速简化配置功能.

 

特别提醒注意,由于XFile服务器端已经支持TLS/SSL加密传输协议,而默认的证书为开发者使用OpenSSL制作的免费证书,并不在系统的证书列表中,事实上也无法为动态的家用IP申请证书,因此在使用某些第三方软件或者播放软件时,可能会提示要求你确认证书的有效性,请务必点确认,否则连接会中断或者播放无法继续.

 

[XSvrSet]

这一行不能修改,这是参数配置的参数[KEY]标记,一旦修改,后续的参数服务器程序将全部无法识别

Ipv6_Enable=1

Ipv6_Enable 是否开启对IPV6的支持,如果仅在家庭或者小公司内部使用,那么用不到IPV6,建议关闭,如果要在外面例如火车旅馆或者公司等远程观看家里或者公司服务器上的电影音乐等,并且家里或者公司的宽带支持ipv6协议,那么建议开启,数字为1.

Ipv4_Enable=1
Ipv4_Enable 是否开启对IPV4的支持,默认是开启,因为目前IPV6并没有普及,而且在家庭内部或者公司内部应用,是不需要IPV6的,建议开启,默认开启,数字为1

Http_disable=0
Http_disable 是否禁止http服务, 默认是0,也就是不禁止,除非非常非常特殊的要求关闭http流服务,否则不要设置,因为http流播放远比ftp流播放来的流畅,兼容性更好,速度更快.

OldMd5_Disable=0
;OldMd5_Disable 是否禁用对老版本MD5加密口令的支持,这主要是为了版本兼容,除非你所有设备安装的我们的软件都是最新版,否则不建议你禁用,建议保持默认0.
 

TimerUpRandom_Enable=1
TimerUpRandom_Enable XFile文件服务协议扩展了FTP指令,默认采用加盐的MD5加密口令[标准FTP是明文口令],这个开关指定是否定时更换这个盐值,建议开启,这样更安全点,付作用是如果修改盐的时候正好有软件进行流点播,那么可能会暂时失败,需要重新播放,不过概率非常小.
 

Http_serviceport=80
Http_serviceport 这是IPV4 http流服务的端口号,默认是80,一般用在内网,也就是家庭或者小公司内部网络,建议数字是80 , 如果要开启https流服务,那么建议修改成默认的443端口
 

Http_serviceportipv6=80
;Http_serviceportipv6 这是IPV6 http流服务的端口号,默认是80,一般用在公网,建议数字是80 , 如果要开启https流服务,那么建议修改成默认的443端口, 特别提醒注意,电信等网络默认可能封闭了80和443以及21端口,因此如果使用默认端口可能在外部可能无法访问,需要修改成其他端口,例如8080,2121等,这没有规定,只能自己去一次次修改测试
 

Http_speedlimit=0
Http_speedlimit限制http流传输的速度,单位是字节每秒,如果小于一定的数字例如32768,那么系统会认为没有意义,而设置为0,也就是不限速,一般建议为0 不限速
 

Http_ipv4ssl=0
;Http_ipv4ssl 针对http ipv4访问,是否开启tls/ssl加密传输,默认为0,关闭,这一般没有必要,除非文件很机密,因为XFile主要用途是在线视频音频播放,而开启tls/ssl也就是https加密协议,除了浪费cpu资源和带宽,没什么意义,建议为0 也就是关闭
 

Http_ipv6ssl=0
Http_ipv6ssl 针对http ipv6访问,是否开启tls/ssl加密传输,默认为0,关闭,这一般没有必要,除非文件很机密,因为XFile主要用途是在线视频音频播放,而开启tls/ssl也就是https加密协议,除了浪费cpu资源和带宽,没什么意义,建议为0 也就是关闭
 

File_HideSysRdly=1
File_HideSysRdly 是否隐藏系统只读和系统文件,默认是1,建议为1,如果设置为0,那么所有系统文件和只读文件会被客户端获取,正常情况下这没有意义,并可能导致问题,建议保持默认的1
 

Play_Enable=0
Play_Enable 是否支持服务器端远程播放视频,这本来是为手机端遥控准备的,目前不需要,因此请设置为0,默认为0 也就是关闭
 

Upnp_Enable=0
Upnp_Enable 这是针对IPV4 网络的端口映射功能,设置为非0,可以自动开启UPNP端口映射,将原本内网的端口映射到路由器或者网关的外部端口,注意,该功能只支持windows vista /7/8/10等桌面系统,不支持windows server 和Linux操作系统,如果您IPV4网络下只在内部使用,请设置为0也就是关闭,设置为非0,可能导致服务器被外部攻击,除非有必要,否则请设置为0.
 

Port_Service=21
Port_Service 这是IPV4 FTP也是XFILE文件服务的主服务端口,默认21 但是类似电信等ISP封闭了公网的21访问端口,需要修改,但是一般情况下,IPV4只用在家庭或者公司内部网络中,不需要映射到公网,因此不需要修改端口,建议保持默认的21端口好
 

Port_Serviceipv6=21
Port_Serviceipv6 这是IPV6 FTP也是XFILE文件服务的主服务端口,默认21 但是类似电信等ISP封闭了公网的21访问端口,需要修改,例如修改成2121等,但是具体需要测试,请根据实际情况进行设置,默认21
 

Port_DataBasic=0
Port_DataBasic 这是为FTP协议的数据链接端口,设置的基础端口号,由于有些服务器安装了防火墙软件,对外部可访问端口段有限制,通过设置这个数字,可以调整数据端口号,例如设置30000,那么FTP会使用30000-31000之间的随机端口作为数据端口,您只需要在防火墙里设置30000到31000为开放端口就可以,注意这个数字设置从1025到64000,使用的端口范围为设置数字到设置数字加1000,默认为0,也就是不设置
 

Nettype_Ipv4=1
Nettype_Ipv4 这是IPV4接受的网络类型,0代表公网和内网都接受,1代表只接受内网,2代表只接受公网地址,默认是1,也就是只接受内网地址,例如192.168.x.x 10.x.x.x等,这样外部用户无法访问,是最常见的设置,也是比较安全的设置,外部访问一般建议使用IPV6,毕竟家用IPV4地址很多都是保留地址.
 

Nettype_Ipv6=0
Nettype_Ipv6 这是IPV6接受的网络类型,0代表公网和内网都接受,1代表只接受内网,2代表只接受公网地址,默认是0,目前IPV6正在国内加速普及,而IPV6的好处是每个家庭都可以分到无数个公网地址,也就是可以通过外部直接访问的IP地址,一般IPV6都用来提供公网服务,默认为0,也就是内外都可以访问,如果您不希望服务器被外部访问,可以设置项目Ipv6_Enable=0来彻底禁用,这里只设置允许的IPV6网络类型.
 

Ftpssl_Ipv4=0
Ftpssl_Ipv4 用来设置是否支持IPV4 ftps安全扩展,注意,tls/ssl扩展要求证书,而家用服务器没有域名因此实际是申请不到证书的,我们为了简化设置使用oopenssl制作了一个自带的证书文件,您可以根据需要自行替换,0 不开启 1 可选 2强制 默认是0 除非有特殊安全要求,一般没什么必要
 

Ftpssl_Ipv6=0
Ftpssl_Ipv6 用来设置是否支持IPV6 ftps安全扩展,注意,tls/ssl扩展要求证书,而家用服务器没有域名因此实际是申请不到证书的,我们为了简化设置使用oopenssl制作了一个自带的证书文件,您可以根据需要自行替换,0 不开启 1 可选 2强制 默认是0 IPV6由于是公网应用,如果您有安全方面的需要,可以设置为1或者2
 

AuthTlsPrompt_Disable=1
AuthTlsPrompt_Disable 这是用来处理如果客户端发送FEAT查询服务器支持的扩展指令的时候,是否明确提示支持AUTH加密,有些第三方客户端是根据这个回答来确定是否启用ftps加密登录的,如果支持就会优先使用加密登录,注意,ftps加密会消耗服务器比较多的系统资源. 如果设置为1,则不提示,为0,则提示.
 

NetClose_Enable=1
NetClose_Enable 是否支持远程关机,例如通过手机客户端关机,默认是支持,但是如果是Linux系统,请根据需要设置,毕竟Linux下服务比较多,0为禁止远程关机.
 

Timeout_Login=65
Timeout_Login 这是设置服务器要求每个连接必须在指定时间内完成登录,建议45到72之间 单位秒
 

Timeout_Noop=150
Timeout_Noop 要求客户端每过多少时间就发送一个NOOP指令保持链接,一般建议数字为120到300之间,单位秒
 

Timeout_Command=65
Timeout_Command 每个指令必须在多少时间内完成,一般不需要修改,单位秒
 

Code_Server=0
Code_Server 这是为将来扩展保留的参数,目前没什么作用,设置为0


Code_Sign=0
Code_Sign 这是加强的反向验证数字,类似tls,但是通过设置这个数字可以让用户的客户端识别服务器是否是自己的服务器,目前服务器端已经支持,但是客户端目前暂缓部署,默认数字0
 

USign_Enable=0
USign_Enable 是否支持Code_Sign加强反向验证数字 目前请设置为0 也就是关闭
 

Log_Level=0
Log_Level 这是一个非常重要的调试开关,为0, 则不记录任何日志, 1-120,数字越大,记录的信息越详细,同样系统资源耗费也越大,输出日志文件默认是程序安装目录下的config子目录里的xlog.txt 和wlog.txt , 在服务器设置完成后,建议将Log_level设置为0,也就是不记录任何日志.
 

Account_Encode=0
Account_Encode 使用加密账户文件,保留给未来使用,请务必设置为0
 

Code_Shake=0
Code_Shake 默认为0 这个数字是显示的用来识别服务器是否是您真正要登录的服务器,如果此数字非0,那么您必须在客户端软件中设置握手码为相同的数字; 由于标准FTP协议本身存在单向认证的问题,我们在设计XFile协议的时候,在标准FTP协议的基础上添加了简单的双向认证,这是服务器端的识别数字,64位,主要用来标记服务器确实是我们要连接的服务器,默认是0,目前不要修改,如果修改了这个数字,那么客户端的服务器ID数字同样必须进行修改. 这个参数与客户端的设置必须相同,如下图: 同样,在android移动端,服务器握手码也必须是相同数字.

Edit_Enable=1
Edit_Enable 目前没有作用,只起到兼容作用


Upload_Enable=1
Upload_Enable 是否允许FTP上传文件到服务器,设置为0 则彻底禁止客户端上传文件到服务器 设置非0为允许上传,前提是发布的资源目录里设置了上传权限
 

Gtpd_Disable=0
Gtpd_Disable 是否进制获取生成和使用影子口令 非0为禁止 0为启用 默认0 ,启用更安全
 

Ftpmd5_Disable=0
Ftpmd5_Disable 是否禁用更安全的MD5加密口令登录,如果设置为非0,那么只能用明文口令登录,会导致安全问题,默认为0,也就是允许MD5口令登录,除非绝对必要,否则不要设置为非0.
 

Timer_Shutdown=0
Timer_Shutdown 是否启用定时关机 本参数只在windows版本起作用,Linux版本目前禁止定时关机功能 默认为0 也就是不启用
 

Timer_forceshutdown=0
Timer_forceshutdown 是否支持强制关机 当服务器接收到定时关机事件,但是如果目前还有连接到服务器的客户端,是否强制关机 默认为0 也就是不强制关机 设置为非0则强制关机
 

Transnoop_Disable=0
Transnoop_Disable 是否允许在FTP文件传输过程中发送NOOP指令 极少数客户端才会要求这个功能,设置为0启用 设置为1禁用
 

Internethttp_Disable=0
Internethttp_Disable 禁止从公网执行http流播放,默认为0,也就是允许,一旦本参数设置为非0,就无法支持外网的http流播放,默认为0,除非绝对必要,否则请设置为0
 

Str_TimerHour=23,0,1,2,3,4,5,6,7
Str_TimerHour 指定定时关机时间,24小时制,例如 23,0,1,2,3 那么当服务器检测到时间段为指定时间,会自动执行关机
 

Timeout_PoolRefresh=86400
Timeout_PoolRefresh 定时更新登录用加密盐数字的时间,单位是秒,建议不要修改
 

Search_Level=2
Search_Level XFtpsvr服务支持文件和目录的缓存检索功能,这里设置缓存检索的深度 参数为0或者1或者2,代表检索几层目录[从根目录开始计算],默认为2
 

Search_Disable=0
Search_Disable 是否禁用XFtpsvr支持的文件和目录缓存检索功能,一般建议开启,也就是设置为0,设置为1,则关闭检索功能.
 

Search_MaxReturnItems=0
Search_MaxReturnItems 设置检索每次返回的最多条目数,为0,则不限制,默认是0


[XSvrMailSet]

这是一个标记字段,请不要修改

Enable_Sendmail=0
Enable_Sendmail 是否启动自动发送服务器IP地址邮件功能,由于家庭或者小公司宽带接入,服务器是没有域名的,即使申请动态域名,还存在效率等问题,安全性上也没有保证,如果给你解析到恶意的蜜罐服务器,就直接被击破了,因此决定在服务器端加入定时发送邮件功能,将服务器的IP地址[一般ISP会在3到15天更新一次您拨号获取的IP地址]通过邮件的方式发送到指定信箱. 如果非0 , 则启用,如果为0,则不发送邮件.
 

Ipv6_Sendmail=0
Ipv6_Sendmail 如果邮件服务器是位于IPV6的公网,那么请设置为1,否则设置为0,也就是目前主流的IPV4
 

Tls_Sendmail=0
Tls_Sendmail 如果服务器要求tls/ssl加密传输 那么请设置本参数为1,如果是普通的SMTP服务器[默认端口25],那么请设置本参数为0
 

Timer_Seconds=0
Timer_Seconds 指定每多少时间发送一封邮件,单位秒,默认0也就是24小时发送一封邮件
 

Server_addr=
Server_addr是邮件服务器地址,类似 mail.yourname.com 这样的地址,请根据实际进行设置
 

Server_port=25
Server_port是服务器端口,一般不要求加密的SMTP是25,而加密的是465或者587
 

Mail_username=
Mail_username 是你的账户名,也就是登录到邮件服务器的账户名,例如 jack_li@yourname.com
 

Mail_password=
Mail_password这是明文的邮件登录口令,如果您的服务器可能有其他人使用,那么使用明文会导致安全问题,请使用下面的加密口令
 

Mail_spassword=
Mail_spassword 这是加密的口令,可以通过XFtpAdmin管理软件或者XHome客户端软件里,按ctrl alt e,弹出加密对话框,生成加密口令,然后黏贴到这里


 

Mail_from=
Mail_from 邮件发送人 例如jack_li@yourname.com 一般就是你自己的账户
 

Mail_sendto=
Mail_sendto 收件人 一般也是自己,也就是将服务器的IP报告邮件发送给自己 例如 jack_li@yourname.com
 

Mail_cc=
Mail_cc 抄送,一般不需要设置
 

Mail_subject=
Mail_subject 邮件主题,由于有些邮件服务器设置了特殊的反垃圾邮件,有可能会把这个邮件当垃圾邮件处理,您可以通过设置邮件标题,并同时在您自己的反垃圾邮件规则里设置允许指定标题的邮件为白名单来避免这个问题. 该项目可以为空.

如果您设置了自动发送邮件功能并成功配置参数,那么您会定期收到类似下面的的服务器通知邮件:

您只需要注意IP地址和Ftp端口就可以了.


[XSvrSetStr]

这是一个标记字段,请不要修改

 

Log_Path=
Log_Path日志文件的目录,一般不需要修改,保持为空就可以,如果进行设置,那么必须保证里面有个子目录是config,否则会导致日志文件失败.
 

TLS_certificatefile=?InstallDir?config\011E.pem
TLS_certificatefile 这是服务器支持FTP TLS SSL加密需要的证书文件 默认使用openssl制作的,您可以自行替换
 

TLS_privatekeyfile=?InstallDir?config\server.pem
TLS_privatekeyfile 证书私有key文件
 

TLS_privatekeypass=a12345678
TLS_privatekeypass 加密口令

下面的几行是用于https服务,意义和上面一样
HttpTLS_privatekeypass=a12345678
HttpTLS_privatekeyfile=?InstallDir?config\server.pem
HttpTLS_certificatefile=?InstallDir?config\011E.pem

 

然后,切换到账户文件myaccount.ini,为了保持服务器端软件的整体安全可靠高效,账户文件没有引入数据库技术,而是在代码中采用硬代码的方式,直接限制最多有5个账户,分别是访客账户,小孩账户,临时账户,父母账户,管理员账户.

账户文件一共有5个用户,一目了然,这里详细解释每账户的组成,

用[ ]括起来的部分是每个账户的KEY,不能修改,您可以修改的是下面各行=符号的右边,以第一个User_guest 访客账户为例子,来进行说明,

Active_Mode=1   这表示该账户目前有效,如果把1修改成0,那么该账户无效,也就是用户无法使用访客账户登录到您的文件服务器.
Access_Level=0   这是该账户的浏览和下载权限,服务器端发布的不同目录有不同的权限,该数字越大,权限越高,只有当该数字大于等于服务器特定目录的下载权限时,该目录才会被该账户显示,并允许下载,否则将是不可见,并且无法下载的. 一般情况下,访客给予权限是最低的0.
Access_upload=0  该账户是否有上传和修改[删除]权限[0 没有权限, 1 或者2  有上传修改权限],该功能只能用于服务器端有上传权限的目录,并且该目录的权限应该小于等于用户的Access_Level ,除非必要,否则请设置为0,允许上传[删除]资源是个危险的功能,一旦误操作,可能导致各种严重问题,例如资源被删除.
Access_speedlimit=200000  该账户的下载限制速度,单位是字节每秒,如果该数字例如小于8000,那么等于不限制速度,默认为0,表示不限制速度,除了给访客账户,有必要限传输速度,其他账户我们建议您设置为0,也就是不限制速度.
User_Name=anonymous  代表用户名,该字段第一个字符不可以是$字符,例如,$anonymous,这样的是不被接受的,您可以改成任何您想要的用户名,例如 guest 或者用来忽悠人的adminuser等,例如 User_Name=guest 那么您的账户用户名就变成了guest,您必须在客户端和移动端修改用户名.最长为31个字符.
Pass_Word=12345678  代表该账户的口令,最长31个字符,建议用英文字母+阿拉伯数字,例如2018_ningbo 这样的.

其他几个账户,[User_temp],[User_child],[User_parent],[User_admin]里每项条目代表的意义类似,请自行修改.

打开myshare.ini文件,配置我们要发布的资源,如下图:

和账户文件类似,也是一个纯UTF-8编码的文本文件,每一行代表一个发布的目录,格式:

下载权限:上传权限*映射名*映射目录

例如: 0:0*book*d:\book\ 表示 下载权限是0,也就是,我们设置的账户里,Access_Level=只要大于等于0,那么就可以看到该目录,并可以下载或观看该目录下的文件. 冒号后的那个0,代表该目录拒绝上传修改,也就是目录是只读的. 前一个book,代表映射的虚拟目录名是book,也就是呈现在客户端上会 显示一个叫book的目录, 而最后的d:\book\,代表的是该目录的实际位置.

下载权限,一般我们建议设置为0到100,这是和账户的Access_Level对应的,上传权限,为0,则该目录不允许上传修改,为1,则可以上传,但是不可以删除修改等,为2,则可以上传和删除,特别注意,如果设置为-1或者-2,那么这个目录只能被用于上传,而无法下载,但是可以被现实,也就是个只能用于上传的目录.

例如:10:2*lx*d:\lenovo\ 这个代表可以下载,权限是10或者以上[Access_Level], 2代表允许上传和修改,注意,这个上传的前提,是该账户的Access_Level必须是10或者以上,否则无法看到目录的.映射的目录名是lx,实际目录是d:\lenovo\

请注意,分号开头的行是注释行,没有任何作用!!!

在新版本中,你可以通过XFtpAdmin软件中同时按ctrl alt d 键,来自动配置所有的共享磁盘[除了C盘和服务器软件所在磁盘],都采用0权限共享,请务必保证配置的时候服务没有启动,否则可能失败.

在完成三个配置文件的修改后,我们运行服务核心管理程序XFtpAdmin,如下图:

红线标出的是服务器地址和端口,您需要将这些记录,并提供给客户端.我们强烈建议您在家用路由器里,将这台电脑的IP地址进行静态绑定,这样可以长期固定一个IP地址,而不需要进行频繁的更换,方便使用.请点击服务 菜单, 在您完成设置后,必须使用服务菜单完成服务安装,

点安装菜单后,会弹出一个菜单让您选择,如下

意思是,是否将服务安装成后台随windows启动而自动启动的服务,如果您要长期运行,请务必选择是(Y),如果您选择否(N),则每次运行您必须手动启动这个服务,如果选错了,你可以通过卸载服务后,重新安装,选择新的启动模式.

 

6 手机 平板和电脑端客户端软件的安装和设置

  电脑端,目前我们可以支持的操作系统是: windows xp sp3 [不推荐], windows visat [不推荐] , windows 7 , windows 8 , windows 10 , 32位或者 64位都可以, 此外windows server 也支持,但是由于server系统是为后台服务优化的,因此不建议当客户端平台使用.

  windows平台的安装比较简单,下载我们的安装文件,选择只安装客户端,一路确认就可以完成,双击桌面图标XFHome,就可以打开客户端,如下图:

请注意输入服务器地址,用户名,口令,在使用前,请先使用系统菜单,进入配置,如下图:

注意,启用TLS支持,只有当服务器版本在1.50以上时,并且在配置中启用了支持TLS/SSL加密支持,才能钩选该项目,否则会登录失败. 如果您无法确定您电脑上安装的第三方播放软件是否支持FTP流播放,那么请在 优先启用http流前打钩,XFile可以自动将FTP文件映射到http资源流, 另外可以钩选使用加盐md5口令外部连接,这样即使客户端退出,播放软件不会立即中断. 优先启用http流前面打钩,那么会传递一个http连接给播放器软件,执行http流播放,如果不打钩,那么会使用标准ftp连接给播放器软件,执行Ftp流播放,移动平台客户端设置与此类似,请根据播放器软件的实际支持进行调整.

这里我们推荐在windows平台使用VLC和mplayer播放器,这两个开源播放器,对流支持比较好,真正的在线播放模式,而不是韩国人写的播放器,要先下载通过本地磁盘缓冲进行播放.注意服务器端握手数字,如果您修改了服务器端的数字,那么这里也要进行修改. 详细的第三方播放器软件的挑选点这里

完成最简单的设置后,就可以使用客户端进行浏览和播放了,注意,我们提供的客户端没有下载功能,如果您需要对文件进行下载上传操作,建议您使用第三方支持UTF-8的客户端,这里推荐免费开源的FTP客户端,File zilla client,如下图:

如果您手边没有FTP客户端软件,或者不想安装,那么也可以使用浏览器直接打开,例如FireFox,如下图:

在浏览器地址栏里输入ftp:服务器地址:端口,例如我们的 ftp:192.168.3.5:21,会弹出请求输入账户对话框,

输入正确的账号和密码后,就可以登录到服务器,如下图:

移动端,需要安装我们提供的xftp app [目前只有android 平台, 用苹果ios的就比较抱歉了,需要您自己找第三方软件了], 如果有兼容的第三方FTP客户端或者流播放器,也可以使用,但是我们建议您使用我们提供的app,因为我们的app可以支持服务器端的FTP资源自动映射到Http服务,其他第三方软件是做不到的,而Http流具有更好的兼容性.另外还支持加密调用,就算第三方播放器会上传密码口令,也不用害怕,因为调用的时候给出的是动态密码. 您可以在电脑端的安装目录下的android子目录进行拷贝安装,或者直接从我们网站下载.

安装完成后,您的手机桌面会多出一个XFTP图标,如下图:

这就是我们的配套的android 平台的app,打开这个app,如下

和pc版本类似,需要填写您服务器的地址,端口,用户名,口令,以及握手码,注意,目前手机端不支持IPV6,都是ipv4,如果您不能确定您手机安装的播放器是否支持FTP流播放,那么请在启用http转换前打钩,这样会自动将FTP流转换成HTTP流连接,在移动平台有最好的兼容性.启用http转换前面打钩,那么会传递一个http连接给播放器软件,执行http流播放,如果不打钩,那么会使用标准ftp连接给播放器软件,执行Ftp流播放.点登录后,如果成功,将连接到XFile服务器,特别要注意的是,如果在关闭服务器前打钩,如果是管理员身份登录,那么将远程关闭XFile服务器,并直接返回:

用手指点一个目录,可以进入该目录,如果是文件,那么将调用您手机播放器进行播放.点 根目录按钮,可以直接切换到根目录,模式切换,按一次,则进入连接获取模式[下载模式],再按一次,则恢复为播放模式,断开按钮则中断到服务器的连接. 这里提醒一下,播放或者点选文件必须在2分钟左右的时间内完成,由于android平台的设计特殊性,没有开启后台反空闲,因此如果大约在XFile 服务器设置的noop超时时间段内没有完成操作,连接会中断,需要重新连接,这不是bug,而且移动平台为节省开销必须付出的代价. 目前经过测试,http模式可以兼容大部分移动平台播放器,但是VLC 例外,这不是我们的Bug,而是VLC for android播放器自身的bug,从1.x到目前的2.0.6都存在问题,该bug已经被提交,但是一直没有人去修复.

移动端的播放器我们推荐使用从开源软件mplayer分支出来的mpv player [ www.mpv.io ],这是我们测试过的一款真正的流播放器,android 5.0以上平台运行流畅,没有后门广告之类的东西,其次可以选择MX播放器,但是请注意安装包里可能有插件,VLC 则需要3.0以上版本,由于该软件本身依然存在bug,需要去掉优先使用http流,也就是采用FTP流模式才可以播放,因此暂时不推荐.

 

7 日常维护

如果您的XFile文件服务器是24小时连续开机,不远程关机或者重新启动,那么我们建议您每2个月重新启动一次XFile文件服务器,注意是windows系统重新启动,因为操作系统长时间运行,会产生内存碎片等各种影响性能的变化,因此建议定期重新启动. 此外,请及时备份您的硬盘数据,24小时开机的服务器上的硬盘,压力还是很大的.

8 常见问题和解决方法

请点这里

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 
(c) 2011-2018 phoenixp2p.com