安装笔记之(vsftp)
软件名称:vsftpd
软件作者:Chris Evans
开源协议:GPL
官方网站:[url]http://vsftpd.beasts.org[/url]
软件版本:2.0.7
linux版本:Ubuntu 8.10 linux kernel 2.6.27
GCC版本:4.3.2

vsftp全称是Very Security FTP。从此名称就可以得知作者Chris Evans就是为了开发一个非常安全的的FTP服务器。vsftp支持基于虚拟用户结合数据库的用户验证;支持速度限制;支持SSL加密传输等等。下面我就具体说一下vsftp的安装以及配置过程,以及在安装配置过程中遇到的问题。由于本人也是刚刚使用linux,文中不免有错误的地方还请大家要多多指教。
1.准备安装vsftp
下载软件:
软件安装:
$ mkdir ftp
$ cp /home/felix/download/vsftpd-2.0.7.tar.gz /home/felix/ftp
$ tar -zxvf vsftpd-2.0.7.tar.gz
$ cd vsftpd-2.0.7
上面这些过程是将下载到的vsftpd-2.0.7压缩包拷贝到目标目录并且解压缩。
在编译程序之前,我们先要编辑一下builddefs.h文件。
$ vi builddefs.h
这个文件中有三个选项:
#undef VSF_BUILD_TCPWRAPPERS //不使用TCP Wrappers
#undef VSF_BUILD_PAM //使用PAM认证
#undef VSF_BUILD_SSL //不使用SSL
define表示允许使用; undef为不允许使用。
TCP Wrappers是一个验证IP地址合法性的程序;PAM认证是一种虚拟用户登录FTP的验证方式;
SSL可以建立一条加密的数据通道。这里由于需要本地用户登录FTP故关闭PAM认证方式。
2.安装配置
$ sudo make
$ sudo make install
说明:由于Ubuntu系统的特性,当需要root权限的时候,可以通过sudo命令临时提升执行权限。
增加一个ftpuser的用户
$ sudo useradd -m ftpuser
$ sudo passwd ftpuser
然后更改共享目录的权限
$ sudo mkdir /home/ftpshare
sudo chmod 777 /home/ftpshare
经过了上面的步骤,vsftpd就已经安装到本地系统当中了并且已经创建了本地用户与共享文件夹。下面我们就开始配置文件”/etc/vsftpd.conf”
$ sudo vi /etc/vsftpd.conf
配置如下:
#独立服务器模式启动
listen=YES
#不允许匿名用户访问、允许本地(系统)用户登录
anonymous_enable=NO
local_enable=YES
write_enable=YES

#生成日志
xferlog_enable=YES
#登录FTP欢迎信息
ftpd_banner=Welcome to FTP service!

#默认的目录
secure_chroot_dir=/home/ftpshare

启动vsftpd
$ sudo vsftpd

3.出现的问题
a. make过程中出现sysdeputil.c错误
解决的办法是:安装libcap-dev文件
b. make install 过程中出现“无法创建一般文件”的错误
解决的办法是:针对本机的具体路径修改Makefile文件
c. vsftpd.conf文件非常重要,修改之前请先备份;如果运行vsftpd服务器出错的时候就检查一 下该文件中是否有空格或者字母拼错的地方。
例如:listen=YES
listen前面不能有空格;“YES‘必须大写。

总结:在局域网内使用我的ip地址,ftpuser用户名+密码就可以访问我的共享文件。Vsftpd的强大就在于其丰富的定制性,可以通过vsftpd.conf文件定制出功能丰富,安全稳定的FTP服务器。有兴趣的朋友可以进一步阅读一下vsftpd 配置信息》