• 搭建过程

    1. 安装 vsftp 服务(yum 安装即可)
    2. 配置/etc/vsftpd/vsftpd.conf
      1.  
      2. anonymous_enable=NO #禁止匿名登录
      3. local_enable=YES #允许本地用户登录,注意虚拟用户也是映射本地用户登录的
      4. chroot_local_user=YES #是否将用户禁锢在主目录,一般配合 chroot_list_file和 chroot_list_enable 一起使用。
      5. local_root=/var/ftp #本地用户 ftp 根目录
      6. local_umask=022 #ftp 本地用户创建文件的权限掩码)
      7. xferlog_enable=YES #开启日志记录)
      8. xferlog_std_format=YES #使用标准 ftp 日志格式
      9. pasv_enable=YES #(开启被动模式)
      10. pasv_addr_resolve=YES
      11. pasv_address=58.251.160.178
      12. #以上两行支持被动模式 iptables 的 nat 端口映射,欺骗客户端 ftp 服务器地址为 nat 转换后的地址
      13. #只需在连接外网时使用
      14. pasv_min_port=10001
      15. pasv_max_port=10010
      16. #被动模式端口范围
      17. listen=YES
      18. pam_service_name=vsftpd_login #指定 Vsftpd 的 pam 验证配置文件名
      19. user_config_dir=/etc/vsftpd/users_config #指定虚拟用户配置文件路径
      20. guest_enable=YES #启用虚拟用户
      21. guest_username=vftp #指定虚拟用户本地宿主用户
      22.  
    3. 新建虚拟用户本地宿主用户
      1.  
      2. useradd vftp –d /home/vsftp –s /sbin/nologin #宿主用户不用登陆系统的权限
    4. 虚拟用户名单
      1. 先建立虚拟用户名单文件 vi /etc/vsftpd/vsftpdlogin
      2. 添加用户(可编辑多个虚拟用户,奇数行账号,偶数行密码)
        1.  
        2. xdataftp
        3. xdataftp
        4. xbusftp
        5. xbusftp
        6.  
    5. 生成口令库文件,注意修改文件权限为 600

db_load -T -t hash -f /etc/vsftpd/vsftpdlogin /etc/vsftpd/vsftpdlogin.db chmod 600 /etc/vsftpd/vsftpdlogin.db

      • 注意:如果 db_load 命令不可用,需要安装 db4-utils 软件包。
    1. 新建虚拟用户 pam 验证文件,是在 vsftpd.conf 中所需指定的验证文件
      • 编辑/etc/pam.d/ vsftpd_login(db 文件时上面生成的 vsftpdlogin.db)

        1.  
        2. auth required pam_userdb.so db=/etc/vsftpd/vsftpdlogin
        3. account required pam_userdb.so db=/etc/vsftpd/vsftpdlogin
        4.  
    2. 建立虚拟用户配置文件
      1. mkdir /etc/vsftpd/users_config #这个为vsftpd.conf中user_config_dir指定的
      2. 编辑/etc/vsftpd/users_config/xdataftp
        1.  
        2. local_root=/data/ftp/xdataftp (指定此虚拟用户的根目录)
        3. write_enable=YES #本地权限 可注释
        4. download_enable=YES #本地权限 可注释
        5. anon_world_readable_only=NO
        6. anon_upload_enable=YES
        7. anon_mkdir_write_enable=YES
        8. anon_other_write_enable=YES
        9.  
      3. 注意:以上是开放此虚拟用户所有权限。包括读、写、删除、更改、替换。可以根据相应的需求更改。
    3. 重启服务 service vsftpd restart
    4. 安装flashFTP客户端登录验证
    5. 注意:
      1. 配置文件不能有多余空格,否则会导致 ftp 登录或者数据传输失败。
      2. 如果 ftp 服务器本地有防火墙,需要开放 21、20 和被动模式指定的 10001—10010 端口,并关闭机器 selinux。
      3. iptables 的 nat 端口映射,让外网客户端访问内网 ftp 服务
        1.  
        2. -A PREROUTING -d 58.251.160.178/32 -p tcp -m tcp --dport 40021 -j DNAT --todestination 172.16.100.4:21
        3. -A PREROUTING -d 58.251.160.178/32 -p tcp -m tcp --dport 10001:10010 -j DNAT --to-destination 172.16.100.4
        4.  
      4. autofs卸载后需要reboot

