Hi3520d 嵌入式ftp服务器vsftpd移植及配置
来源:互联网 发布:截面数据 编辑:程序博客网 时间:2024/06/06 02:20
1、下载vsftpd-2.0.7.tar.gz
2、解压 修改Makefile CC=arm-hisiv100nptl-linux-gcc,make
报错:
sysdeputil.c:162: error: expected declaration specifiers or '...' before 'capset'
解决:
修改sysdeputil.c
#include <sys/capability.h>
#if defined(VSF_SYSDEP_HAVE_CAPABILITIES) && !defined(VSF_SYSDEP_HAVE_LIBCAP)
-#include <linux/unistd.h>
#include <linux/capability.h>
#include <errno.h>
-#include <syscall.h>
-_syscall2(int, capset, cap_user_header_t, header, const cap_user_data_t, data)
-/* Gross HACK to avoid warnings - linux headers overlap glibc headers */
-#undef __NFDBITS
-#undef __FDMASK
+#include <sys/syscall.h>
+#include <unistd.h>
+int capset(cap_user_header_t header,
+ cap_user_data_t data)
+{
+ return syscall(SYS_capset, header, data);
+}
#endif /* VSF_SYSDEP_HAVE_CAPABILITIES */
#if defined(VSF_SYSDEP_HAVE_LINUX_SENDFILE) || \
重新make,又报错了:
sysdeputil.c:(.text+0x860): undefined reference to `crypt'
修改Makefile
LIBS = `./vsf_findlibs.sh` -lcrypt
链接crypt库
重新make,ok了
root@ubuntu:vsftpd-2.0.7# ls -lh vsftpd
ls: 初始化月份字符串出错
-rwxr-xr-x 1 root root 87K 9�� 17 11:37 vsftpd
root@ubuntu:vsftpd-2.0.7#
配置:
首先,修改配置文件
/etc/vsftpd.conf如下:
anonymous_enable=NO
local_enable=YES
write_enable=NO
local_umask=077
anon_upload_enable=NO
dirmessage_enable=NO
xferlog_enable=NO
connect_from_port_20=YES
pam_service_name=vsftpd
listen=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
然后,添加用户
adduser nobody //vsftpd 默认配置需要
adduser -D /var/ftp ftp
实际上是修改的/etc/passwd 和 /etc/group文件,也可手动修改
然后,mkdir /usr/share/empty//vsftpd 默认配置需要
然后,
adduser -h /mnt -G ftp -S /sbin/nologin yourname //添加yourname用户到ftp用户组,能访问的主目录为/mnt,不能使用该用户名本地登陆
同样可以通过修改系统文件实现
nologin路径根据实际情况改写,否则adduser执行出错
要达到禁止yourname本地登陆的目的,网上还有一种方法
passwd -l yourname //为yourname加锁 -l lock,实际上就是修改/etc/passwd文件中yourname对应的密码最开始加了一个 !
但此时ftp也无法使用该用户名登陆了,shit,无用
然后,限制用户不能改变ftp目录到上一级目录
修改/etc/vsftpd.conf
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
然后vi /etc/vsftpd.chroot_list,在文件里一行一个写入要限制的用户名
然后,想到了再写
- Hi3520d 嵌入式ftp服务器vsftpd移植及配置
- 嵌入式FTP服务器的移植与配置:VSFTPD-2.0.6移植
- 嵌入式FTP服务器的移植与配置(1):VSFTPD-2.0.6移植
- 嵌入式FTP服务器的移植与配置:VSFTPD-2.0.6移植(目标板mini2440)
- 嵌入式FTP服务器的移植与配置:VSFTPD-2.0.6移植
- 嵌入式FTP服务器的移植与配置:VSFTPD-2.0.6移植
- 嵌入式linux移植vsftpd服务器
- 嵌入式ftp服务器移植
- Ubuntu环境FTP服务器vsftpd安装及配置方法
- Ubuntu环境FTP服务器vsftpd安装及配置方法
- ubuntu ftp 服务器搭建及vsftpd.conf配置实例详解
- 安装vsftpd配置ftp服务器
- FTP服务器vsftpd配置详解
- 嵌入式FTP服务器的移植
- 嵌入式FTP服务器的移植
- LXT6架构-嵌入式Ftp服务器Vsftpd交叉编译与配置使用(ARMv7)
- RHEL5中配置vsftpd搭建FTP服务器
- RHEL5中配置vsftpd搭建FTP服务器
- selenium用java找到表格某一行某一列中含有特定文字的某个元素
- dynamic generate command line parameters for qt embedded application
- XXLB
- 使用docker模拟并发访问服务器
- nexus5 博通芯片WIFI详解 (1)
- Hi3520d 嵌入式ftp服务器vsftpd移植及配置
- Spark快速大数据分析——互动出版网
- Access the Spring-ApplicationContext from everywhere in your Application
- 我的java 之旅——day 1
- XXSXB
- Firefox OS启动过程分析-nuwa进程启动
- ARM指令集
- java session 解析
- android-async-http源码解读(一)