VSFtpd编译配置说明

1 篇文章 0 订阅
1 篇文章 0 订阅

说明:使用vsftpd版本vsftpd-3.0.3,网上下载的源码。这里是初步配置,交叉编译配置虚拟用户时,需要的各种库交叉编译时需要各种依赖,所以这个版本没有配置虚拟用户,感兴趣的朋友可以自行研究。

  • gcc编译

  1. 解压vsftpd-3.0.3.tar.gz,解压命令tar –zxvf vsftpd-3.0.3.tar.gz 。
  2. cd进入解压的目录vsftpd-3.0.3中。
  3. 编译:make clean && make。
  4. 报错:
  5. 通过find / -name libcap.so.2命令查找到/lib64/libcap.so.2和/lib/libcap.so.2下均有这个库。再看vsf_findlibs.sh中关于这个库,如下图选中的地方,若编译不通过,换/lib64/ libcap.so.2,再不行,注释关于libcap.so.2这个库的内容。
  6. 重新编译:make clean && make。
  7. 编译通过后在当前目录生成vsftpd执行文件,关于vsftpd运行除该可执行程序外还需要配置文件vsftpd.conf。
  • 交叉编译

  1. 解压vsftpd-3.0.3.tar.gz,解压命令tar –zxvf vsftpd-3.0.3.tar.gz 。
  2. cd进入解压的目录vsftpd-3.0.3中。
  3. vi Makefile修改CC = gcc 为CC = arm-xilinx-linux-gnueabi-gcc(这里是我的交叉编译工具链)。
  4. 编译:make clean && make。
  5. 报错:
  6. 这里可以通过find / -name libcap.so.2命令查找交叉编译工具链中是否有libcap.so.2这个库,如果有修改下图选中的地方,目录指向交叉编译工具链。否则,注释所有关于libcap.so.2的内容。
  7. 重新编译:make clean && make。
  8. 编译通过后在当前目录生成vsftpd执行文件,关于vsftpd运行除该可执行程序外还需要配置文件vsftpd.conf。
  • 配置

  1. 将vsftpd和vsftpd.conf文件拷贝出来,放入创建好的执行目录,chmod 777 vsftpd修改权限。
  2. 修改配置文件:
  3. # add config
    userlist_file=/etc/vsftpd.user_list
    userlist_enable=YES
    userlist_deny=NO
    
    # set config
    listen=YES
    anonymous_enable=NO 
    local_enable=YES
    write_enable=YES
    secure_chroot_dir=/var/run/vsftpd/empty

 4.配置文件添加内容部分说明,

vsftpd.user_list:本地用户列表,用于登录的用户名列表。

write_enable:本地用户读写权限。

secure_chroot_dir=/var/run/vsftpd/empty:必要配置。

local_root=/mnt/:本地用户登录默认指向目录,且无法跳出该目录。

注意一定不要配置“local_umask=777”,否则你会发现文件怎样都上传不了。其他配置请自行研究。

  • 目录和本地用户配置

  1. adduser nobody,创建本地用户的前提是添加nobody用户,即匿名用户。
  2. adduser uftp 创建用户,用户名可以修改为其他名字,密码记住,那是你登录时要使用的密码。查看/home/目录下是否存在uftp文件夹,若不存在请手动创建一个mkdir –p /home/uftp 。
  3. mkdir -p /var/run/vsftpd/empty/ 必须。
  4. vi /etc/vsftpd.user_list 在这里添加uftp用户名。多个用户添加格式如下图所示:
  5. 配置文件归属用户:chown –R uftp /home/uftp。这一步的配置是防止后面上传文件提示没有权限的时候使用。后面跟的文件目录为本地用户上传的文件目录,与配置文件local_root后面跟的配置有关。默认指向用户本身所在,uftp用户默认目录为/home/uftp。
  • 程序运行

  1. 运行程序:./vsftpd vsftpd.conf。
  2. 说明:vsftpd和配置文件存放位置可以自行选择。如果vsftpd.conf在环境变量指向的目录,则可以直接运行./vsftpd。
  • filezilla使用

  1. 根据运行vsftpd的平台IP地址登录,用户名uftp,密码是刚刚创建uftp用户时的密码,端口不用填,点击连接按钮,开始连接。
  2. 遇到提示框,直接点确定按钮。
  3. 连接成功如下图所示:
  4. 此时就可以直接使用鼠标拖拽文件互传了。

  5. 如果无法上传,请查看上传的目录读写权限,命令ls –l查看,更改文件夹读写权限命令“chmod 777 dir”,dir指文件夹,如/mnt/home/uftp/。另外一个就是更改文件归属,chown –R uftp /home/uftp

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值