一:xshell使用xftp传输文件

下载xftp5,然后登陆到主机,按ctrl+alt+f,可以直接打开ftp窗口

二:使用pure-ftpd搭建ftp服务

安装pure-ftpd

(1)下载软件 Pure-ftpd 官网是 http://www.pureftpd.org/project/pure-ftpd #cd /usr/local/src/ #wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.42.tar.bz2 (2)安装pure-ftpd #tar jxf pure-ftpd-1.0.42.tar.bz2 #cd pure-ftpd-1.0.42 #./configure
--prefix=/usr/local/pureftpd
--without-inetd
--with-altlog
--with-puredb
--with-throttling
--with-peruserlimits
--with-tls #make && make install (3)配置pure-ftpd Pure-ftpd编译安装很快就完成了,而且极少有出现错误的时候,下面就该配置它了: #cd configuration-file #mkdir -p /usr/local/pureftpd/etc/ #cp pure-ftpd.conf /usr/local/pureftpd/etc/pure-ftpd.conf #cp pure-config.pl /usr/local/pureftpd/sbin/pure-config.pl #chmod 755 /usr/local/pureftpd/sbin/pure-config.pl 在启动pure-ftpd之前需要先修改配置文件,配置文件为 /usr/local/pureftpd/etc/pure-ftpd.conf, 你可以打开看一下,里面内容很多,如果英文好,可以 好好研究一番,下面是我提供的配置文件,如果你觉得直接更改嫌麻烦,直接把自带配置删 除,然后把下面的配置粘贴即可(配置文件下载地址 http://study.lishiming.net/.pf.c ) ChrootEveryone yes BrokenClientsCompatibility no MaxClientsNumber 50 Daemonize yes MaxClientsPerIP 8 VerboseLog no DisplayDotFiles yes AnonymousOnly no NoAnonymous no SyslogFacility ftp DontResolve yes MaxIdleTime 15 PureDB /usr/local/pureftpd/etc/pureftpd.pdb LimitRecursion 3136 8 AnonymousCanCreateDirs no MaxLoad 4 AntiWarez yes Umask 133:022 MinUID 100 AllowUserFXP no AllowAnonymousFXP no ProhibitDotFilesWrite no ProhibitDotFilesRead no AutoRename no AnonymousCantUpload no PIDFile /usr/local/pureftpd/var/run/pure-ftpd.pid MaxDiskUsage 99 CustomerProof yes

(4) 启动pure-ftpd #cd /usr/local/pureftpd/ #./sbin/pure-config.pl ./etc/pure-ftpd.conf 如果是启动成功,会显示一行长长的以Running 开头的信息,否则那就是错误信息。重 启可能会比较麻烦一些,毕竟我们没有启动脚本。重启的话,可以使用下面的命令来实现。
#killall puref-ftpd #cd /usr/local/pureftpd/; ./sbin/pure-config.pl ./etc/pure-ftpd.conf (5) 建立账号 Pure-ftpd 使用的账号并非Linux系统账号,而是虚拟账号。因为,这样做比较安全。 #mkdir /data/www/ #useradd www #chown -R www:www /data/www/ #/usr/local/pureftpd/bin/pure-pw useradd ftp_user1 -uwww -d /data/www/ Password: Enter it again:

其中,-u将虚拟用户 ftp_user1与系统用户www关联在一起,也就是说使用 ftp_user1 账号登陆ftp后,会以 www的身份来读取文件或下载文件。-d 后边的目录为 ftp_user1账户 的家目录,这样可以使 ftp_user1只能访问其家目录/data/www/。到这里还未完成,还有最关 键的一步,就是创建用户信息数据库文件: #/usr/local/pureftpd/bin/pure-pw mkdb pure-pw还可以列出当前的 ftp账号,当然也可以删除某个账号, 我们再创建一个账号: #/usr/local/pureftpd/bin/pure-pw useradd ftp_user2 -uwww -d /tmp #/usr/local/pureftpd/bin/pure-pw mkdb 列出当前账号: #/usr/local/pureftpd/bin/pure-pw list 删除账号的命令为: #/usr/local/pureftpd/bin/pure-pw userdel ftp_user2 (6) 测试pure-ftpd 测试需要使用的工具叫做 lftp, 先安装一下它: #yum install -y lftp 测试: #touch /data/www/123.txt #lftp ftp_user1@127.0.0.1 口令: lftp ftp_user1@127.0.0.1:~> ls drwxr-xr-x 2 514 www 4096 Jun 12 11:14 . drwxr-xr-x 2 514 www 4096 Jun 12 11:14 .. -rw-r--r-- 1 514 www 0 Jun 12 11:14 123.txt 登录后,使用 ls 命令可以列出当前目录都有什么文件。我使用 lftp工具是为了方便在 Linux系统里测试它。最好的测试方法是,在你的Windows机器里安装个ftp客户端软件(推 荐filezilla-client),然后去远程连接测试。 下面我再提供一种使用 yum安装 pure-ftpd的方法,只列出命令,不做详细解释。 yum install -y epel-release expect yum install -y pure-ftpd curl http://www.apelearn.com/study_v2/.pf.c > /etc/pure-ftpd/pure-ftpd.conf user=mkpasswd -l 5 -s 0 -d 0 -C 0 pass=mkpasswd -s 0 echo $user $pass > /tmp/ftp.pass mkdir -p /data/ftp #创建 ftp服务的目录 echo -e "$pass\n$pass"|pure-pw useradd $user -u apache -d /data/ftp/ pure-pw mkdb #创建密码文件 pure-pw list #列出用户 pure-pw userdel $user #删除账号 /etc/init.d/pure-ftpd start #启动服务