文档章节

在Window2008上搭建 Apache FTPServer

_-Leon-_
 _-Leon-_
发布于 2015/04/24 16:38
字数 1288
阅读 1161
收藏 9
点赞 0
评论 0

#在Window2008上搭建 Apache FTPServer

windows2003马上要停止维护了,时间好像是在2015年5月7日。阿里云希望用户能够升级服务器,刚好公司的新项目马上要上线了,所以就尝试了一下将云服务器升级到Windows2008.

是一个小项目,所以生产环境也比较简单:

  • Java7
  • Tomcat
  • Mysql
  • FTP服务器(选择的Apache FTPServer)

别的安装没什么说的,和在Windows2003上是一样的。具体说说安装FTP的问题。

##下载

下载个人建议不管下载什么,都最好去官方下载,特别是开源的项目,Apache FTPServer的下载地址是:下载

##安装

安装非常简单,解压就可以了。简单看一下目录:

  • res 配置的主要文件夹
  • common Jar包和类
  • bin 工具

我们主要是学习res就可以了,别的不用关心,res的里面的目录:

  • conf 该目录下主要存放于FtpServer相关的配置
  • home Ftp服务器上传的文件默认就保存在这里,可以通过配置来修改
  • log 日志
  • 剩下的文件不用太在意

##配置

其实对于全栈工程师来说,不用太纠结于FtpServer的细节,能配置能运行,能帮我们上传文件和下载文件就行了。所以主要是要学会配置。

###conf目录

users.properties,该文件主要是对FtpServer的用户进行配置。

#用户名就是admin(可以改),密码明显是加过密的,暂时不用管,一会讲
ftpserver.user.admin.userpassword=21232F297A57A5A743894A0E4A801FC3
#上传文件的目录
ftpserver.user.admin.homedirectory=./res/home
#当前用户可用
ftpserver.user.admin.enableflag=true
#是否具有上传的权限
ftpserver.user.admin.writepermission=true
#最大登陆数量
ftpserver.user.admin.maxloginnumber=0
#同IP登陆用户数量
ftpserver.user.admin.maxloginperip=0
#空闲时间为300秒
ftpserver.user.admin.idletime=0
#上传速度限制	
ftpserver.user.admin.uploadrate=0
#下载速度限制
ftpserver.user.admin.downloadrate=0

再来看ftpd-typical.xml文件,打开这个xml文件,找到Server根目录,默认的Server元素只有一个id属性,给它添加几个属性和值,然后修改端口(不修改也行),修改后的ftpd-typical.xml文件为:

<server xmlns="http://mina.apache.org/ftpserver/spring/v1"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="
	   http://mina.apache.org/ftpserver/spring/v1 http://mina.apache.org/ftpserver/ftpserver-1.0.xsd	
	   "
	id="myServer"
    max-logins="20"  
    anon-enabled="false"  
    max-anon-logins="0"  
    max-login-failures="3"  
    login-failure-delay="30000"
	>
	<listeners>
		<nio-listener name="default" port="2121">
		    <ssl>
                <keystore file="./res/ftpserver.jks" password="password" />
            </ssl>
		</nio-listener>
	</listeners>
	<file-user-manager file="./res/conf/users.properties" encrypt-passwords = "clear" />
</server>

修改后,根据属性名可以看到,匿名用户被禁用,而且去掉了密码加密 encrypt-passwords = "clear" ,然后修改users.properties中admin的密码,是什么密码就直接设置成什么就行了。到这里配置就完成了。

##运行

运行很简单,如果不考虑将FtpServer安装成系统服务,那么打开命令行,将目录切换到FtpServer的bin目录,然后输入ftpd.bat res/conf/ftpd-typical.xml就完成了。

为了方便使用,一般做法是,在bin目录下,建立一个run.bat文件,将刚才的命令拷贝进入,然后把这个批处理文件发送到桌面,以后就直接可以使用了。运行后,如果出现:ftp-server started 的字样,那就成功了。

##问题

我在运行正常后,出现了两个问题(Window2008系统)

  1. 这个服务无法访问,说白了就是端口没有开放
  2. 开放端口后,无法读取目录,读写被拦截

###开放端口

