.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. Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义(转载)

    From:http://dadekey.blog.51cto.com/107327/119938 我们先写一个简单的脚本,执行以后再解释各个变量的意义   # touch variable # vi ...

  2. 怎么查询局域网内全部电脑IP和mac地址等信息?

    在局域网内查询在线主机的IP一般比较简单,但局域网内全部电脑的IP怎么才能够查到呢?查询到IP后我还要知道对方的一些详细信息(如MAC地址.电脑名称等)该怎么查询呢??? 工具/原料 Windows ...

  3. Export excel file using web API

    使用MVC controller输出excel的例子,自不待言,例子满天飞. 由于本项目使用的是Asp.net MVC API,因此在本项目使用API,实现了文件下载功能.代码的原理很简单,基本上是老 ...

  4. Maven项目中,编译proto文件成Java类

    新建Maven项目 新建一个 Maven 项目: pom定义了最小的maven2元素,即:groupId,artifactId,version. groupId:项目或者组织的唯一标志,并且配置时生成 ...

  5. .net中三种数据类型转换区别((int),Int32.Parse() 和 Convert.toInt32() )

    (typename)valuename,是通用方法: Convert类提供了灵活的类型转换封装: Parse方法,适用于向数字类型的转换. 例如,(int),Int32.Parse() 和 Conve ...

  6. 常用自动化测试工具介绍(支持B/S、C/S)

    一.功能测试工具1.QTP测试工具 全名HP QuickTest Professional software ,最新的版本为HP QuickTest Professional 11.0 QTP是qui ...

  7. java左移右移运算符

    http://blog.csdn.net/dandanteng/article/details/7433531 首先要明白一点,这里面所有的操作都是针对存储在计算机中中二进制的操作,那么就要知道,正数 ...

  8. Sqool与kettle开源的ETL工具

    现在的ETL都是基于管道的模式(数据流)运行,比较有名的有 TaskCTL ========================================== 数据抽取的开源工具 一个是RDBMS ...

  9. struts2常用的常量constant

    常用的常量配置  struts.serve.static.browserCache 该属性设置浏览器是否缓存静态内容.当应用处于开发阶段时,我们希望每次请求都获得服务器的最新响应,则可设置该属性为fa ...

  10. MySQL的循环语句使用总结

    REPEAT-UNTIL循环 [loopname]:REPEAT commands; UNTIL condition END REPEAT [loopname]; 在这种循环里,关键字repeat和u ...