ftp服务器端的安装及配置的更多相关文章

  1. FTP服务器的安装和配置

    FTP服务器的安装和配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本来是想出一个源码安装ftp的教程,但是想想还是算了,如果你自学python有个10天的话你自己就能写一个f ...

  2. SVN服务器端的安装和配置

    第2章 SVN 的下载与安装 服务器端的安装和配置 所有的开发人员用自己的账号登录进来就可以拥有对仓库里面的所有文件的读和写的权限 创建用户

  3. ubuntu16.04下ftp服务器的安装与配置

    由于要将本地程序上传至云服务器中,所以需要给云服务器端安装ftp服务器.记录一下ftp的安装过程,以便以后使用.服务器端所用系统为Ubuntu16.04. 1. 安装ftp服务器, apt-get i ...

  4. Linux环境下SVN服务器端的安装与配置

    最近尝试了下在Linux(CentOS6.5)环境下安装与配置SVN服务器端,安装过程中碰到了一些问题,参看了网友们分享的一些心得,并通过自己实际的操作,最终安装与配置成功!总的来说网上的说法芸芸,大 ...

  5. linux系统下FTP服务器的安装和配置

    FTP是File Transfer Protocol(文件传输协议),就是专门用来传输文件的协议.简单地说,支持FTP协议的服务器就是FTP服务器. PORT模式: 首先客户端开启一个非特权端口N(大 ...

  6. FTP服务器的安装与配置

    查看是否安装ftp: rpm -qa |grep vsftpd 1.安装vsftp 1.1.安装vsftp,测试安装的vsftpd的版本是:vsftpd.x86_64 0:3.0.2-11.el7_2 ...

  7. 阿里云Centos 7 FTP(vsftp)服务安装及配置

    #检查vsftpd是否安装 rpm -qa | grep vsftpd #检查vsftpd版本并安装 yum list vsftpd yum install vsftpd #设置开机启动 system ...

  8. Linux学习总结(21)——CentOS7环境下FTP服务器的安装和配置

    1. 安装vsftpd #安装vsftpd yum install -y vsftpd #设置开机启动 systemctl enable vsftpd.service # 重启 service vsf ...

  9. [转] Linux学习之CentOS(三十六)--FTP服务原理及vsfptd的安装、配置

    本篇随笔将讲解FTP服务的原理以及vsfptd这个最常用的FTP服务程序的安装与配置... 一.FTP服务原理 FTP(File Transfer Protocol)是一个非常古老并且应用十分广泛的文 ...

随机推荐

  1. hdu 4467 Graph

    P. T. Tigris is a student currently studying graph theory. One day, when he was studying hard, GS ap ...

  2. MFC控件(9):network address control

    这个控件的名字倒是取的不错,一看就知道是让你输入IP地址或host name的. 不过一打开看到那控件的样子就完全是个Edit control.不过该控件对应的类也确实是继承自类CEdit. 先拖个控 ...

  3. C#的FTP上传下载的实验

    前段时间做了一个FTP操作服务器文件的实验,现在把一些经验写下来,免得忘记. 1.上传的处理:目标文件夹A上传到服务器指定目录.先检索服务器目录中有无同名文件夹,若有,则先改名,上传成功后再删除,上传 ...

  4. maven pom.xml详细介绍,必须留一份

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  5. FunDA(3)- 流动数据行操作:FDAPipeLine operations using scalaz-stream-fs2

    在上节讨论里我们介绍了数据行流式操作的设想,主要目的是把后台数据库的数据载入前端内存再拆分为强类型的数据行,这样我们可以对每行数据进行使用和处理.形象点描述就是对内存里的一个数据流(data-stre ...

  6. 使用div模拟textarea,实现文本输入框高度自适应(附:js控制textarea实现文本输入框高度自适应)

    一.使用textarea标签进行多行文本的输入有很多限制,比如不能实现高度自适应,会出现难看的滚动条等问题. HTML5中添加了一个新属性contenteditable,该属性可以让input,tex ...

  7. floor()函数 向下取整 ceil()函数向上取整

    floor(x)  is the largest integer not greater than x , 也就是,floor(x) 返回的是小于等于x的所有整数中最大的整数,简单的说,就是去掉x的小 ...

  8. D3.js:完整的柱形图

    一个完整的柱形图包含三部分:矩形.文字.坐标轴.本章将对前几章的内容进行综合的运用,制作一个实用的柱形图,内容包括:选择集.数据绑定.比例尺.坐标轴等内容. (1) 添加SVG画布 //画布大小 va ...

  9. H5自带表单验证

    HTML5自带的表单验证 转载:https://www.web-tinker.com/article/20781.html HTML5对表单元素提供了patern属性,它接受一个正则表达式.表单提交时 ...

  10. windows Git安装

    git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目 一.Git下载 官网地址:https://git-scm.com/download/win,选择相应的版本即可 二.安 ...