项目需要开通ftp,以前没有玩过这个,这次总结一下,以供参考:

操作系统:suse10企业版
一、确认系统中是否已有开通ftp所需要包
  rpm -qa | grep vsftp
如果没有安装,需要手工安装
rpm  -ivh vsftpd-2.0.4-19.18.suse.x86_64.rpm
二、安装玩数据包后,需要更改一下配置文件
配置文件目录:/etc/vsftpd.conf
-----------------------------------------------------------------------------
vsftpd有三种服务器方式:匿名方式、本地方式和虚拟用户方式。vsftpd的配置文件位于/etc/目录下,名称为vsftpd.conf。下面说一下需要修改的地方:
     将local_enable=YES前的#去掉,使其可用,表示允许本地用户登录;增加listen_port=21配置项,设置监听端口为21;该步骤可选,不允许匿名用户登录, 
     将anonymous_enable=YES的值改为NO,根据实际需要设置。
限制本地用户访问文件系统
     chroot_local_user=YES    将本地用户浏览限制在其FTP根目录下,FTP用户登录后,一般在HOME的用户目录下,需要通过CHOWN来设置该目录的属主和权限,这样才可以上传和创建文件或目录,其他目录和文件都可以正常下载。   
    重启vsftpd服务:service vsftpd restart。或/etc/init.d/vsftpd restart启动后,在进行测试,使用本地用户userl及其密码登录,成功。
限制部分用户访问文件系统
chroot_list_enable=YES    启用列表(不可以与上条命令同时开启)
chroot_list_file=%file path%   限制用户的列表文件
连接限制
Max_client=%number%   最大连接数
max_per_ip=%number%   每ip最大连接数
anon_max_rate=%number%    匿名用户最大速率 单位kbps
local_max_rate=%number%   本地用户最大速率 单位kbps
三、测试连接
方法一:用工具连接,这种方法就不介绍了,全部图形界面,点点鼠标就OK,我们介绍命令行的方法;
方法二:使用命令行连接
C:\Documents and Settings\Administrator>ftp 192.168.1.241
Connected to 192.168.1.241.
220 (vsFTPd 2.0.4)
User (192.168.1.241:(none)): tftp
331 Please specify the password.
Password:
230 Login successful.
ftp>
ftp> put D:\initorcl.ora
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 File receive OK.
ftp: 发送 1091 字节,用时 0.00Seconds 1091000.00Kbytes/sec.
ftp>
注意:我这里没有另外指定ftp的端口,使用的是ftp默认端口 21,如果在参数文件中指定了默认端口意外的端口,在windows中将不能采用以上的连接方式,详见下面的示例;
C:\Documents and Settings\Administrator>ftp
ftp> open 192.168.1.241 21
Connected to 192.168.1.241.
220 (vsFTPd 2.0.4)
User (192.168.1.241:(none)): tftp
331 Please specify the password.
Password:
230 Login successful.
ftp>
ftp> put D:\initorcl.ora
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 File receive OK.
ftp: 发送 1091 字节,用时 0.00Seconds 1091000.00Kbytes/sec.
ftp>
常用的ftp命令:
1、选择本地路径:cd  D:\app
2、选择远程路径:cd /home/tftp/
3、上传文件:put 
      put后面可以跟绝对路径也可以跟相对路径
4、下载文件:get
5、切换pasv和port模式:
      quote pasv   
      或 
      quote port 
6、其他的命令可以在ftp中输入  ?  寻求帮助。