.vsftpd说明

  LINUX下实现FTP服务的软件很多,最常见的有vsftpd,Wu-ftpd和Proftp等.Red Hat Enterprise Linux中默认安装的是vsftpd.

访问FTP服务器时需要经过验证,只有经过了FTP服务器的相关验证,用户才能访问和传输文件.vsftpd提供了3种ftp登录形式:

1anonymous(匿名帐号)

  使用anonymous是应用广泛的一种FTP服务器.如果用户在FTP服务器上没有帐号,那么用户可以以anonymous为用户名,以自己的电子邮件地址为密码进行登录.当匿名用户登录FTP服务器后,其登录目录为匿名FTP服务器的根目录/var/ftp.为了减轻FTP服务器的负载,一般情况下,应关闭匿名帐号的上传功能.

  2real(真实帐号)

  real也称为本地帐号,就是以真实的用户名和密码进行登录,但前提条件是用户在FTP服务器上拥有自己的帐号.用真实帐号登录后,其登录的目录为用户自己的目录,该目录在系统建立帐号时系统就自动创建.

 3guest(虚拟帐号)

  如果用户在FTP服务器上拥有帐号,但此帐号只能用于文件传输服务,那么该帐号就是guest,guest是真实帐号的一种形式,它们的不同之处在于,geust登录FTP服务器后,不能访问除宿主目录以外的内容.

二、安装和使用

1、安装ftp服务器工具

环境是centos6.0,安装的“vsftpd-2.2.2-6.el6.x86_64.rpm”

2、开启vsftp server服务,检查ftp端口是否打开

/etc/init.d/vsftpd start

netstat -lpnt | grep vsftpd,可以看到使用21端口进行通信。

3、安装ftp客户端工具

环境是windows xp,安装了FlashFXP。

4、使用下载功能

在linux端,touch /var/ftp/pub/file_linux;

使用FlashFXP,登陆服务器端,使用匿名用户访问,默认访问目录/var/ftp/pub,可以看到file_linux,并且可以下载到windows客户端上。

5、使用上传功能

通过windows客户端尝试上传文件到linux的/var/ftp/pub目录下,FlashFXP工具报出失败信息“553 could not create file”。

  • 修改/etc/vsftpd/vsftpd.conf:

    write_enable=YES

    anon_mkdir_write_enable=YES

    anon_other_write_enable=YES

  更多配置文件参数说明见http://www.cnblogs.com/hnrainll/archive/2011/02/16/1956538.html

  • 禁用Selinux:

    getsebool命令可以查看当前Selinux是否禁止。如果未禁用,网上有很多说明如何禁用。

  • 检查目录权限:

    ll /var/ftp

    drwxr-xr-x. 3 root root 4096 Jun  3 14:51 pub

    说明此目录当前属主是root,所以匿名访问的用户只具有读和执行权限,没有写权限。

有两种方式可以解决:

    A:设置pub目录为777的权限,chmod -R 777 pub

    B:在pub目录下创建子目录,设置子目录属主为ftp用户。

      先检查系统是否有ftp用户,一般默认会创建。

      cat /etc/passwd | grep ftp

      ftp:x:107:65534::/home/ftp:/bin/false

      mkdir  /var/ftp/pub/upload

      chown ftp:root  /var/ftp/pub/upload

6、修改默认根目录。

vsftpd服务使用匿名用户登录时,默认根目录为/var/ftp/pub,添加用户后登录的默认根目录可能是其家目录(未试过)。若需要设置为/mnt/vg,可加入如下:

    anon_root=/var/www/html   #针对匿名用户

  ====以下针对其它ftp用户,未试过==========

    local_root=/var/www/html

    chroot_local_user=YES

    注解:(修改FTP目录后也要修改FTP账户权限目录 否则会出现无权限错误提示)

7、与smb共享数据

  smb匿名用户为nobody,因此smb目录,ftp用户无法写入数据。

  解决方法

  • 将ftp加入了nobody组,设置该组权限为rwx
  • 将smb导出目录设置为777 

8、更多使用例子

  http://www.cnblogs.com/hnrainll/archive/2011/02/16/1956536.html

