filezillaserver源码
① filezilla server 安全性怎么样
Filezilla的主要优势在于:高安全、高性能。Filazilla的安全性是来自于其开放源代码的。开源为何能保证安全?每一款软件产品诞生后,都有很多人试图发现其漏洞进行攻击,以获取权限和其他利益。如果是开源软件,攻击者就会下载这个软件的源代码,从源头上分析其内部漏洞在那里,并且进行攻击。开源的规模越大,下载阅读其源代码的人也多,这个软件也就越普及。随着其逐渐改进,漏洞就越来越少,最后成为了公认极其安全的软件,这和互联网中数万程序员的贡献是分不开的。这类软件的代表就是linux平台下的Apache、PHP、MySQL、Bind、Vsftpd等大量高可靠性软件。而不开放源代码的闭源软件,人们无法对其进行研究,因此,只能将他当作“黑盒”来研究,研究的过程中没有源代码,很难找到其错误。即便找到了一些错误,还有更多的漏洞隐藏在代码中,但是因为代码不公开,因此人们短期内无从发现,后期使用会暴露出很多问题。一些闭源软件甚至保留有“后门”,以方便远程遥控,比如Windows,比如Serv-U。而开源软件代码是开放的,如果开发者在里边植入“后门”等危险代码,就会被互联网上广大的程序员纠出来,因此,这里也可以看出,开源,是对安全的最好保证。
Filezilla的高性能来自于其代码的开发平台是C/C++,自身基础就好于其他VB/Dephi平台开发的应用程序,因此Filezilla具有可媲美IIS的性能。在千兆网络带宽上,可轻松满足数百用户同时高速下载。
目前Filezilla也存在一些不足,主要缺点就是不支持配额,即本身不提供上传、下载总文件大小配额的功能。即便如此,免费的Filezilla正越来越多的占领原来Serv-U等软件的市场,变得更加贴近用户了。
安装
安装过程非常简单,首先下载Filezilla Server安装文件,然后将安装包下载到桌面,准备安装。
双击安装程序开始安装。点击“I Agree”继续。
选择安装方式,默认的标准即可。其中“Source Code”源代码一般不用安装,除非是想研究FileZilla的代码。
选择安装路径,强烈推荐安装到非默认路径,以增加安全系数。例如如下路径:
选择“安装为服务,并随机自动启动”的选项。下边的14147是管理端口,强烈推荐修改此端口,例如改成38121端口。(注意不要和常见服务如80端口冲突)。
选择“当管理员登录时候,启动管理界面”的选项。
安装进行中。
至此安装完成,安装程序自动启动管理控制台,默认是连接到本机的管理端口。管理端口到底是多少,请参考前文安装过程中填写的具体数字是多少。建议选中“总是连接到本服务器”的选项,即表示每次启动管理控制台,都是管理本机的Filezilla服务。下边有一个输入密码的对话框,在里边输入本服务器Filezilla服务的密码。
注意:修改端口和密码非常重要,这是确保Filezilla安全的重点,必须修改端口,必须设置密码!密码建议足够复杂!
点击OK后,即可启动初始化之后的管理控制台,配置完成。
三、 配置
1. 基本设置
Filezilla默认的模式是Port模式,不是Passive被动模式。为了解决防火墙后的客户端连接问题,最好是启用Passive模式。要启动被动模式,首先打开管理控制台,点击左起第三个图标 进入系统设置。
点击左侧“Welcom message”菜单,即FTP登录后的欢迎信息。
为了安全起见,强烈建议修改默认的欢迎信息为“Welcom to Serv-U FTP Server”,这样Filezilla在欢迎消息中就会Serv-U字样,以达到欺骗攻击者的目的。注意:本步骤非常重要!
现在我们用telnet去连接一下FTP的21端口,即可看到修改过的“假”的提示信息,这样服务器的安全性可以得到比较明显的提高。
接下来点击“Passive Mode Settings”选项,进入被动模式设置。
选中启动被动模式端口范围的选项,输入10000~10050端口范围,表示被动模式将要使用这个范围的端口。
点击确定保存即可。接下来在防火墙上允许10000~10050端口范围进出,或者
直接允许Filezilla server.exe主程序的互联网访问。
安装的最后一步是加固权限,找到Filezilla的配置文件,格式是xml格式,鼠标右键点击之,并选择属性。
加入Guest组禁止读写的权限,设置为拒绝。
点击确定后,系统会弹出提示,询问拒绝权限优先级高于允许权限,是否要继续,点击是通过即可。
至此初始化基本配置完成。
2. 匿名FTP配置
首先打开管理控制台,点击左起第四个图标 进入系统设置。
打开ftp用户管理界面,点击右侧的 按钮,添加新用户。
在新增用户的对话框中,输入“anonymous”这个名字,即FTP的匿名用户。
点击确认,添加用户完成,返回用户管理界面。
点击左侧的“Shared folders”菜单。点击Add按钮,添加一个目录。
打开浏览文件夹的选项,选择要设置FTP的目录。
点击确定,添加用户完成。
现在用户FTP客户端连接到FileZilla Server上,可以看到匿名FTP已经配置完成。
3. 标准FTP用户配置
首先进入用户设置界面,点击“Add”按钮添加新的FTP用户。
输入用户名test 。
选中Password前边的多选框,然后输入密码123456。
返回到用户管理界面,点击设置文件夹目录,点击Add添加目录。
添加一个目录到test用户。
添加完成,再右侧选中test用户对这个目录的权限,然后点击左侧的OK按钮,配置完成。
配置完成。现在可以使用客户端来测试登录了。
打开FTP客户端软件,输入test用户名和密码123456,登录到服务器。
登录成功后,可以看到刚才制定的FTP目录下的文件,并具有相应的上传、下载权限。
4. 虚拟目录配置
在具有多个目录需要共享的情况下,设置虚拟目录是比较利于管理的选择。通常,一个FTP服务器需要有一个“Home”主目录,然后设置若干个虚拟目录。
首先进入到用户管理界面,选中Test用户,选中当前设置的目录。
点击“Set as home dir”选项 ,将当前目录设置为“home”主目录。
点击Add按钮,在原有目录之外,再添加一个别的目录,比如选择桌面目录。
新的目录已经添加到目录清单了。此时添加“别名”,点击“Alias”空白处。
添加Aliases别名,注意一定用“ /”符号开头,表示是根目录下的虚拟目录。
添加完成。现在可以去登录FTP,就能看到虚拟目录了。
登录到FTP之后,可以看到虚拟目录出现在test用户的目录中。
至此虚拟目录设置完成。
5. 加固Filezilla安全
• 安装Filezilla到非标准目录
• 安装过程中设置Filezilla的管理端口监听在127.0.0.1上的随机端口,例如38471等奇怪的没用的端口。
• 安装过程中设置Filezilla的管理密码,并设置密码足够复杂
• 在Filezilla目录下的xml配置文件上,设置Guests组禁止读取的权限
• 修改FTP登录后的提示信息为IIS、Serv-U等信息
• 不要开启SSL加密、SFTP等功能,避免以后出现漏洞
经过如上一些配置,Filezilla可以做到很高的安全性。
② 哪儿有linux下的ftp server的c程序源码
ftp server ? 可以到sourceforge或者github开源软件仓库上去查找下载。流行的开源软件也可以,比如ftp filezilla server就是比较流行的。不过不一定是c代码了,也许是c++的。
③ 通过FTP把源码上传到到服务器后怎么通过浏览器访问
如果源码是纯html的话,那么只需要把源码放在一个网站的根目录下,另外请提前在iis创建网站并选择根目录
④ windows rt能装什么软件
1、Office
2013年3月微软副总裁杰夫·特珀说微软将于上半年推出代号为“Oslo”的Office应用,该款应用将支持Windows8、以及搭载了苹果iOS和谷歌Android移动操作系统的智能手机和平板电脑。微软将于11月2日在纽约举办Office发布会。
2、Sumatra Pdf
Sumatra Pdf是Krzysztof Kowalczyk所开发的轻量级PDF阅读器,类型为开放软件,开发者是Krzysztof Kowalczyk,可以后面网址下载安装版和携带版,同时还提供源码下载。
Sumatra PDF是可以后面网址下载安装版和携带版,同时还提供源码下载。 Sumatra PDF 由下列两个函数库组成:MuPDF - PDF函数库,Poppler - PDF函数库。
3、SharpDevelop
这个轻型的开发工具支持多种程序语言,包括C#、java以及VB.NET,同时还支持多种语言界面,象任何爱好者开发的工具一样。
这个编辑器的界面风格类似于Office XP以及VS.NET,这个编辑器可以支持书写C#, ASP.NET,ADO.NET, XML, HTML 等多种代码
支持基于项目或者是文件的开发,可以对C#, HTML, ASP, ASP.NET, VBscript, VB.NET, XML 提供彩色语法显示支持,同时还可以把彩色的代码输出为HTML格式文件。支持丰富的代码模版以及外接插件。
4、FileZilla
FileZilla是一个免费开源的FTP软件,分为客户端版本和服务器版本,具备所有的FTP软件功能。
可控性、有条理的界面和管理多站点的简化方式使得Filezilla客户端版成为一个方便高效的FTP客户端工具,而FileZilla Server则是一个小巧并且可靠的支持FTP&SFTP的FTP服务器软件。
5、python
Python是一种跨平台的计算机程序设计语言。 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。
⑤ filezilla可以修改源码吗
可以修改。 解压缩它的源代码,转到子目录/src/engine下,打开ftpcontrolsocket.cpp文件,这个文件就是FileZilla用来支持标准FTP指令的核心,需要改造的是它的列表模式以及对PASV反馈的分析代码 [包括IPV6下的EPSV指令,但是暂时因为没有IPV6,所以没必要动它],改造它的PASV解析代码 让FileZilla兼容FtpAnywhere bool CFtpControlSocket::ParsePasvResponse(CRawTransferOpData* pData) { // Validate ip address wxString digit = _T("0*[0-9]{1,3}"); const wxChar* dot = _T(","); wxString exp = _T("( |//()(") + digit + dot + digit + dot + digit + dot + digit + dot + digit + dot + digit + _T(")( |//)|$)"); wxRegEx regex; regex.Compile(exp); if (!regex.Matches(m_Response)) return false; pData->host = regex.GetMatch(m_Response, 2); int i = pData->host.Find(',', true); long number; if (i == -1 || !pData->host.Mid(i + 1).ToLong(&number)) return false; pData->port = number; //get ls byte of server socket pData->host = pData->host.Left(i); i = pData->host.Find(',', true); if (i == -1 || !pData->host.Mid(i + 1).ToLong(&number)) return false; pData->port += 256 * number; //add ms byte of server socket pData->host = pData-> host.Left(i); pData->host.Replace(_T(","), _T(".")); if (m_pProxyBackend) { // We do not have any information about the proxy's inner workings return true; } const wxString peerIP = m_pSocket->GetPeerIP(); if (!IsRoutableAddress(pData->host, m_pSocket->GetAddressFamily()) && IsRoutableAddress(peerIP, m_pSocket->GetAddressFamily())) { if (!m_pEngine->GetOptions()->GetOptionVal(OPTION_PASVREPLYFALLBACKMODE) || pData->bTriedActive) { LogMessage(Status, _("Server sent passive reply with unroutable address. Using server address instead.")); LogMessage(Debug_Info, _T(" Reply: %s, peer: %s"), pData->host.c_str(), peerIP.c_str()); pData->host = peerIP; } else { LogMessage(Status, _("Server sent passive reply with unroutable address. Passive mode failed.")); LogMessage(Debug_Info, _T(" Reply: %s, peer: %s"), pData->host.c_str(), peerIP.c_str()); return false; } } return true; }
⑥ 如何设置filezilla server使其能上传、下载中文文件名的文件
Filazilla是一个非常流行的开源的免费的FTP客户端、服务器端的项目,Filezilla的主要优势在于:高安全、高性能。Filazilla的安全性是来自于其开放源代码的。
Filezilla的高性能来自于其代码的开发平台是C/C++,自身基础就好于其他VB/Dephi平台开发的应用程序,因此Filezilla具有可媲美IIS的性能。在千兆网络带宽上,可轻松满足数百用户同时高速下载。
目前Filezilla也存在一些不足,主要缺点就是不支持配额,即本身不提供上传、下载总文件大小配额的功能。
⑦ filezilla 状态: 不安全的服务器,不支持 FTP over TLS.
出现这种情况的原因可能是服务器上的防火墙阻止了FileZilla的出入,所以连接不上。
可以试试把这个软件添加到例外,操作方法如下:
在防火墙中找到FileZilla的【Filazilla server interface.exe】和F【ilezilla server.exe】,把这两个文件都加入到防火墙的例外就好了。
介绍一下FileZilla:
FileZilla是一个免费开源的FTP软件,分为客户端版本和服务器版本,具备所有的FTP软件功能。可控性、有条理的界面和管理多站点的简化方式使得Filezilla客户端版成为一个方便高效的FTP客户端工具,而FileZilla
Server则是一个小巧并且可靠的支持FTP&SFTP的FTP服务器软件。
FileZilla是一种快速、可信赖的FTP客户端以及服务器端开放源代码程式,具有多种特色、直接的接口。
FileZilla的使用方法
先双击打开软件,点击【站点管理】→【新建站点】,把空间提供商提供的或者你自己创建的FTP的主机名,用户名,密码输入上去,点击【连接】即可进入。
进入后左边是本地目录和文件列表,右边为FTP的目录文件列表,把FTP看作自己的U盘一样管理即可。
FTP上,选中文件拖动到【...】的目录可以把文件移动上一层,拖动相应的文件名为移动到相应目录,一般主机目录如图所示,
db是给你传压缩包和下载压缩包的,log是日志文件存储地方,有的主机不提供日志,web就是你的web空间了,一般路径为/xx/web/,其中xx代表你的用户名。
⑧ 如何快速安装OSSFTP工具阿里云OSS FTP安装图文详细教程
OSSFTP工具是一个特殊FTPserver,它接收普通FTP请求后,将对文件、文件夹的操作映射为对OSS的操作,从而使得您可以基于FTP协议来管理存储在OSS上的文件。
注意生产环境请使用osssdk,OSSFTP工具主要面向个人用户使用。
主要特性
跨平台:
无论是Windows、Linux还是Mac,无论是32位还是64位操作系统,无论是图形界面还是命令行都可以运行。
免安装:
解压后可直接运行。
免设置:
无需设置即可运行。
透明化:
FTP工具是python写的,您可以看到完整的源码,我们稍后也会开源到Github。
主要功能
支持文件和文件夹的上传、下载、删除等操作。
通过Multipart方式,分片上传大文件。
支持大部分FTP指令,可以满足日常FTP的使用需求。
注意
1.目前在1.0版本中,考虑到安装部署的简便,OSSFTP工具没有支持TLS加密。由于FTP协议是明文传输的,
为了防止您的密码泄漏,建议将FTPserver和client运行在同一台机器上,通过127.0.0.1:port的方式来访问。
2.不支持rename和move操作。
3.安装包解压后的路径不要含有中文。
4.FTPserver的管理控制页面在低版本的IE中可能打不开。
5.FTPserver支持的Python版本:Python2.6,Python2.7。
下载
由于Windows不会默认安装Python2.7,所以安装包中包含了Python2.7,免去您python安装配置的麻烦,解压即可使用。
由于Linux/Mac系统默认会安装Python2.7或Python2.6,所以安装包中不再包含可执行的python,只包含了相关依赖库。
运行
首先解压之前下载的文件,然后根据环境情况选择不同的运行方式。
Windows:双击运行start.vbs即可
Linux:打开终端,运行 i.$bashstart.sh
Mac:双击start.command,或者在终端运行 i.$bashstart.command
上述步骤会启动一个FTPserver,默认监听在127.0.0.1的2048端口。同时,为了方便您对FTPserver的状态进行管控,还会启动一个web服务器,监听在127.0.0.1的8192端口。如果您的系统有图形界面,还会自动打开控制页面,
如下所示:
大部分情况不要任何配置,就可以运行一个FTPserver了,如果想对FTPserver进行配置,请注意需要重启才能生效。
连接到FTPserver推荐使用FileZilla客户端去连接FTPserver。
下载安装后,按如下方式连接即可:
主机:127.0.0.1
登录类型:正常
用户:access_key_id/bucket_name
密码:access_key_secret
注意:
用户中,/是必须的,如用户
tSxyiUM3NKswPMEp/test-hz-jh-002。
-access_key_id和access_key_secret的获取
高级使用
通过控制页面管理FTPserver
修改监听地址
如果需要通过网络来访问FTPserver,那么需要修改监听地址,因为默认的监听地址127.0.0.1只允许来自本地的访问。可以修改成内网ip或公网ip。
修改监听端口
修改FTPserver监听的端口,建议端口大于1024,因为监听1024以下的端口时需要管理员权限.
修改日志等级
设置FTPserver的日志级别。FTPserver的日志会输出到data/ossftp/目录下,可以通过控制页面的日志按钮在线查看。默认的日志界别为INFO,打印的日志信息较少,如果需要更详细的日志信息,可以修改为DEBUG模式。如果希望减少日志的输出,可以设置级别为WARNING或ERROR等。
设置Bucketendpoints
FTPserver默认会探索bucket的所属location信息,随后将请求发到对应的region(如oss-cn-hangzhou.aliyuncs.com或oss-cn-beijing.aliyuncs.com),FTPserver会优先尝试内网访问oss。如果您设置了bucketendpoints,如设置为test-bucket-a.oss-cn-hangzhou.aliyuncs.com,那么当访问test-bucket-a时,就会使用oss-cn-hangzhou.aliyuncs.com域名。
注意
所有修改都需要重启才能生效。
上述的所有修改其实都是修改的ftp根目录下的config.json,所以您可以直接修改该文件。
直接启动FTPserver(Linux/Mac)
可以直接启动ossftp目录下的ftpserver.py,免去web_server的开销。
1.python ossftp/ftpserver.py
配置修改方式同上。
可能遇到的问题
如果连接FTPserver时,遇到以下错误:
有两种可能:
输入的access_key_id和access_key_secret有误。
解决 :请输入正确的信息后再重试。
所用的access_key信息为ram子账户的access_key,而子账户不具有Listbuckets权限。
解决 :当使用子账户访问时,请在控制页面中指定bucketendpoints,即告诉FTPserver某个bucket应该用什么endpoint来访问。同时,子账户也需要一些必须的权限,关于使用ram访问oss时的访问控制。
只读访问
OSSFTP工具需要的权限列表为ListObjects、GetObject、HeadObject。关于如何创建一个具有只读访问的ram子账户,请参考图文教程如何结合ram实现文件共享。
上传文件
如果允许ram子账户上传文件,还需要PutObject。
删除文件
如果允许ram子账户删除文件,还需要DeleteObject。
如果您在Linux下运行FTPserver,然后用FileZilla连接时遇到如下错误:
501 can't decode path (server filesystem encoding is ANSI_X3.4-1968)
一般是因为本地的中文编码有问题。在将要运行start.sh的终端中输入下面的命令,然后再重新启动即可。
1 .$ export LC_ALL=en_US.UTF-8; export LANG="en_US.UTF-8"; locale
⑨ filezilla server 怎么设置
服务器设置:
第1步 进行服务器全局参数设置:点“Edit”菜单,选“Settings”
General settings(常规设置):
Listen on Port:监听端口,其实就是FTP服务器的连接端口。
Max.Number of users:允许最大并发连接客户端的数量。
Number of Threads:处理线程。也就是CPU优先级别。数值调得越大优先级越高,一般默认即可。
timeout setting:超时设置,自上至下分别为:连接超时、传输空闲超时、登入超时。单位为秒。