这个其实也很简单,主要是你要确认是不是这个原因。一般做法是先查看机器上的端口运行情况:

  1. Windows查看所有的端口 netstat -ano
  2. 查询指定的端口占用 netstat -aon|findstr "提示的端口"
  3. 查询PID对应的进行进程 tasklist|findstr "PID"
  4. 然后我们输入命令taskkill /f /t /im 程序名即可

确认端口正常,那一般就是防火墙的问题了

###防火墙

右击我的电脑——管理——配置——高级安全Windows防火墙——入站规则,然后添加规则,根据提示去填写就行了,FTP也属于TCP,选TCP就行了,别都是“允许”或者“是”就完成了(内网权限,可以在选项卡中设置作用域)。完成以后,发现,客户端可以连接了,但是无法读出目录。应该还是被阻止了,真实一波三折啊。

控制面板——Windows防火墙——允许程序或功能通过Windows防火墙,然后点击“允许运行另一程序”,然后浏览,那么问题来了,选择哪个程序呢?对,不是FtpServer,而是Java,因为FtpServer就是Java写的,那么是哪个Java呢?因为JDK里面有一个,JRE里面也有一个,这就要看你的具体环境了,总之是选择一个 java.exe

好了,再用客户端连接一次,OK了!(如果还不行,那就在出站规则里面,再添加规则,把对应的端口再添加一次)

© 著作权归作者所有

共有 人打赏支持
_-Leon-_
粉丝 10
博文 17
码字总数 34045
作品 0
朝阳
部门经理
亲自动手:利用Apache-FTPServer搭建自己的文件服务器

至于Apache-FTPServer是一个使用MINA写的纯JAVA的开源文件服务器,详细的我就不介绍了,大家可以百度。 最近在做项目的迁移,服务器从Tomcat迁移到Websphere,以前没做文件服务器,是在Tomca...

十月阳光 ⋅ 2015/11/13 ⋅ 0

使用Apache FtpServer搭建FTP服务器 [FlashFXP]

一、介绍     Apache FtpServer是一个基于Apache MINA(一个高性能的Java异步并发网络通讯框架)开发的FTP 服务器。 既可以嵌到Java应用中使用,也可以做为Windows服务或Unix/Linux Daem...

walb呀 ⋅ 2017/12/05 ⋅ 0

搭建自己的FTP服务器-Apache Ftp Server

原来一直使用IIS默认的做FTP服务器,但最近发现一个JVAV版的FTP服务器Apache Ftp Server。看名字就知道是Apache旗下的一个开源软件,所以应该值得使用。Apache Ftp Server地址http://mina.a...

tngou ⋅ 2013/04/12 ⋅ 0

使用apache的FTPServer搭建ftp服务器

一:启动ftp服务 1.下载Apache FtpServer 1.0.6 Release: http://mina.apache.org/downloads-ftpserver.html 2.解压后res/conf下找到user.properties (修改密码为admin默认是md5加密后的) ......

路叫兽 ⋅ 2016/08/11 ⋅ 0

Apache FtpServer 1.0.6 released

Apache FtpServer 1.0.6 发布了,Apache Ftp Server 是100%纯Java的FTP服务器软件,它采用MINA网络框架开发具有非常好的性能。 新版本的改进记录: Bug修复: [FTPSERVER-264] - It takes a...

红薯 ⋅ 2011/07/19 ⋅ 5

菜鸟请教高高手,apache ftpserver 1.0.6 安装后无法访问

各位大侠,小弟菜鸟一个,这几天想用apache ftpserver 1.0.6 在Windows 2003上搭一个FTP服务器,折腾了N久,还是登录不了,特贴出来请各位大侠指点一下哈! users.properties 文件配置如下:...

stableman ⋅ 2012/09/06 ⋅ 2

用commons-net包写Ftp客户端下载(五)

这里我设置现成是20,然后出现了io异常,说socket无法读取。。而且FTPServer日志文件说,连接被关闭的错误。。 这个折磨的头大啊,死活找不出来原因。。。纠结纠结。。。。 于是上FtpServer...

猴子 ⋅ 2011/10/20 ⋅ 0

Apache FtpServer 1.0.4 发布

