嵌入式FTP服务器(vsftpd)移植手册

合集下载

嵌入式FTP服务器_vsftpd_移植手册

嵌入式FTP服务器_vsftpd_移植手册

嵌入式FTP服务器(vsftpd)移植手册说明:交叉编译器版本:arm-linux-gcc 4.1.2操作系统平台:Linux Red Hat 9.0开发板平台:arm TX2440AFTP软件版本:vsftpd-2.1.2手册中字体颜色的约定:修改的代码用红色字体添加的大段代码用蓝色字体执行的命令用红色字体,前面加 #在终端上打印出的信息用紫色字体出现的错误信息用绿色字体说明的文字用红色粗体需要修改的文件加灰色底纹vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序,特点是小巧轻快,安全易用。

它还可以移植到嵌入式Linux中,我们可以把开发板当作一个FTP服务器。

一、编译vsftpd程序1、获得源码包:vsftpd-2.1.2.tar.gz(位置:光盘资料/源码包/其他软件源码)2、解压,进入源码目录:#tar xzvf vsftpd-2.1.2.tar.gz#cd vsftpd-2.1.23、修改Makefile,指定交叉编译器:CC = arm-linux-gcc4、make编译时会出现错误,跟libcap.so有关,修改vsf_findlibs.sh,45-53行注释掉:# 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";#fi再次执行#make,生成vsftpd可执行程序,放到根文件系统/usr/sbin目录下。

vsftpd配置手册(实用)

vsftpd配置手册(实用)

vsftpd配置手册(实用)1、vsftpd配置参数详细整理#接受匿名用户anonymous_enable=YES#匿名用户login时不询问口令no_anon_password=YES#匿名用户主目录anon_root=(none)#接受本地用户local_enable=YES#本地用户主目录local_root=(none)#如果匿名用户需要密码,那么使用banned_email_file里面的电子邮件地址的用户不能登录deny_email_enable=YES#仅在没有pam验证版本时有用,是否检查用户有一个有效的shell来登录check_shell=YES#若启用此选项,userlist_deny选项才被启动userlist_enable=YES#若为YES,则userlist_file中的用户将不能登录,为NO则只有userlist_file的用户可以登录userlist_deny=NO#如果和chroot_local_user一起开启,那么用户锁定的目录来自/etc/passwd每个用户指定的目录(这个不是很清楚,很哪位熟悉的指点一下)passwd_chroot_enable=NO#定义匿名登入的使用者名称。

默认值为ftp。

ftp_username=FTP#################用户权限控制################可以上传(全局控制).write_enable=YES#本地用户上传文件的umasklocal_umask=022#上传文件的权限配合umask使用#file_open_mode=0666#匿名用户可以上传anon_upload_enable=NO#匿名用户可以建目录anon_mkdir_write_enable=NO匿名用户其它的写权利(更改权限?)anon_other_write_enable=NO如果设为YES,匿名登入者会被允许下载可阅读的档案。

VSFTPD配置方法

VSFTPD配置方法

VSFTPD配置方法1.安装VSFTPD软件首先,使用以下命令在Linux系统上安装VSFTPD软件:```sudo apt-get install vsftpd```2.配置VSFTPD打开VSFTPD的配置文件,通常位于/etc/vsftpd.conf,使用以下命令:```sudo nano /etc/vsftpd.conf```-设置FTP根目录:``````-允许匿名访问(可选):```anonymous_enable=YES```-关闭匿名上传(可选):```anon_upload_enable=NO```-允许本地用户登录:```local_enable=YES```-限制用户仅访问其主目录:```chroot_local_user=YES```将用户限制在其主目录下,防止访问系统其他部分。

-设置FTP用户的权限:```file_open_mode=0777local_umask=022```file_open_mode设置为0777将文件权限设置为可读写执行,local_umask设置为022保证新创建的文件和文件夹的权限正确。

``````3.重启VSFTPD服务使用以下命令重启VSFTPD服务,使配置生效:```sudo systemctl restart vsftpd```4.配置防火墙如果系统上使用了防火墙,需要修改防火墙规则以允许FTP流量通过。

根据所使用的防火墙软件和具体配置方法来进行相应的设置。

5.创建FTP用户使用以下命令创建一个FTP用户:```sudo adduser ftpuser```将ftpuser替换为你希望创建的FTP用户名。

