1.ftp简介
在搭建ftp服务前呢,我们先来了解下ftp协议和ftp服务器
- ftp协议: 一种文件传输协议。在本地和服务器之间进行文件传输。
- ftp服务器:支持ftp传输协议的服务器。一般windows都带有ftp服务,只是默认情况下都没启动。
ftp相关软件也比较多,其中运用比较广泛的有Server-U、FileZilla、VsFTP、apache旗下的FtpServer。
由于工作需要,我们经常会将文件拷贝到其他电脑,用U盘或者其他存储设备拷贝的话很容易中病毒。出于这个原因,我们就需要搭建一个ftp服务器,将我们需要共享的文件放到服务器上,只要网络正常,就很容易将我们所需要的文件从服务器上取下来。
今天我们就来介绍一个开源的ftp服务器,Apache FTPServerFtpServer也就这次的主角,Apache FTPServer是一个100%纯Java的FTP服务器。FTPServer可独立运行作为Windows服务或Unix/ Linux后台程序或是被嵌入在Java应用程序中。
接下来我们就以FtpServer为例,搭建ftp服务。
2.下载Apache FTPServer
可以到官网下载:http://mina.apache.org/ftpserver-project/downloads.html 目前最新版本是Apache FtpServer 1.1.1 Release,出于稳定考虑我这里下载的就是1.0.6版本
3.下载并解压压缩包
将下载下来的压缩包解压到本地,我的是放在D盘根目录下,其目录结构如下图:
4.修改配置文件
4.1 修改users.properties配置文件
配置文件路径:
D:\apache-ftpserver-1.0.6\res\conf\users.properties
在此配置文件中可以增加用户,如果不希望匿名登录的话,可以将匿名用户这个配置注释掉
ftpserver.user.admin.userpassword=admin
ftpserver.user.admin.homedirectory=./res/home
ftpserver.user.admin.enableflag=true
ftpserver.user.admin.writepermission=true
ftpserver.user.admin.maxloginnumber=0
ftpserver.user.admin.maxloginperip=0
ftpserver.user.admin.idletime=0
ftpserver.user.admin.uploadrate=0
ftpserver.user.admin.downloadrate=0
ftpserver.user.anonymous.userpassword=
ftpserver.user.anonymous.homedirectory=./res/home
ftpserver.user.anonymous.enableflag=true
ftpserver.user.anonymous.writepermission=false
ftpserver.user.anonymous.maxloginnumber=20
ftpserver.user.anonymous.maxloginperip=2
ftpserver.user.anonymous.idletime=300
ftpserver.user.anonymous.uploadrate=4800
ftpserver.user.anonymous.downloadrate=4800
ftpserver.user.lxw.userpassword=123456
ftpserver.user.lxw.homedirectory=./res/home
ftpserver.user.lxw.enableflag=true
ftpserver.user.lxw.writepermission=true
ftpserver.user.lxw.maxloginnumber=20
ftpserver.user.lxw.maxloginperip=2
ftpserver.user.lxw.idletime=300
ftpserver.user.lxw.uploadrate=48000000
ftpserver.user.lxw.downloadrate=48000000
4.2 修改ftpd-typical.xml配置文件
配置文件路径:
D:\apache-ftpserver-1.0.6\res\conf\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">
<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>
5.启动FTPServer
打开CMD命令窗口,切换到D:\apache-ftpserver-1.0.6\bin这个目录下 输入以下命令:
service install
ftpd.bat res/conf/ftpd-typical.xml
注意:由于ftpserver是纯java编写的,所以第二条命令的执行需要在环境变量中配置java环境JAVA_HOME。java环境此处省去,不会可以自行百度
输入完命令之后如下图所示,当出现FtpServer started 出现即启动成功
6.访问FTP
在游览器中,输入ftp://ip:2121进行访问,如果端口修改了,要换成对应的端口,ip就是FTP所在的服务器的ip,访问如下图所示:
当然我们也能通过工具直接访问,进行上传和下载文件操作
下面提供一个比较好用的免安装工具给大家,大家可以放心食用。
winscp553 百度云下载链接 提取码:sncs
7.ftp 的启动与关闭
将dos命令窗口关掉,ftp服务即关闭
那么我们怎么样启动ftp服务呢,