Apache FtpServer是100%纯Java的FTP服务器软件,它采用MINA网络框架开发 具有非常好的性能。 改进内容: Bug [FTPSERVER-336] - BaseUser class from ftpserver-core bundle can't be used ...

红薯 ⋅ 2010/03/17 ⋅ 0

关于FtpServer的配置

这一段时间项目中需要使用FTP进行文件的下载和传输,然后选定了Apache 的FTPserver当服务器端,然后客户端使用commons-net包进行编写。 关于FtpServer的配置(JDK的配置就不多说了,这里我用...

猴子 ⋅ 2011/10/20 ⋅ 3

纯Java源码的FTP服务器Apache FtpServer 1.0.0 发布

Apache FtpServer是一个100 %纯Java的FTP服务器。它被设计为一个基于现有开放式协议基础上,完整,小巧的FTP服务器引擎解决方案。 此外,FtpServer还可以作为Windows服务器、Unix / Linux后...

红薯 ⋅ 2009/03/04 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

AppDelegate 设置Root相关

self.window = UIWindow.init(frame: UIScreen.main.bounds) self.window?.backgroundColor = UIColor.white self.window?.makeKeyAndVisible() self.window?.rootViewController = RootTabB......

west_zll ⋅ 23分钟前 ⋅ 0

Java并发系列5--倒计时器CountDownLatch

今天讲一个倒计时器工具,叫CountDownLatch。需要这个工具的场景大概有:当所有的小任务都完成之后,再启动大任务。 先看代码: public class CountDownLatchDemo {static final CountDow...

大大枣 ⋅ 25分钟前 ⋅ 0

SpreadJS使用进阶指南 - 使用 NPM 管理你的项目

前言 SpreadJS作为一款性能出众的纯前端电子表格控件,自2015年发布以来,已经被广泛应用于各领域“在线Excel”数据管理项目中。NPM,作为管理Node.js库最有力的手段,解决了很多NodeJS代码部...

葡萄城控件技术团队 ⋅ 26分钟前 ⋅ 0

Mac下IntelliJ IDEA快捷键大全

https://blog.csdn.net/lisongjia123/article/details/54949364

细节探索者 ⋅ 29分钟前 ⋅ 0

建造者模式

1、工厂模式中创建的对象大都是简单的对象 复杂的产品类并且拥有不同的属性特点的管理就需要用到建造者模式 2、建造者模式: 将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以...

职业搬砖20年 ⋅ 30分钟前 ⋅ 0

Mysql数据库开发 怎么优化SQL语句?

 1) 现场抓出慢查询语句 show full processlist;   2) 配置参数:   slow_query_log_file = ON 慢查询开启开关   long_query_time =2 记录大于2秒的sql语句   log_queries_not_usi...

老男孩Linux培训 ⋅ 30分钟前 ⋅ 0

Laravel 安装执行php artisan migrate 出现字段过长错误

最近在自己研究Laravel Laravel版本:5.6 PHP版本:7.1.9 Mysql版本:5.7.19 Apache版本:2.4.27 系统版本:windows10 首先要保证电脑安装了composer,和node.js 执行命令 composer global ...

Marhal ⋅ 35分钟前 ⋅ 0

ELK6.0日志从收集到处理完整版教程(二)

ELK简介 Elasticsearch 开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。也可以认为ElasticSearch是一...

bz_z ⋅ 38分钟前 ⋅ 0

Spark项目之电商用户行为分析大数据平台之(七)数据调研--基本数据结构介绍

目录 一、user_visit_action(Hive表) 1.1 表的结构 1.2 表的说明 二、user_info(Hive表) 2.1 表的结构 2.2 表的说明 三、task(MySQL表) 3.1 表的结构 3.2 表的说明 四、工作流程...

xiaomin0322 ⋅ 43分钟前 ⋅ 0

评分卡模型剖析之一(woe、IV、ROC、信息熵)

信用评分卡模型在国外是一种成熟的预测方法,尤其在信用风险评估以及金融风险控制领域更是得到了比较广泛的使用,其原理是将模型变量WOE编码方式离散化之后运用logistic回归模型进行的一种二...

火力全開 ⋅ 44分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部