6.设置FTP用户密码使用以下命令设置FTP用户的密码:```sudo passwd ftpuser```7.连接FTP服务器使用FTP客户端软件连接到配置好的VSFTPD服务器,使用FTP用户的用户名和密码登录即可。

以上就是VSFTPD配置的一般方法。

VSFTPD操作手册20160913

VSFTPD操作手册20160913

VSFTPD 操作手册第一:为什么要用VSFTPDvsftpd是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。

vsftpd是一个UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如Linux、BSD、Solaris、HP-UNIX等系统上面,是一个完全免费的、开放源代码的ftp服务器软件,支持很多其他的FTP 服务器所不支持的特征。

比如:非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPv6、速率高等。

第二:如何创建VSFTPDVSFTPD用户分位三种,匿名用户,一般用户和虚拟用户。

vsftpd虚拟用户是不可以登陆到liunx主机上的,并且vsftpd虚拟用户只能访问FTP目录本地用户可以登陆计算机,出于最大安全考虑,需要创建虚拟用户。

需求:1,限制ftp用户登出自己的主目录2,禁止匿名用户登陆,设置虚拟账户登陆3,设置IP访问,只允许固定的IP或者IP段,或者域名访问。

4,一般的浏览器和ftp软件默认使用的是被动模式,为了方便iptables管理,需要配置FTP被动模式:修改ftp服务器端口。

限制ftp服务器的数据传输端口。

并且添加进去防火墙规则。

Ps:主动模式:传送数据的过程中,ftp服务端主动向客户端请求连接,传送数据。

Ps:被动模式:传送数据的过程中,ftp服务端接受客户端的情况,建立连接,传送数据。

生产环境中的ftp应该采用被动模式,因为被动模式是始终是客户端向服务端去请求连接,而主动模式需要服务器去去连接客户端的端口,连接客户端的端口,如果客户端是公网ip 且没有防火墙的话就没问题,但是现在的问题是客户端一般都是经过nat地址转换的,服务器要连到客户端的时候连到的根本不是客户端,而是提供nat服务的那个设备,所以不能使用主动模式。

如果是纯内网环境,则可以设置主动模式。

5,可以根据情况限定最大连接数,以及下载速率。

具体操作文档见附件一:vsftpd配置手册附件一:vsftpd配置手册.docx第三:vsftp的安全审计以及传输日志查看,参考附件二:vsftpd日志查看附件二:vsftpd日志查看.docx第四:常见故障的处理见附件三:vsftpd常见问题处理附件三:vsftpd常见问题处理.docx。

Linux服务器搭建之一:vsftpd服务器word精品文档9页

Linux服务器搭建之一:vsftpd服务器word精品文档9页

Linux服务器搭建之一:vsftpd服务器【原创】【最近忙于Linux服务器搭建,都是自学的,搭建了十几种服务器,最后好像有3个搭建失败了,我把搭建成功的服务器教程发布出来吧。

我只用了一个上午大略的看完一本350页的Linux服务器搭建书籍,花了3天半搭建全部服务器。

经验:书上说的和实际操作的相差甚远,但是万变不离其宗,核心还是相似的,同时Linux服务器也在向着配置简单化自动化迈进】Linux操作系统平台:Fedora 14 (安装了Axelget等yum加速插件)用户:root (普通用户无法安装软件包)基本软件包:vsftpd (yum这种软件包安装工具会自动根据主程序安装相应的软件包)服务器搭建流程:1.超级用户登录,然后执行【yum install vsftpd】安装vsftp服务器:2.安装成功:3.vsftp的主要配置文件【/etc/vsftpd】目录下,主要配置的是vsftpd.conf文件:4.vim编辑器(如果还没有安装的话使用nano编辑器也可以)编辑vsftpd.conf文件:允许匿名用户登录功能开启(默认是开启的),其他信息基本不用看,注意:vsftpd服务器用于存放文件的目录【/var/ftp】:5.用于vsftp服务器存放文件的目录在【/var/ftp】,想要往FTP服务器上存放啥文件就直接移到到【/var/ftp】目录下即可:6.在【/var/ftp】目录下还有一个pub目录,意思和public一样,我在这个目录下存放了vsftpd.txt文件用于测试:【echo "Welcome to VSftp Server" > vsftpd.txt】命令把【Welcome to VSftpd Server】内容添加到vsftpd.txt文件里:7.本机IP:192.168.170.205(内网IP):Linux下查询IP命令:【ifconfig】8.启动vsftpd服务器:【service vsftpd start】然后使用lftp命令登录本地vsftpd服务器:【lftp 192.168.170.205】如果你的系统没有lftp命令就自己使用yum安装吧,但是要注意:lftp 只是ftp客户端,不是服务器。

