如何搭建ftp服务器实现文件共享

如何搭建ftp服务器实现文件共享,第1张

1、点击开始,控制面板,程序,打开或关闭Windows功能,或者在开始菜单里搜索"打开或",d出Windows功能窗口,勾选Internet信息服务下的FTP功能和Web管理工具,以此开启服务。点击确定后,需要等几分钟。(必须选中Web管理工具而且全部展开选中,否则仅仅开启FTP功能无法继续调用IIS管理器)
2、在控制面板-系统和安全-管理工具,或直接在开始菜单搜索"Internet信息服务(IIS)管理器"。
3、打开ISS管理器,右键点击你的服务器,选择"添加FTP站点"。
4、再添加FTP站点名称、选择要共享的文件夹路径。
5、在下拉菜单中选择当前的IP作为IP地址,端口默认。勾选"自动启动FTP站点,SSL选择无或允许皆可。"
6、选择匿名访问,根据需求选择允许访问的用户。根据需求选择是否允许读取、写入。
7、设置完成后FTP服务器就建好了,就可以实现计算机中的文件共享,方便又便携。

那要看你用的是什么系统了呀,windows的话,就在控制面板>添加删除程序>添加删除windows组件>应用程序服务器(详细信息)>iis(详细信息)>选中文件传输协议(ftp)服务 然后插入windows server系统光盘 全部点击"确定" 就开始安装你的ftp服务了
安装完成后,你就做好了一台ftp服务器了,ftp和web的方法类似,看mcse就很好的配置你的ftp服务器了!
linux下的ftp常用的是vsftpd,在你的安装光盘里的rpm目录里有vsftpd的rpm安装文件,你可以用"rpm _ihv 安装文件名"的命令去安装它 装好之后你的linux服务器就是一台ftp服务器了 具体的配置可以在google里搜一下,网上有很多这方面的资源
以上就是简单的ftp服务器的实现方法 你可以用ip或是域名(假设你有dc)的方式去访问它 
希望能解决您的问题。

使用FTP时必须首先登录,在远程主机上获得相应的权限以后,方可上传或下载文件。当远程主机提供匿名FTP服务时,会指定某些目录向公众开放,允许匿名存取。Internet上有成千上万台匿名FTP主机,这些主机上存放着大量的文件,供用户免费拷贝。在主动模式下FTP服务器的控制端口是21,数据端口是20,所以在做静态映射的时候只需要开放21端口即可,会用20端口和客户端主动的发起连接。在被动模式下FTP服务器的控制端口是21,数据端口是随机,且是客户端去连接对应的数据端口,所以在做静态的映射,不可以只开放21端口

首先,下载Server-U的安装软件,安装软件,然后在“开始—>程序”中可以看到“Server-U
FTP
Server”的菜单,选择“Server-U
Administrator”,就可以看到配置界面。
在配置界面的左侧是配置菜单,除了有默认的本地服务器,还可以添加新的服务器。
组建一个FTP服务器,首先要在本地服务器下面的域中添加一个新的域,在“域”这个菜单上单击右键选择“新建域”,然后选择一个可用的IP地址,如果选空,那么就是说本机的所有IP地址都可以用,在设置IP地址之后,输入该域的域名、端口等,就可以添加新的域了。
添加新的域之后,还需要对该域做一些设置,例如用户的设置、访问IP的限制等设置。
在设置好的域下面,有设置、活动、用户、组四个菜单,点击设置可以设置访问的范围等内容,比如不允许IP地址19216803访问该服务器,那么就可以在设置的IP访问中进行设置。
其实,这些设置都可以不做的,主要是对用户的设置。在用户这个菜单上单击右键,选择“新建用户”,然后输入要建立的用户的名字、密码、访问的目录等内容,其中可以把该用户锁定在要访问的目录上,不允许访问服务器的其他内容。在新建用户之后,选中该用户,在界面右侧就会出现关于该用户的一些设置的内容,可以对这个用户的帐号进行一些设置。
如果不需要设置用户来访问,任何人都可以访问,那么还可以设置为匿名访问,使用anonymous来访问,密码是邮件地址。
在配置完软件之后,用户可以直接在浏览器中输入ftp://域来访问,如果在Server-U中配置的时候,设置了匿名访问,那么用户也可以不用用户名和密码来访问的。或者也可以用FTP的客户端软件来访问FTP服务器,例如用LeapFTP、CuteFTP等软件。
当然,也可以不用Server-U,IIS也可以做,可以google一下。