Linux FTP服务器搭建与使用的更多相关文章

  1. linux ftp服务器搭建

    作为服务器的机器IP:192.168.124.129  主机名:Centos 操作系统:CentOS 5.5 需求:匿名用户可以下载公共目录里边内容,本地用户登录有rwx权限 软件安装 1.  准备测 ...

  2. 《Linux下FTP服务器搭建及FTP使用》

    .LOGAndy:mxtd114 <Linux下FTP服务器搭建> 0.root登录 1.安装ftp # yum -y install ftp 2.安装vsftpd # yum -y in ...

  3. Linux CentOS 6.5 下 vsftpd ftp服务器搭建

    Linux CentOS 6.5 下 vsftpd ftp服务器搭建 by:授客 QQ:1033553122   操作系统环境:CentOS 6.5-x86_64 下载地址:http://www.ce ...

  4. Linux之匿名FTP服务器搭建

    FTP(File Transfer Protocol)是在服务器与客户端进行文件传输的一种传输协议.本次介绍的是vsftpd的软件体验ftp服务. FTP服务器默认情况下依据用户登录情况分为三种不同的 ...

  5. Linux 之 FTP服务器搭建

    FTP服务器搭建 参考教程:[千峰教育] 1.关闭防火墙: service iptables stop 2.关闭Selinux setenforce 0 3.安装所需要依赖及编译工具 yum inst ...

  6. Linux中ftp服务器搭建

    一.FTP工作原理 (1)FTP使用端口 [root@localhost ~]# cat /etc/services | grep ftp ftp-data 20/tcp #数据链路:端口20 ftp ...

  7. FTP-Linux中ftp服务器搭建

    一.FTP工作原理 (1)FTP使用端口 [root@localhost ~]# cat /etc/services | grep ftp ftp-data 20/tcp #数据链路:端口20 ftp ...

  8. centos7 配置ftp服务器搭建(匿名访问,以及本地登录)

    大家好,今天来给大家分享一个基于centos 7的ftp服务器搭建 实现功能:匿名访问,本地登录 查看系统版本: [root@localhost ~]# cat /etc/redhat-release ...

  9. 记一次ftp服务器搭建走过的坑

    记一次ftp服务器搭建走过的坑 1.安装 ①下载 wget https://security.appspot.com/downloads/vsftpd-3.0.3.tar.gz #要FQ ②解压 ta ...

随机推荐

  1. dedecms列表页如何让文章列表里面的文章每隔五篇就隔开一段空间

    dedecms列表页如何让文章列表里面的文章每隔五篇就隔开一段空间,运用js控制列表样式的方法. 代码如下: <script type="text/javascript"&g ...

  2. JAVASE 打印输出--------01

    public class Demo01 { public String a1; public int a2; public Demo01(String a, int i) { a1 = a; a2 = ...

  3. [ActionScript 3.0] AS3.0 给flash事件传递参数的方法

    有时我们想要给flash内置的事件(比如MouseEvent)传递参数,这时我们可以用到下面的方法. import flash.events.MouseEvent; mc.addEventListen ...

  4. POJ - 1159 Palindrome(dp-回文变形)

    d.求对字符串最少添加几个字符可变为回文串. s. 法1:直接对它和它的逆序串求最长公共子序列长度len.N-len即为所求.(N为串长度) 因为,要求最少添加几个字符,我们可以先从原串中找到一个最长 ...

  5. 1738 - TWO NODES

    1738 - TWO NODES 时间限制: 10000 MS 内存限制: 65535 KB 问题描述 Suppose that G is an undirected graph, and the v ...

  6. xUtils框架介绍(三)

    接上回,继续介绍xUtils的最后两个模块:DbUtils和HttpUtils.首先先介绍第一个SQLite数据库操纵的简单ORM框架,只要能理解xUtils为我们提供的api,相信你也能熟练的把Db ...

  7. 利用Meida Service的Java SDK来调用Azure Media Services的Index V2实现视频字幕自动识别

    Azure Media Services新的Index V2 支持自动将视频文件中的语音自动识别成字幕文件WebVtt,非常方便的就可以跟Azure Media Player集成,将一个原来没字幕的视 ...

  8. 慕课网-安卓工程师初养成-2-5 如何命名Java变量

    来源:http://www.imooc.com/code/1221 如同酒店会给每个房间起个性化的名字一样,程序中的变量也需要用合理的名字进行管理---变量名! 需要注意,给酒店房间起名字时可以是数字 ...

  9. SQL基本语句(3) LOAD DATA INFILE

    使用LOAD语句批量录入数据 语法: LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name' [REPLACE | IGNOR ...

  10. css各兼容应该注意的问题

    1.div布局在ie浏览器和chrome浏览器,firefox浏览器不同,不如在div里面嵌套3个div,分别左中右,左边div的pading和margin在ie8以上都是几乎相同,ie8以下做内边距 ...