vsftpd配置文件说明详细版

vsftpd配置文件说明详细版

vsftpd配置⽂件说明详细版配置的选项及说明1、核⼼设置local_enable=YES //允许本地⽤户登录write_enable=YES //本地⽤户的写权限local_umask=022 //使⽤FTP的本地⽂件权限,默认为077,⼀般设置为022pam_service_name=vsftpd //验证⽅式connect_from_port_20=YES //启⽤FTP数据端⼝的数据连接listen=yes // 以独⽴的FTP服务运⾏listen_port=23 //修改连接端⼝2、匿名登录设置anon_upload_enable=YES // 如果允许匿名登录,是否开启匿名上传权限anon_mkdir_write_enable=YES //如果允许匿名登录,是否允许匿名建⽴⽂件夹并在⽂件夹内上传⽂件anon_other_write_enable=yes // 如果允许匿名登录,匿名帐号可以有删除的权限anon_world_readable_only=no //如果允许匿名登录,匿名的下载权限,匿名为Other,可设置⽬录/⽂件属性控制 anon_max_rate=30000 // 如果允许匿名登录,限制匿名⽤户传输速率,单位bite3、限制登录userlist_enable=yes //⽤userlist来限制⽤户访问userlist_deny=no //名单中的⼈不允许访问userlist_file=/etc/vsftpd/userlist_deny.chroot //限制名单⽂件放置的路径4、限制⽬录chroot_local_user=yes //限制所有⽤户都在家⽬录chroot_list_enable=YES //调⽤限制在家⽬录的⽤户名单chroot_list_file=/etc/vsftpd/chroot_list //限制在家⽬录的⽤户名单所在路径5、⽇志设置xferlog_file=/var/log/vsftpd.log //⽇志⽂件路径设置xferlog_std_format=YES // 使⽤标准的⽇志格式6、安全设置idle_session_timeout=600 //⽤户空闲超时,单位秒data_connection_timeout=120 //数据连接空闲超时,单位秒accept_timeout=60 //将客户端空闲1分钟后断开local_max_rate=10000 //本地⽤户传输速率,单位bitemax_clients=100 //FTP的最⼤连接数max_per_ip= 3 //每IP的最⼤连接数7、被动模式设置pasv_enable=yes //是否开户被动模式pasv_min_port=3000 // 被动模式最⼩端⼝pasv_max_port=5000 //#被动模式最⼤端⼝————————————————。

vsftpd配置详解

vsftpd配置详解

vsftpd配置详解1 安装vsftpd组件安装完后,有/etc/vsftpd/vsftpd.conf ⽂件,是vsftp的配置⽂件。

[root@bogon ~]# yum -y install vsftpd2、FTP主动模式与FTP被动模式的端⼝说明FTP是仅基于TCP的服务,不⽀持UDP。

与众不同的是FTP使⽤2个端⼝,⼀个数据端⼝和⼀个命令端⼝(也可叫做控制端⼝)。

通常来说这两个端⼝是21(命令端⼝)和20(数据端⼝)。

但FTP⼯作⽅式的不同,数据端⼝并不总是20。

这就是主动与被动FTP的最⼤不同之处。

FTP协议有两种⼯作⽅式:PORT⽅式和PASV⽅式,中⽂意思为主动式和被动式。

(⼀) FTP主动模式主动⽅式的FTP是这样的:客户端从⼀个任意的⾮特权端⼝N(N>1024)连接到FTP服务器的命令端⼝,也就是21端⼝。

然后客户端开始监听端⼝N+1,并发送FTP命令“port N+1”到FTP服务器。

接着服务器会从它⾃⼰的数据端⼝(20)连接到客户端指定的数据端⼝(N+1)。

针对FTP服务器前⾯的防⽕墙来说,必须允许以下通讯才能⽀持主动⽅式FTP:1. 任何⼤于1024的端⼝到FTP服务器的21端⼝。

(客户端初始化的连接)2. FTP服务器的21端⼝到⼤于1024的端⼝。

(服务器响应客户端的控制端⼝)3. FTP服务器的20端⼝到⼤于1024的端⼝。