架设一台FTP服务器其实很简单。首先,要保证你的机器能上网,而且有不低bai于ADSL 512Kbps的网络速度。其次,硬件性能要能满足你的需要。最后,需要安装FTP服务器端的软件,这类软件很多,可以使用微软的IIS(Internet Information Server 因特网信息服务系统),也可以使用专业软件。不同的软件提供的功能不同,适应的需求和 *** 作系统也不同。一般来说,系统最低要求如下:
CPU:PⅢ 450MHz以上
内存:256MB SDRAM以上
带宽:ADSL 512Kbps以上
至于 *** 作系统,Windows 98/Me/NT/2000/XP均可,如果对服务器的性能和安全性要求很低,可以采用Windows 98和Windows Me。本文中,如无特殊说明,均以Windows XP专业版为 *** 作系统,其余 *** 作系统下FTP服务器的架设及设置均大同小异。
一、用IIS架设
如果只是想建个小型的同时在线用户数不超过10个的FTP服务器,且不会同时进行大流量的数据传输,可以用IIS 5.0作为服务器软件来架设(IIS只适用于Windows NT/2000/XP *** 作系统)。
1.安装
Windows XP默认安装时不安装IIS组件,需要手工添加安装。进入控制面板,找到“添加/删除程序”,打开后选择“添加/删除Windows组件”,在d出的“Windows组件向导”窗口中,将“Internet信息服务(IIS)”项选中。在该选项前的“√”背景色是灰色的,这是因为Windows XP默认并不安装FTP服务组件。再点击右下角的“详细信息”,在d出的“Internet信息服务(IIS)”窗口中,找到“文件传输协议(FTP)服务”,选中后确定即可。
安装完后需要重启。Windows NT/2000和Windows XP的安装方法相同。
2.设置
电脑重启后,FTP服务器就开始运行了,但还要进行一些设置。点击“开始→所有程序→管理工具→Internet信息服务”,进入“Internet信息服务”窗口后,找到“默认FTP站点”,右击鼠标,在d出的右键菜单中选择“属性”。在“属性”中,我们可以设置FTP服务器的名称、IP、端口、访问账户、FTP目录位置、用户进入FTP时接收到的消息等。
1)FTP站点基本信息
进入“FTP站点”选项卡,其中的“描述”选项为该FTP站点的名称,用来称呼你的服务器,可以随意填,比如“我的小站”;“IP地址”为服务器的IP,系统默认为“

FTP服务器平台:Liunx平台 OR Windows server平台

1、liunx系统:(centos、Debian,用centos就可以了,免费)

仅用FTP用的话,推荐用linux,理由linux更加稳定,没有那么多数据冗余,安全性高,用FTP上传方便快捷传输到某文件夹下,windows的话,也是没有问题但是windows的iis经常出现问题,策略问题,就会导致windows下链接fxp会造成间接性的连接失败。

搭建:

方案1、如果想在liunx中用界面 *** 作,直接Centos+宝塔面板+PureFTPd(是一款liunx下免费的FTP服务器软件)组合,简单快捷。

方案2:linux+samba推荐(Samba是著名的开源软件项目之一,它在Linux/UNIX系统中实现了微软的SMB/CIFS网络协议,从而使得跨平台的文件共享变得更加容易。在部署Windows、Linux/UNIX混合平台的企业环境时,选用Samba可以很好地解决不同系统之间的文件互访问题。)

2、Windows server(2012、2016、2019均可,太低版的就不要用了)

如果这台服务器还做文件共享用的话,那就推荐用Windows服务器版,加上域帐户就可以控制权限。

Windows搭建就比较简单了,相信不用说都知道,直接用系统自带的IIS+FTP就可以了。当然了,如果用FileZilla Server更好,虽然很小,但很强悍。

