• 主程序:/usr/sbin/vsftpd
      • 主配置文件:/etc/vsftpd/vsftpd.conf
      • CentOS 6 
        • /etc/rc.d/init.d/vsftpd
        • chkconfig vsftpd on
      • CentOS 7 
        • /usr/lib/systemd/system/vsftpd.service
        • systemctl enable vsftpd.service
    • 配置过程详解 
      • /etc/vsftpd/vsftpd.conf可以使用man vsftpd.conf查看指令的定义
      • 匿名用户 
        • anonymous_enable=yes 是否允许匿名用户登入
        • anon_upload_enable=yes 是否允许匿名用户上传文件, 同时需要开启write_enable=yes
        • write_enable=yes 如果匿名用户要上传,必须是write_enable=YES,这是一个全局配置
        • anon_mkdir_write_enable=yes 使得匿名用户能够在有目录中有写权限的基础上能够创建目录
        • anon_other_write_enable=yes 匿名用户的删除和重命名权限
      • 本地用户 
        • local_enable=yes 开放本地用户登入,并且所有的非匿名用户登入必须开启这个指令才能登入
        • local_umake=022 指定本地用户上传权限的掩码
        • dirmessage_enable=YES 用户第一次进入目录时,.massage文件里面的信息会显示给用户,可以使用message_file指定文件的路径,而不使用默认的.message,但是lftp程序无法看到消息提示,ftp程序可以
      • 数据传输日志的相关日志 
        • xferlog_enable=YES
        • xferlog_std_format
        • xferlog_file=/var/log/vsftpd.log 指定访问日志的存放路径
      • 数据传输模式 
        • connect_from_port_20:是否启用被动模式
      • 修改匿名用户上传文件的属主 
        • chown_uploads:是否修改
        • chown_username:启用chown_uploads指令时,将文件属主修改为此命令指定的用户,默认为root
        • chown_upload_mode:匿名用户上传文件完成后文件的权限默认为600
      • 设定会话的超时时长 
        • idle_session_timeout :空闲会话的超时时长,默认是300秒
        • connect_timeout:服务器连接客户端的超时时长
        • data_connection_timeout:数据传输的超时时长
      • 命令连接的监听端口 
        • listen_port :默认是21
      • 当匿名用户连接到ftp服务端是否显示banner信息,只有ftp客户端可以,lftp不行 
        • ftpd_banner=Welcome to blah FTP service.
      • 设置连接及传输速率 
        • local_max_rate:本地用户的传输速率,默认是0,表示无限制
        • max_clients:最大并发连接数,最多允许多少个客户端连接
        • max_per_ip:每个IP允许的最大连接数
        • anno_max_rate:本地用户的传输速率,默认是0,表示无限制
      • 禁锢本地用户 
        • chroot_local_user=YES:禁锢所有本地的用户,将用户锁定在其家目录下

          • 注意:要求用户不能够对家目录有写权限,如果具有写权限的话,那么本地用户登入ftp的时候就会连接拒绝了(禁锢所有的本地用户和禁锢白名单不能同时开启)
        • chroot_list_enable=yes : 是否开启禁锢的白名单
        • chroot_list_file=/etc/vsftpd/chroot_list:如果写在这个文件里面的本地用户都会被禁锢,而没有在这个文件里面的本地用户不会被禁锢
      • /etc/vsftpd/ftpusers:指定哪些本地用户无法登入 
        • 是本地用户的黑名单,如果在这个名单里面的用户无法登入
      • userlist_enable :是否开启本地用户登入认证 
        • 如果userlist_enable=YES,vsftpd将加载一个由userlist_file指定的用户列表文件,此文件中的用户是否能够访问vsftpd服务取决于userlist_deny这个指令,且用户写在/etc/vsftpd/user_list文件中

          • 如果userlist_deny=yes,表示此列表为黑名单,表示列表中的用户不能登入
          • 如果userlist_deny=no,表示此列表为白名单, 表示只有列表中的本地用户才能登入