(服务器端初始化数据连接到客户端的数据端⼝)4. ⼤于1024端⼝到FTP服务器的20端⼝(客户端发送ACK响应到服务器的数据端⼝)简明概括:PORT(主动)⽅式的连接过程是:客户端向服务器的FTP端⼝(默认是21)发送连接请求,服务器接受连接,建⽴⼀条命令链路。

当需要传送数据时,客户端在命令链路上⽤PORT命令告诉服务器:“我打开了XXXX端⼝,你过来连接我”。

于是服务器从20端⼝向客户端的XXXX端⼝发送连接请求,建⽴⼀条数据链路来传送数据。

vsftpd配置手册

vsftpd配置手册

如有帮助,欢迎下载支持vsftpd 配置手册VSFTPD施文建0 关于本文档1 VSFTPD简述2 VSFTPD的安装2.1 RHL9+vsftpd-1.1.3-8.i386.rpm包的安装2.2 vsftpd-1.2.0.tar.gz的安装3 VSFTPD的文件结构4 VSFTPD的启动与停止5 VSFTPD的设置选项5.1 连接选项5.1.1 监听地址与控制端口5.1.2 FTP模式与数据端口5.1.3 ASCII模式5.2 性能与负载控制5.2.1 超时选项5.2.2 负载控制5.3 用户选项5.3.1 匿名用户5.3.2 本地用户5.3.3 虚拟用户5.4 安全措施5.4.1 用户登录控制5.4.2 目录访问控制5.4.3 文件操作控制5.4.4 新增文件权限设定5.5 提示信息5.6 日志设置5.7 其他设置6 VSFTPD应用6.1 允许匿名用户上传文件6.2 限制用户在自家目录6.3 配置高安全级别的匿名FTP服务器6.4 基于IP地址的虚拟FTP服务器6.5 虚拟用户的配置6.5.1 VSFTPD的虚拟用户介绍6.5.2 用户创建和目录设置6.5.3 配置文件的设置6.5.3.1 基本设置6.5.3.2 权限设置6.5.3.3 虚拟用户的其他配置6.5.3.4 虚拟用户个人目录设置6.5.4 MySQL保存虚拟用户-------------------------------------------0、关于本文档本文档是个人的学习整理。

允许大家翻阅,摘抄,引用。

更欢迎指出其中不对之处。

文档的内容主要来自VSFTPD自身文档、个人学习心得以及网络资料,若有类同,实属正常,∶)。

本文档基于RedHat Linux 9和VSFTPD-1.1.3-8。

如果有不同版本,则有专门文字说明。

1、VSFTPD简述如果试问哪种FTP服务器最安全?那么在UNIX和Linux中,首推的就是VSFTP(Very Secure FTP Daemon,非常安全的FTP服务器)。

嵌入式linuxFTP移植

嵌入式linuxFTP移植

FTP系列1:VSFTPD-2.0.6移植(1)下载vsftpd官方网站::/当前的最新版本是:vsftpd-2.0.6,压缩包只有155k。

(2)交叉编译需要修改的地方有两处。

第一处是Makefile的CC:就是修改为你自己的交叉编译器的地址。

我因为前面编译一些工具都是使用了3.4.1,所以这里也就继续使用了。

第二处是脚本vsf_findlibs.sh。

这里主要是牵扯到库libcap的问题。

网上的修改都是更改到交叉编译器的lib文件夹下,发现即使在lib文件夹下面没有,也不影响。

那么,我判断,这个库是没有必要的,直接把这两行注释就可以了。

改完后,执行make,动态编译就成功了。

如下:(3)查看依赖及其相应的配置文件首先,因为是动态链接,查看相应的动态库。

把这些库从/usr/local/arm/3.4.1/arm-linux/lib下拷贝到rootfs的lib下。

第一步工作完成了。

第二步工作,把vsftpd拷贝到rootfs的/usr/sbin或者是/usr/local/sbin下面。

我的是拷贝到了/usr/sbin下面。

第三步工作就是配置文件vsftpd.conf。

我是直接从CentOS4.5的/etc/vsftpd/vsftpd.conf拷贝到了rootfs的/etc/vsftpd.conf。

这里测试时有一个问题,如果在rootfs下跟host一样,建立一个vsftpd的话,那么直接启动vsftpd都会产生一个oops错误,就是说只能由inetd或者xinetd来启动。

而事实上,我已经设置为listen=YES,应该可以standalone启动。

根据情况,屏蔽了几条记录:就是只更改了最后四行。

关于具体的配置后面再做探讨。

先走通再说。

