arm-linux下vsftpd的安装和配置
作者:阿思翠 | 来源:互联网 | 2014-05-28 09:06
1.下载源码包:vsftpd-2.3.4.tar.gz2.修改Makefile文件CC/usr/local/arm/arm-2009q1/bin/arm-none-linux-gnueabi-gcc3.执行make,如果报错执行44.修改vsffindlibs.sh屏蔽掉505154行:#Lookforlibcap(c
1.下载源码包:vsftpd-2.3.4.tar.gz
2.修改Makefile文件
CC = /usr/local/arm/arm-2009q1/bin/arm-none-linux-gnueabi-gcc
3.执行make,如果报错执行4
4.修改vsffindlibs.sh
屏蔽掉 50 51 54 行:# Look for libcap (capabilities)
if locate_library /lib/libcap.so.1; then
echo "/lib/libcap.so.1";
#elif locate_library /lib/libcap.so.2; then
# echo "/lib/libcap.so.2";
else
locate_library /usr/lib/libcap.so && echo "-lcap";
# locate_library /lib/libcap.so && echo "-lcap";
locate_library /lib64/libcap.so && echo "-lcap";
fi
注:网上有文章说可以把库的路径设置到交叉编译器的库路径下,我没有试过,在此处采取屏蔽的方式。
5.make 成功
6.因为是动态编译,所以需要把动态链接库从编译器的lib下拷贝到跟文件系统的lib目录下
[root@uestc vsftpd-2.3.4]# file vsftpd
vsftpd: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.14, stripped
[root@uestc vsftpd-2.3.4]# arm-none-linux-gnueabi-readelf -d vsftpd
Dynamic section at offset 0x1700c contains 30 entries:
Tag Type Name/Value
0x00000001 (NEEDED) Shared library: [libcrypt.so.1]
0x00000001 (NEEDED) Shared library: [libdl.so.2]
0x00000001 (NEEDED) Shared library: [libnsl.so.1]
0x00000001 (NEEDED) Shared library: [libresolv.so.2]
0x00000001 (NEEDED) Shared library: [libutil.so.1]
0x00000001 (NEEDED) Shared library: [libgcc_s.so.1]
0x00000001 (NEEDED) Shared library: [libc.so.6]
0x0000000c (INIT) 0x9714
0x0000000d (FINI) 0x1ae30
0x00000019 (INIT_ARRAY) 0x27000
0x0000001b (INIT_ARRAYSZ) 4 (bytes)
0x0000001a (FINI_ARRAY) 0x27004
0x0000001c (FINI_ARRAYSZ) 4 (bytes)
0x00000004 (HASH) 0x8168
0x00000005 (STRTAB) 0x8d1c
0x00000006 (SYMTAB) 0x84fc
0x0000000a (STRSZ) 1196 (bytes)
0x0000000b (SYMENT) 16 (bytes)
0x00000015 (DEBUG) 0x0
0x00000003 (PLTGOT) 0x27124
0x00000002 (PLTRELSZ) 984 (bytes)
0x00000014 (PLTREL) REL
0x00000017 (JMPREL) 0x933c
0x00000011 (REL) 0x932c
0x00000012 (RELSZ) 16 (bytes)
0x00000013 (RELENT) 8 (bytes)
0x6ffffffe (VERNEED) 0x92cc
0x6fffffff (VERNEEDNUM) 3
0x6ffffff0 (VERSYM) 0x91c8
0x00000000 (NULL) 0x0
把所有的七个共享库拷贝过去
7.把生成的vsftpd 拷贝到跟文件系统的sbin目录下,把vsftpd.conf文件拷贝到 跟文件系统的etc目录下。
至此,arm-linux环境下的ftp服务器移植完成,下面开始对服务器进行配置。以下为一个简单的配置,不考虑安全性。
anonymous_enable=YES
local_enable=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
async_abor_enable=YES
nopriv_user=ftp
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to blah FTP service.
ls_recurse_enable=YES
listen_port=21
anon_other_write_enable=YES
8.在板子上创建必要的帐号,目录:
#addusr nobody //vsftpd 默认配置需要
#mkdir /usr/share/empty//vsftpd 默认配置需要
#adduser -D /var/ftp ftp
#chown root:root/var/ftp
#chmod og-w /var/ftp
9.创建一个本地账户ming,创建好之后可以用ming登录
#addusr ming
#passwd 123456
10.添加一个只能从ftp登录,而不能从本地的登录的用户mingming
#addusr -G ftp -S /sbin/nologin mingming //-G -S 如果用-g -s 客户将不能登录:530 Login incorrect
#passwd 123456
11.服务器端执行 vsftpd /etc/vsftpd.conf ,客户端执行ftp YOUR_ADDR ,输入帐号名和密码即登入。
12.用cat /etc/passwd cat /etc/group 命令查看
推荐阅读
-
nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ...
[详细]
蜡笔小新 2024-12-28 13:00:24
-
本文详细介绍了如何为联通光猫配置DNS服务器地址,以提高网络解析效率和访问体验。通过智能线路解析功能,域名解析可以根据访问者的IP来源和类型进行差异化处理,从而实现更优的网络性能。 ...
[详细]
蜡笔小新 2024-12-28 11:28:18
-
-
1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ...
[详细]
蜡笔小新 2024-12-27 19:32:17
-
本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ...
[详细]
蜡笔小新 2024-12-27 19:31:05
-
本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ...
[详细]
蜡笔小新 2024-12-27 13:47:38
-
本文详细介绍了360SRC平台处理一起关键安全事件的过程,涵盖从漏洞提交、验证、排查到最终修复的各个环节。通过这一案例,展示了360在安全应急响应方面的专业能力和严谨态度。 ...
[详细]
蜡笔小新 2024-12-27 11:10:05
-
本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ...
[详细]
蜡笔小新 2024-12-27 10:18:13
-
本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ...
[详细]
蜡笔小新 2024-12-28 10:36:30
-
Valve 最新发布了针对 Steam Deck 掌机的 Windows 驱动程序,旨在提升其在 Windows 环境下的兼容性、安全性和性能表现。 ...
[详细]
蜡笔小新 2024-12-28 10:31:16
-
本书提供了全面的数据管理职能、术语和最佳实践方法的标准行业解释,构建了数据管理的总体框架,为数据管理的发展奠定了坚实的理论基础。适合各类数据管理专业人士和相关领域的从业人员。 ...
[详细]
蜡笔小新 2024-12-27 18:29:55
-
本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ...
[详细]
蜡笔小新 2024-12-27 17:40:42
-
本文详细介绍了如何在Linux环境中安装和配置ActiveMQ,包括端口开放及防火墙设置。通过本文,您可以掌握完整的ActiveMQ部署流程,确保其在网络环境中正常运行。 ...
[详细]
蜡笔小新 2024-12-27 14:38:54
-
本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ...
[详细]
蜡笔小新 2024-12-27 13:55:14
-
本文通过一系列日记记录了从发现漏洞到逐步加强安全措施的过程,探讨了如何应对网络攻击并最终实现全面的安全防护。 ...
[详细]
蜡笔小新 2024-12-27 11:34:50
-
本文将详细介绍如何利用Python的Paramiko库实现远程执行Linux脚本和命令,帮助读者快速掌握这一实用技能。通过具体的示例和详尽的解释,让初学者也能轻松上手。 ...
[详细]
蜡笔小新 2024-12-26 19:47:05
-