vsftpdvery secure FTP daemon(非常安全的FTP进程),是一个基于GPL发布的类UNIX类操作系统上运行的服务器的名字(是一种守护进程),可以运行在诸如Linux、BSD、Solaris、HP-UX以及Irix等系统上面。vsftpd支持很多其他传统的FTP服务器不支持的良好特性。使用 vsftpd 可以在 Linux/Unix 系统上搭建一个安全、高性能、稳定性好的轻量级FTP服务器。

1 下载

下载最新版本源码包,下载地址:https://security.appspot.com/vsftpd.html#download。本文以 vsftpd-3.0.2.tar.gz 版本为例。

如果以上下载地址无法访问,也可以本地下载 vsftpd-3.0.2.tar.gz

2 解压

$ mkdir ~/vsftpd
$ cp vsftpd-3.0.2.tar.gz ~/vsftpd
$ cd ~/vsftpd
$ tar xzf vsftpd-3.0.2.tar.gz
$ cd vsftpd-3.0.2/

命令中的“~”表示当前用户目录,比如在Linux主机上面工作的用户是:veryarm,那么命令中的“~”就代表路径:/home/veryarm/目录。

3 配置

$ export PATH=$PATH:/usr/local/arm-2010q1/bin  #交叉编译工具路径加入系统环境变量!
$ vi Makefile

打开Makefile文件后,修改 CC 变量的值,修改后如下:

CC = arm-none-linux-gnueabi-gcc

其中,

  • CC: 指定交叉编译工具,一般为arm-none-linux-gnueabi-gcc、arm-linux-gnueabihf-gcc、arm-linux-gcc等,具体要和目标板用的交叉编译工具对应。

4 编译

$ make                  # 编译,如果电脑是多核CPU,如四核,使用make -j4可提高编译速度

make 后,当前目录下会生成两个文件:vsftpdvsftpd.conf,这两个文件是我们要用的。

5 复制文件

将生成的 vsftpd 复制到目标板 /usr/sbin 目录,vsftpd.conf 复制到目标板 /etc 目录,并添加 vsftpd 为可执行:

$ cp vsftpd /usr/sbin                       # 复制执行文件到目标板
$ cp vsftpd.conf /etc/                      # 复制配置文件到目标板
$ chmod +x /usr/sbin/vsftpd                 # 添加可执行权限

6 配置

使用 vi 打开 vsftpd.conf 文件,并进行配置,如下配置可实现正常上传下载功能:

anonymous_enable=NO                 # 默认的 YES 改为 NO
local_enable=YES                    # 删除前面的#号注释符号
write_enable=YES                    # 删除前面的#号注释符号
anon_upload_enable=NO               # 删除前面的#号注释符号,并将 YES 改为 NO
anon_mkdir_write_enable=NO          # 删除前面的#号注释符号,并将 YES 改为 NO
anon_other_write_enable=NO          # 删除前面的#号注释符号,并将 YES 改为 NO(这一项新版本中可能没有) 
chroot_local_user=YES               # 删除前面的#号注释符号,改行表示把FTP用户都限制在家目录中

allow_writeable_chroot=YES          # 添加本行到文件最后

再在目标版上使用命令配置:

$ adduser nobody                    # vsftpd默认配置需要
$ mkdir /usr/share/empty            # vsftpd默认配置需要

创建一个本地用户,并设置密码:

$ adduser ftpadmin
Changing password for ftpadmin
New password: 
Retype password: 
Password for ftpadmin changed by root

7 打开vsftp

配置完之后,在目标板上打开vsftp,命令:

$ vsftpd &

注意,后面还有一个 &。如果要让 vsftpd 开机启动,可以将该命令添加到 /etc/profile 或者 rc.local 文件最后。

8 客户端测试

配置目标板 IP,使其能够与电脑ping通,然后在电脑上打开客户端,输入目标板IP、用户名、密码,就可以连接上去了。

vsftpd移植

如上,连接后可以看到用户目录 /home/ftpadmin 下的所有文件,此时可以新建、上传、下载文件了。

文章来自VeryARM:http://www.veryarm.com/946.html,转载请保留。

Logo

更多推荐