下一步工作就是牵扯到用户问题了。

首先有一个本地用户,这样可以通过本地用户进行访问;其次要匿名用户,这就需要ftp用户;还需要有一个nobody用户。

直接创建比较麻烦,所以直接拷贝host的/etc/passwd,/etc/group,/etc/shadow。

Linux FTP(vsftpd)安装教程

Linux FTP(vsftpd)安装教程

若db4未装则多下载
db4-4.3.29-9.fc6.i386.rpm
db4-devel-4.3.29-9.fc6.i386.rpm两个软件包 rpm -ivh *.rpm --nodeps --force rpm -qa|grep db4
3.新建一个虚拟用户的PAM文件,加上如下两行内容:
VSFTPD安装:
准备条件:
VSFTPD默认配置中需要“nobody”用户
[root@localhost linkceo]# useradd nobody
useradd: user nobody exists
VSFTPD默认配置中需要“/usr/share/empty”目录
[root@localhost root]#vi /etc/pam.d/vsftp.vu
auth required /lib/security/pam_userdb.so db=/etc/account
account required /lib/security/pam_userdb.so db=/etc/account
}
把disable改成no并在/etc/vsftpd.conf文件中去掉listen=yes
虚拟用户相关配置:
1.生成虚拟用户口令库文件,文件的格式如单数行为用户名,偶数行为口令:
[root@localhost root]#vi account.txt
dog
dog123
cat
cat456

anonymous_enable=NO #禁止匿名用户登陆
local_enable=YES #允许本地用户登陆
guest_enable=YES #开启虚拟用户

vsftpd详细配置教程

vsftpd详细配置教程
#undef VSF_BUILD_TCPWRAPPERS //是否允许使用TCP Wrappers
#define VSF_BUILD_PAM //是否允许使用PAM认证





VSFTPD详细配置教程
一.vsftpd简介
Vsftpd是一个基于GPL发布的类UNIX系统的ftp服务器软件.其全称是Very Secure FTP Deamon,在安全性,速度和稳定性都有着不俗的表现.在安全性方面,vsftpd针对程序的权限来设计,以一般身份启动服务,对Linux系统的使用权限较低;在千兆以太网上,vsftpd的速度可以达到86MB/s;在稳定性上更是优秀,资料表明,完全工作24小时,传输数据达2.6TB,平均并发连接为1500用户,峰值达4000用户,而这些还是在单机上实现的.此外,vsftpd 还包括以下特性:
# rm /usr/local/man/man8/vsftpd.8
# rm /etc/xinetd.d/vsftpd
# rm -rf /etc/vsftpd
三.配置vsftpd服务
服务的启动与停止
启动服务之前,我们先编辑配置文件/etc/vsftpd/vsftpd.conf.打开配置文件后可以看到许多以"#"开始的行,这些行都是注释行,大多是帮助信息,可以仔细阅读.vsftpd.conf文件的所有项目都是以"参数=值"来设置的,对格式要求比较严格,必须严格区分大小写,等号两边不能有空格,每行的最后也不能有空格.每个参数都有一个默认值,没有在配置文件中明确指定的参数就会使用默认值.我们这里不理会配置文件本来的信息,把所有内容都删掉或注释掉,最后加上下面四行,每行右边的//及后的文字是含义说明,不要输入到文件中:

vsftpd的安装与配置

vsftpd的安装与配置

CentOS 5.3 vsftpd的安装与配置一、vsftpd软件介绍vsftp,全称:Very security ftp。

是Linux系统下最常见,常用的 FTP 服务器架设软件。

除此之外,还有一个proftp(Profession ftp)。

二、访问方式vsftp架设的FTP文件服务器,提供3种远程的登录方式:1.匿名登录方式不用解释了,就是不需要用户名,密码。

就能登录到服务器电脑里面2.本地用户方式意思是,需要帐户名和密码才能登录。

而且,这个帐户名和密码,都是在你linux系统里面,已经有的用户。

3. 虚拟用户方式同样需要用户名和密码才能登录。

但是和上面的区别就是,这个用户名和密码,在你linux系统中是没有的(没有该用户帐号)三、vsftpd 的安装1. 对于Debian和Ubuntu系统,可以直接通过:sudo apt-get install vsftpd启用,停用和重新启动是: /etc/init.d/vsftpd start(stop 和 restart)2. 对于Redhat, Fedoar和Centos一般这3类系统,都自带vsftpd,可以通过: rpm -qa|grep vsftp来查询下是否已经安装了。