FTP 命令 FTP 的主要 *** 作都是基于各种命令基础之上的 常用的命令有 · 设置传输模式 它包括ASCⅡ(文本) 和BINARY 二进制模式;· 目录 *** 作 改变或显示远程计算机的当前目录(cd dir/ls 命令);· 连接 *** 作 open命令用于建立同远程计算机的连接 close命令用于关闭连接;· 发送 *** 作 put命令用于传送文件到远程计算机 mput 命令用于传送多个文件到远程计算机;· 获取 *** 作 get命令用于接收一个文件 mget命令用于接收多个文件 编程思路 根据FTP 的工作原理 在主函数中建立一个服务器套接字端口 等待客户端请求 一旦客户端请求被接受 服务器程序就建立一个服务器分线程 处理客户端的命令 如果客户端需要和服务器端进行文件的传输 则建立一个新的套接字连接来完成文件的 *** 作 编程技巧说明 主函数设计在主函数中 完成服务器端口的侦听和服务线程的创建 我们利用一个静态字符串变量initDir 来保存服务器线程运行时所在的工作目录 服务器的初始工作目录是由程序运行时用户输入的 缺省为C盘的根目录 具体的代码如下 public class ftpServer extends Thread{private Socket socketClient;private int counter;private static String initDir;public static void main(String[] args){if(args length != ) {initDir = args[ ];}else{ initDir = c: ;}int i = ;try{System out println( ftp server started! );//监听 号端口ServerSocket s = new ServerSocket( );for(;;){//接受客户端请求Socket ining = s accept();//创建服务线程new ftpServer(ining i) start();i++;}}catch(Exception e){}} 线程类的设计线程类的主要设计都是在run()方法中实现 用run()方法得到客户端的套接字信息 根据套接字得到输入流和输出流 向客户端发送欢迎信息 FTP 命令的处理( ) 访问控制命令· user name(user) 和 password (pass) 命令处理代码如下 if(str startsWith( USER )){user = str substring( );user = user trim();out println( Password );}if(str startsWith( PASS ))out println( User +user+ logged in );User 命令和 Password 命令分别用来提交客户端用户输入的用户名和口令 · CWD (CHANGE WORKING DIRECTORY) 命令处理代码如下 if(str startsWith( CWD )){String str = str substring( );dir = dir+ / +str trim();out println( CWD mand succesful );}该命令改变工作目录到用户指定的目录 · CDUP (CHANGE TO PARENT DIRECTORY) 命令处理代码如下 if(str startsWith( CDUP )){int n = dir lastIndexOf( / );dir = dir substring( n);out println( CWD mand succesful );}该命令改变当前目录为上一层目录 · QUIT命令处理代码如下 if(str startsWith( QUIT )) {out println( GOOD BYE );done = true;}该命令退出及关闭与服务器的连接 输出GOOD BYE ( ) 传输参数命令· Port命令处理代码如下 if(str startsWith( PORT )) {out println( PORT mand successful );int i = str length() ;int j = str lastIndexOf( );int k = str lastIndexOf( j );String str str ;str = ;str = ;for(int l=k+ ;lstr = str + str charAt(l);}for(int l=j+ ;l<=i;l++){str = str + str charAt(l);}tempPort = Integer parseInt(str ) +Integer parseInt(str );}使用该命令时 客户端必须发送客户端用于接收数据的 位IP 地址和 位 的TCP 端口号 这些信息以 位为一组 使用十进制传输 中间用逗号隔开 · TYPE命令处理代码如下 if(str startsWith( TYPE )){out println( type set );}TYPE 命令用来完成类型设置 ( ) FTP 服务命令· RETR (RETEIEVE) 和 STORE (STORE)命令处理的代码if(str startsWith( RETR )){out println( Binary data connection );str = str substring( );str = str trim();RandomAccessFile outFile = newRandomAccessFile(dir+ / +str r );Socket tempSocket = new Socket(host tempPort);OutputStream outSocket = tempSocket getOutputStream();byte byteBuffer[]= new byte[ ];int amount;try{while((amount = outFile read(byteBuffer)) != ){outSocket write(byteBuffer amount);}outSocket close();out println( transfer plete );outFile close();tempSocket close();}catch(IOException e){}}if(str startsWith( STOR )){out println( Binary data connection );str = str substring( );str = str trim();RandomAccessFile inFile = newRandomAccessFile(dir+ / +str rw );Socket tempSocket = new Socket(host tempPort);InputStream inSocket = tempSocket getInputStream();byte byteBuffer[] = new byte[ ];int amount;try{while((amount =inSocket read(byteBuffer) )!= ){inFile write(byteBuffer amount);}inSocket close();out println( transfer plete );inFile close();tempSocket close();}catch(IOException e){}}文件传输命令包括从服务器中获得文件RETR和向服务器中发送文件STOR 这两个命令的处理非常类似 处理RETR命令时 首先得到用户要获得的文件的名称 根据名称创建一个文件输入流 然后和客户端建立临时套接字连接 并得到一个输出流 随后 将文件输入流中的数据读出并借助于套接字输出流发送到客户端 传输完毕以后 关闭流和临时套接字 STOR 命令的处理也是同样的过程 只是方向正好相反 · DELE (DELETE)命令处理代码如下 if(str startsWith( DELE )){str = str substring( );str = str trim();File file = new File(dir str);boolean del = file delete();out println( delete mand successful );}DELE 命令用于删除服务器上的指定文件 · LIST命令处理代码如下 if(str startsWith( LIST )) {try{out println( ASCII data );Socket tempSocket = new Socket(host tempPort);PrintWriter out = new PrintWriter(tempSocket getOutputStream() true);File file = new File(dir);String[] dirStructure = new String[ ];dirStructure= file list();String strType= ;for(int i= ;iif( dirStructure[i] indexOf( ) == ) { strType = d ;}else{strType = ;}out println(strType+dirStructure[i]);}tempSocket close();out println( transfer plete );}catch(IOException e){}LIST 命令用于向客户端返回服务器中工作目录下的目录结构 包括文件和目录的列表 处理这个命令时 先创建一个临时的套接字向客户端发送目录信息 这个套接字的目的端口号缺省为 然后为当前工作目录创建File 对象 利用该对象的list()方法得到一个包含该目录下所有文件和子目录名称的字符串数组 然后根据名称中是否含有文件名中特有的 来区别目录和文件 最后 将得到的名称数组通过临时套接字发送到客户端 lishixinzhi/Article/program/Java/JSP/201311/19211

建立步骤如下:

1、打开“控制面板”,点击 “程序”,点击“程序与功能”;

2、点击“打开或关闭windows功能”,将“Internet信息服务” 下的FTP服务全部勾选,点击“确定”;

3、成功之后,打开“控制面板”,点击“系统和安全”,点击“管理工具”;

4、双击打开"Internet信息服务(IIS)管理器",右键点击“添加FTP站点”,填写并选择对应参数“下一步”;

5、选择对应的参数,下一步,赋予相的身份验证和读写权限,点击“完成”;

6、选择完毕之后右侧点击“启动”访问成功,完成创建。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/12579497.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存