vsftpd:非常安全的ftp服务端程序的更多相关文章

  1. FTP服务端 FTP服务端搭建教程

    FTP服务端搭建教程如下:一.需要准备以下工具:1.微型FTP服务端.2.服务器管理工具二.操作步骤:1.下载微型FTP服务端.(站长工具包可下载:http://zzgjb.iis7.com/ )2. ...

  2. FTP服务端部署

    FTP服务端搭建(本地用户登入:使用本地用户和密码登入)1.文件配置:vsftpd.conf: 主配置文件ftpusers: 指定哪些用户不能访问FTP服务器user_list: 指定的用户是否可以访 ...

  3. ftpget 从Windows FTP服务端获取文件

    /********************************************************************************* * ftpget 从Windows ...

  4. Android版Ftp服务端软件

    分享一款开发的Android版Ftp服务端软件,支持Android4.0及以上版本,可以实现局域网无线传输文件到手机,或者把手机上的多媒体文件分享到iPad等设备来扩展这些设备的存储空间,详情请见软件 ...

  5. websocketj--随时随地在Web浏览器中操作你的服务端程序

    0 - 有没有觉得Linux标准终端界面输入输出枯燥无味? 1 - 什么?vmstat命令的输出数据不直观?有没有想过能够可视化该命令的输出? 2 - 尝试过用浏览器操作Windows中的cmd吗? ...

  6. 03-案例——多任务版TCP服务端程序开发

    案例——多任务版TCP服务端程序开发   1. 需求     目前我们开发的TCP服务端程序只能服务于一个客户端,如何开发一个多任务版的TCP服务端程序能够服务于多个客户端呢?完成多任务,可以使用线程 ...

  7. node.js服务端程序在Linux上持久运行

    如果要想在服务端部署node.js程序,让其持久化运行,就不能单单使用npm start命令运行,当然了,这样运行是毫无问题的,但是当关闭xshell窗口或者是关闭进程的时候(其实关闭xshell窗口 ...

  8. zabbix3.0.4关于java服务端程序内存溢出的处理

    关于java服务端程序内存溢出的处理 java服务端程序内存溢出会产生jvm.log文件,此时程序会挂掉,无法正常处理业务,需要重启服务 思路: 当存在jvm.log这个文件的时候则触发clean_j ...

  9. 第一个socket服务端程序

    第一个socket服务端程序 #include <stdio.h> #include <stdlib.h> #include <string.h> #include ...

随机推荐

  1. Hadoop源码学习笔记之NameNode启动场景流程四:rpc server初始化及启动

    老规矩,还是分三步走,分别为源码调用分析.伪代码核心梳理.调用关系图解. 一.源码调用分析 根据上篇的梳理,直接从initialize()方法着手.源码如下,部分代码的功能以及说明,已经在注释阐述了. ...

  2. 大数据学习--day15(常用类:Date--DateFormat--SimpleDateFormat--File--包装类)

    常用类:Date--DateFormat--SimpleDateFormat--File--包装类 这些常用类就不像字符串挖那么深了,只列列用法. 时间处理: /** * 时间处理类 * DateFo ...

  3. PTA(BasicLevel)-1006换个格式输出整数

      一  换格式输出整数 用字母 B 来表示“百”.字母 S 表示“十”,用 12...n 来表示不为零的个位数字 n(<10),换个格式来输出任一个不超过 3 位的正整数.例如 234 应该被 ...

  4. 【8086汇编-Day1】预备知识

    菜鸟的8086汇编入门之旅,偶有错处恭请大佬们指正. Ⅰ· 闲说一下 我为什么学汇编?相对于晦涩难懂的01010101011010机器语言(高低电平变化驱动机器做出不同反应),汇编语言用更便于记忆和使 ...

  5. ruby学习笔记(3)- 新手入门

    这里是一个Ruby开发的快速参考指南: Ruby是什么 ? Ruby是一种纯粹的面向对象编程语言.它由日本松本幸创建于1993年. Ruby是一种通用的解释编程语言如Perl和Python. IRb是 ...

  6. c#字符串加载wpf控件模板代码 - 简书

    原文:c#字符串加载wpf控件模板代码 - 简书 ResourceManager resManagerA = new ResourceManager("cn.qssq666.Properti ...

  7. day2 Ubuntu配置源

    1.寻找国内镜像源 https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/ 2.配置source  list源 sources.list系统自带的,源是来U ...

  8. Mac OS 上 VIM 8.0 安装体验

    VIM 8.0 赶在中秋前发布 The best way to install Vim on Unix is to use the sources. This requires a compiler ...

  9. 译图智讯VIN码识别助力汽配商转型升级

    汽配猫是上海佳驰经合能源科技有限公司自主开发的汽车配件B2B网上商城及服务平台,该平台依托互联网云技术.利用创新的商业模式及互联网思维,整合汽配产业链优秀资源,为汽车维修保养企业等产业链各方面提供汽配 ...

  10. VMWARE网络配置内网与外网互ping

    新增网络适配器 设置自定义VMnet0 自动桥接 NAT的网络要配置网关 我们在CentOS中打开ifcfg-ens33文件(每个系统文件名都不同,但都是以ifcfg-ens33开头的文件),进行修改 ...