如果没装,可以从光盘里面找到安装包双击安装,或者也可以: yum install vsftpd 注:启用、停用、重启service vsftpd {start|stop|restart}或/etc/init.d/vsftpd {start|stop|restart}四、配置前的注意事项1.查看,修改vsftp启动状态service vsftpd status查看vsftpd启动状态chkconfig --list vsftpd设置vsftpd 2345为启动状态chkconfig --level 2345 vsftpd on2.查看,修改防火墙状态/etc/init.d/iptables status添加开放21号端口/sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT保存配置/etc/rc.d/init.d/iptables save重启防火墙(启用,停用)service iptables {start|stop|restart}3.查看,关闭selinux (查看selinux运行情况 # /usr/sbin/sestatus或sestatus修改selinux状态vi /etc/sysconfig/selinux修改SELINUX=disabled保存退出并重启系统reboot五、vsftpd 三种模式的配置方法vsftpd的配置由文件/etc/vsftpd/vsftpd.conf,每种配置都要先修改配置文件,为了使配置文件的原始性,要先把配置文件拷贝并保存一份。

vsftpd安装手册

vsftpd安装手册

Linux安装ftp组件1安装vsftpd组件安装完后,有/etc/vsftpd/vsftpd.conf 文件,是vsftp的配置文件。

[root@bogon ~]# yum -y install vsftpd2添加一个ftp用户此用户就是用来登录ftp服务器用的。

[root@bogon ~]# useradd ftpuser这样一个用户建完,可以用这个登录,记得用普通登录不要用匿名了。

登录后默认的路径为/home/ftpuser.3给ftp用户添加密码。

[root@bogon ~]# passwd ftpuser输入两次密码后修改密码。

4防火墙开启21端口因为ftp默认的端口为21,而centos默认是没有开启的,所以要修改iptables文件[root@bogon ~]# vim /etc/sysconfig/iptables在行上面有22 -j ACCEPT 下面另起一行输入跟那行差不多的,只是把22换成21,然后:wq保存。

还要运行下,重启iptables[root@bogon ~]# service iptables restart5修改selinux外网是可以访问上去了,可是发现没法返回目录(使用ftp的主动模式,被动模式还是无法访问),也上传不了,因为selinux作怪了。

修改selinux:执行以下命令查看状态:[root@bogon ~]# getsebool -a | grep ftpallow_ftpd_anon_write --> offallow_ftpd_full_access --> offallow_ftpd_use_cifs --> offallow_ftpd_use_nfs --> offftp_home_dir --> offftpd_connect_db --> offftpd_use_passive_mode --> offhttpd_enable_ftp_server --> offtftp_anon_write --> off[root@bogon ~]#执行上面命令,再返回的结果看到两行都是off,代表,没有开启外网的访问[root@bogon ~]# setsebool -P allow_ftpd_full_access on[root@bogon ~]# setsebool -P ftp_home_dir on这样应该没问题了(如果,还是不行,看看是不是用了ftp客户端工具用了passive模式访问了,如提示Entering Passive mode,就代表是passive模式,默认是不行的,因为ftp passive模式被iptables挡住了,下面会讲怎么开启,如果懒得开的话,就看看你客户端ftp是否有port模式的选项,或者把passive模式的选项去掉。

给OpenWrt加装FTP服务器vsftpd

给OpenWrt加装FTP服务器vsftpd

2010年1月10日 Slyar 3 条评论恩,之前给OpenWrt挂载上了USB硬盘,现在就利用这个USB硬盘的空间开一个FTP 服务器吧。

考虑到需要开启匿名访问,所以这次没有选择SFTP而是选择了vsftpd。

1、下载安装vsftpdopkg updateopkg install vsftpd2、因为目前存在一个bug,所以如果你希望vsftpd自启动,就需要手工将启动脚本加入rc.d目录ln -s /etc/init.d/vsftpd /etc/rc.d/S50vsftpd3、如果你开着防火墙,需要将21端口开放4、修改vsftpd的配置文件vim /etc/vsftpd.conf5、发一个简单的配置文件备份用。

这里需要定义匿名用户名,因为openwrt没有ftp这个用户,有的是nobody这个用户。

你还可以定义用户根目录,这里我直接指向了挂载的USB硬盘。

background=YESlisten=YES#上传时更改文件所属权#chown_uploads=YES#chown_username=root#定义匿名用户名ftp_username=nobody#允许匿名访问anonymous_enable=YES#允许匿名用户上传和新建文件夹#anon_upload_enable=YES#anon_mkdir_write_enable=YES#定义匿名用户根目录anon_root=/mnt/anymous#匿名用户上传/下载速度限制anon_max_rate=512000#允许本地用户登录local_enable=YES#允许上传write_enable=YESlocal_umask=022check_shell=NO#本地用户主目录local_root=/mnt#限制用户只能访问主目录chroot_local_user=yesaccept_timeout=60idle_session_timeout=300max_clients=600max_per_ip=5#dirmessage_enable=YESftpd_banner=Welcome to Slyar FTP service. session_support=NOsyslog_enable=YES#xferlog_enable=YES#xferlog_file=/var/log/vsftpd.log#xferlog_std_format=YES6、因为vsftpd的一些安全措施(我懒得写了),如果你想要匿名用户正常访问,你可能需要对匿名用户的主目录/mnt/anymous 执行以下命令,否则可能会出现"553 Could not create file"之类的错误chown root:nogroup /mnt/anymous chmod 557 /mnt/anymous7、完事之后重启vsftpd,记得不能直接执行vsftpd,因为用户主目录下也有一个vsftpd...一定要执行/etc/init.d/vsftpd/etc/init.d/vsftpd restart8、如果需要停止vsftpd,你可能需要强制杀掉进程(首先用ps查看PID)kill -9 PID如此这般,FTP服务器应该就OK了,平常即使电脑没开也可以方便地传输一些东西了。

linux下vsftpd的安装及配置使用详细步骤(推荐)

linux下vsftpd的安装及配置使用详细步骤(推荐)

linux下vsftpd的安装及配置使⽤详细步骤(推荐)vsftpd 是“very secure FTP daemon”的缩写,安全性是它的⼀个最⼤的特点。

vsftpd 是⼀个 UNIX 类操作系统上运⾏的服务器的名字,它可以运⾏在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上⾯,是⼀个完全免费的、开放源代码的ftp服务器软件,⽀持很多其他的 FTP 服务器所不⽀持的特征。

⽐如:⾮常⾼的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟⽤户、⽀持IPv6、速率⾼等。

vsftpd是⼀款在Linux发⾏版中最受推崇的FTP服务器程序。

特点是⼩巧轻快,安全易⽤。

1.1 安装命令:yum install vsftpd -y配置Vsftpd安装完之后我们要对它进⾏配置,才能正常使⽤。

编辑vsftpd的配置⽂件vi /etc/vsftpd/vsftpd.conf在配置⽂件中找到“anonymous_enable=YES”,将"YES"改为"No",将匿名登录禁⽤。

添加开机⾃动启动,chkconfig vsftpd on不确定是否已经加⼊了开机启动项可以运⾏chkconfig –list进⾏查看1.2 创建⽤户命令:useradd ftpuser指定密码:passwd ftpuser此⽤户就是⽤来登录ftp服务器⽤的。

这样⼀个⽤户建完,可以⽤这个登录,记得⽤普通登录不要⽤匿名了。

登录后默认的路径为 /home/ftpuser.----------------------------------------------------------------------------------------------------------------------------------设置FTP⽤户的账号,例如账号为“ftpuser1”,⽬录为/home/ftpuser1,且设置不允许通过ssh登录。

Linux下用vsftpd构建FTP服务器Ftp服务器 电脑资料

Linux下用vsftpd构建FTP服务器Ftp服务器 电脑资料

Linux下用vsftpd构建FTP效劳器Ftp效劳器电脑资料在Linux下如何使用vsftpd构建FTP效劳器,构建后的FTP效劳器有哪些特点?本文将作详细介绍,vsftpd 是“very secure FTP daemon”的缩写,平安性是它的一个最大的特点。

vsftpd 是一个 UNIX 类操作系统上运行的效劳器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全的、开发源代码的ftp效劳器软件,支持很多其他的 FTP 效劳器所不支持的特征。

比方:非常高的平安性需求、带宽限制、良好的可伸缩性、可创立虚拟用户、支持IPv6、速率高等。

本文以RedHat Linux 9.0为例介绍一下如何安装和配置vsftpd效劳器。

安装效劳器程序程序下载地址:ftp://vsftpd.beasts/users/cevans/1.安装之前的准备:安装之前我们应该看看用户“nobody”和目录“/usr/share/empty”是否存在,如果不存在需要新建这个用户和目录。

[root@localhost root]# mkdir /usr/share/empty如果要允许匿名访问,还需要创立ftp用户,并将其主目录设置为/var/ftp。

在RedHat Linux 9.0中这些都已默认设置好了,只需要创立一个/var/ftp目录即可。

为了平安,目录“/var/ftp”不应该属于用户“ftp”,也不应该有写权限。

在此,我们做如下设置:[root@localhost root]# chmod 755 /var/ftp2.开始安装:以员身份Linux系统,将vsftpd-2.0.3.tar.gz复制到/root目录下。

[root@localhost vsftpd-2.0.3]# make install3.安装后续工作由于采用源代码方式安装,很多必要的配置文件没有复制到系统中,需要手动复制。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

嵌入式FTP服务器(vsftpd)移植手册
FTP软件版本:
vsftpd-2.1.2
交叉编译器版本:
arm-linux-gcc 4.1.2
操作系统平台:
Linux -- Red Hat 9.0
开发板平台:
Arm -- TX2440A
vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序,特点是小巧轻快,安全易用。

它还可以移植到嵌入式Linux中,我们可以把开发板当作一个FTP服务器。

一> 编译vsftpd程序
1.获得源码包:vsftpd-
2.1.2.tar.gz(位置:光盘资料/源码包/其他软件源码)
2.解压,进入源码目录:
#tar xzvf vsftpd-2.1.2.tar.gz
#cd vsftpd-2.1.2
3.修改Makefile,指定交叉编译器:
CC = arm-linux-gcc
4.#make
编译时会出现错误,跟libcap.so有关
修改vsf_findlibs.sh:
45-53行注释掉:
# 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";
#fi
#make
生成vsftpd可执行程序,放到根文件系统/usr/sbin目录下
二> 修改配置文件vsftpd.conf
需要用到哪一项,就把这一项前面的注释‘#’去掉,这里给出我的配置: anonymous_enable=YES
no_anon_password=YES
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_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
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to blah FTP service.
ls_recurse_enable=YES
listen=YES
listen_port=21
把修改后的vsftpd.conf文件放到根文件系统的/etc/vsftpd目录下,否则运行里会出错:500 OOPS vsftpd: cannot open config
三> 创建必要的帐号、目录
1.建立FTP目录:
# mkdir -p /var/ftp/pub
因为ftp目录不能开启所有权限,所以建一个pub目录加上所有权限,用来传输
文件
# mkdir -p /usr/share/empty
程序运行所用到的目录
2.改变目录权限
# chown root:root /var/ftp
# chmod 755 /var/ftp
# cd /var/ftp
# chmod 777 pub
3.添加帐号(如果系统中有,就不用添加)
# useradd nobody
# useradd -d /var/ftp ftp
四> 在开发板上运行vsftpd
把制作好的文件系统下载到开发板上,在后台运行程序:
chown root:root vsftps.conf 修改vsftpd.conf的拥有者。

# vsftpd /etc/vsftpd/vsftpd.conf&
也可以把它写入启动脚本,vsftpd后面的参数就是要使用的配置文件
程序运行后可能出会现错误:
500 OOPS: could not bind listening IPv4 socket
解决方法:
1. 复制vsftpd源码目录下的xinetd.d文件夹到文件系统/etc目录下,里面有
一个文件vsftpd,修改其内容:disable = yes。

2. 可能是已经启动了vsftpd,端口已被占用,再次启动vsftpd就会报错,可
以先杀死vsftpd进程,再启动。

五> 使用FTP软件
1. 先安装软件:freshftp-v5.22(位置:光盘资料/Windows平台工具/)
2. 连接好电脑和开发板之间的网线,打开freshftp
3. 在Address中输入开发板的IP地址:192.168.1.10,端口号:21,点击Connect,连接到开发板(如图1),成功连接后的状态(如图2)。

4. 左边是本地计算机的资源,右边是FTP服务器的资源。

如果要上传文件到FTP,先在本地资源中选择要上传的文件,然后点击向右的箭头,就完成了上传功能。

(如图3),上传文件后,就会在pub目录下显示上传的文件(如图4)。

如果是从FTP上下载文件,先在FTP的目录下选择要下载的文件,然后点击向左的箭头,就完成了下载功能。

·
图1
状态信息
图2
FTP的目录选择上传的文件
图3
上传
下载
图4 在开发板上查看pub目录:
图5。

相关文档
最新文档