一、安装
    1. 查看是否安装vsftpd
        rpm -qa | grep vsftpd
    2. 安装 
        yum -y install vsftpd
    3. 设置开机启用
        ckconfig vsftpd on
 
二、配置vsftpd
    打开vsftpd配置文件
    # vi /etc/vsftpd/vftpd.conf
 
    #设定不允许匿名访问 
    anonymous_enable=NO
    #设定本地用户可以访问。注:如使用虚拟宿主用户,在该项目设定为NO的情况下所有虚拟用户将无法访问
    local_enable=YES
    write_enable=YES
    local_umask=022
    dirmessage_enable=YES
    #记录上传下载文件的日志
    xferlog_enable=YES
    connect_from_port_20=YES
    chown_uploads=YES
    chown_username=ftp
    #日志记录文件位置
    xferlog_file=/var/log/vsftpd.log
    #格式化日志
    xferlog_std_format=YES
    #设定支持ASCII模式的上传和下载功能
    ascii_upload_enable=YES
    ascii_download_enable=YES
 
    //使用户不能离开主目录 
    chroot_list_enable=YES
    #chroot_list_file=/etc/vsftpd/chroot_list 
 
    ls_recurse_enable=YES
    #监听IPv4 sockets
    listen=YES
    #注释IPv6 sockets监听
    #listen_ipv6=YES
 
    #PAM认证文件名。PAM将根据/etc/pam.d/vsftpd进行认证 //已下三个请在配置文件中手动添加 
    pam_service_name=vsftpd 
 
    userlist_enable=YES
    userlist_deny=YES
    #/etc/vsftpd/user_list中的用户禁止登录ftp
    #如果只配置userlist_enable=YES,有可能出现错误 “530 Permission denied”,因此加上如下配置
    userlist_file=/etc/vsftpd/user_list
    tcp_wrappers=YES
 
    #设定启用虚拟用户功能 
    guest_enable=YES 
    //指定虚拟用户的宿主用户,CentOS中已经有内置的ftp用户了 
    guest_username=ftp 
    #设定虚拟用户个人vsftp的CentOS FTP服务文件存放路径。存放虚拟用户个性的CentOS FTP服务文件(配置文件名=虚拟用户名)
    user_config_dir=/etc/vsftpd/vuser_conf 
 
    pasv_min_port=61001        (被动模式开放端口)
    pasv_max_port=62000
 
    #文件上传下载权限设置
    allow_writeable_chroot=YES
    anon_umask=022
    file_open_mode=777
 
    #虚拟用户和本地用户有相同的权限
    virtual_use_local_privs=YES
 
 
三、创建chroot list,将vftpd.conf配置文件中的guest_username加入其中:
    # touch /etc/vsftpd/chroot_list
    # echo ftp >> /etc/vsftpd/chroot_list
 
四、创建用户密码文件
    # touch /etc/vsftpd/vuser_passwd.txt
    ##注意奇行是用户名,偶行是密码
    test
    111222
 
五、生成虚拟用户认证的db文件
    如果没有db4需要先进行安装。安装Berkeley DB工具:
    # yum install db4 db4-utils
    生成虚拟用户认证的db文件:
    # db_load -T -t hash -f /etc/vsftpd/vuser_passwd.txt /etc/vsftpd/vuser_passwd.db
 
六、编辑认证文件:
    # vi /etc/pam.d/vsftpd
 
    全部注释掉原来语句再增加以下两句:
    ##查看系统版本号    
    # getconf LONG_BIT
    #系统为32位的
    auth required pam_userdb.so db=/etc/vsftpd/vuser_passwd
    account required pam_userdb.so db=/etc/vsftpd/vuser_passwd
    #系统为64位的
    auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd
    account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd
 
 
七、创建虚拟用户配置文件
    # mkdir /etc/vsftpd/vuser_conf/
    #文件名等于vuser_passwd.txt里面的账户名,否则下面设置无效
    # vi /etc/vsftpd/vuser_conf/test
    ##内容如下:
    #虚拟用户根目录,根据实际情况修改(如果没有需要创建)。该目录必须要有读写权限 chmod -R 777 目录。
    local_root=/var/ftp/upload
    #可写 
    write_enable=YES
    #掩码 
    anon_umask=022
    anon_world_readable_only=NO 
    anon_upload_enable=YES 
    anon_mkdir_write_enable=YES
    anon_other_write_enable=YES
 
八、设置防火墙
    打开防火墙设置:
    # vi /etc/sysconfig/iptables
    注释其他,新加如下
    # -A INPUT –m state --state NEW –m tcp –p tcp –dport 22 –j ACCEPT
    # -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
    # -A INPUT -m state --state NEW -m tcp -p tcp --dport 10060:10090 -j ACCEPT     (被动模式开放端口)
    然后保存,并关闭该文件,在终端内运行下面的命令,刷新防火墙配置:
    # systemctl restart firewalld.service

转载于:https://www.cnblogs.com/caibaofei/p/9149366.html

搭建vsftpd文件服务器并创建虚拟用户的更多相关文章

  1. vsftpd 创建虚拟用户

    1.添加一个宿主用户:useradd vsftpd -s /sbin/nologin2.安装db4-utils,通过本底数据文件实现虚拟用户访问yum install db4-utils3.创建ftp ...

  2. Linux文件服务器实战(虚拟用户)

    vsftpd基于系统用户访问ftp服务器,系统用户越多越不利于管理,不利于系统安全,这样就以vsftp虚拟防护的方式来解决. 虚拟用户没有实际的真实系统用户,,而是通过映射到其中一个真实用户以及设置相 ...

  3. vsftpd服务安装与虚拟用户配置

    vsftpd的全名是“Very secure FTP Daemon” 一.安装vsftpd安装db4-util用于生成认证文件 yum -y install db4-utils 安装vsftpd yu ...

  4. vsftpd基于pam_mysql的虚拟用户机制

    何为vsftpd? vsftpd:very secure ftp daemon 程序:/usr/sbin/vsftpd 配置文件:/etc/vsftpd/vsftpd.conf 其用户分为:匿名用户( ...

  5. ftp环境搭建并创建虚拟用户

    1. 首先安装ftp yum install -y vsftpd 2. 修改配置文件   cd /etc/vsftpd /etc/vsftpd/vsftpd.conf //主配置文件,核心配置文件 / ...

  6. CentOS 7搭建vsftp(虚拟用户方式登录)

    说明: vsftpd的版本:vsftpd-3.0.2-22.el7.x86_64 ftp 根目录 : /data/ftp ftp 配置文件目录:/etc/vsftpd ftp 虚拟用户权限配置文件目录 ...

  7. Vsftpd虚拟用户登陆配置(Centos7)

    1 安装Vsftpd服务 # yum install vsftpd -y vsftp虚拟用户是为了保证FTP服务器的安全性,由vsftpd服务器提供的非系统用户账号, 相对于FTP的本地用户来说,虚拟 ...

  8. FTP原理和虚拟用户映射登录-2019.2.8

    FTP主动模式和被动模式 FTP(File Transfer Protocol)是文件传输协议的简称.正如其名所示:FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序 ...

  9. linux之FTP服务搭建 ( ftp文件传输协议 VSFTPd虚拟用户)

    FTP服务搭建 配置实验之前关闭防火墙 iptables -F iptables -X iptables -Z systemctl stop firewalld setenforce 0 1.ftp简 ...

随机推荐

  1. 汇编刷题:在M单元和N单元分别存有一个8位无符号数36H和95H,要求比较并输出 M大于N 或者 M小于N

    DATA SEGMENT     M DB 36H     N DB 95H     RESAULT1 DB 'M>N$'     RESAULT2 DB 'M<N$' DATA ENDS ...

  2. Python高级特性-迭代器和生成器

    迭代器 Python中可迭代对象(iterable)通俗指可直接作用与For循环的数据对象,如Python中的集合数据类型,字符串(str),列表(list),元组(tuple),集合(set),字典 ...

  3. String 对象-->replace() 方法

    1.定义和用法 replace() 方法用于字符串替换 语法: string.replace(searchvalue,newvalue) 参数: searchvalue:被替换的字符串 newvalu ...

  4. bootstrap-table 内容超出鼠标悬浮显示全部

    .table th, .table td { text-align: center; vertical-align: middle !important; } table { width: 100px ...

  5. AJ整理问题之:内存堆栈

    内存 数据在内存中的存放 在计算机中,运行的应用程序的数据都是保存在内存中的. 不同类型的数据,保存的内存区域不同,其中包括: 1:栈区(stack)由编译器自动分配并释放,一半存放函数的参数值,局部 ...

  6. 刮刮乐自定义view

    说明:该代码是参考鸿洋大神的刮刮乐自定义view来写的. 实现:刮刮乐-刮奖的效果,如下效果 下面直接放代码了:只有一个自定义view,要实现真正的功能还需要进一步封装 /** * 自定义view-刮 ...

  7. vue单页应用和和多页应用的区别

    个人见解如下: 单页面应用(SinglePage Web Application  )简称:SPA 多页面应用 (MultiPage Application) 简称:MPA 组成一个外壳和多个页面片段 ...

  8. vue中SPA的优缺点和理解

    说说你对SPA的理解,他的优缺点分别是什么? SPA(single-page application) 尽在Web页面初始化时加载相应的HTML,JavaScript和CSS.一旦页面加载完成,SPA ...

  9. ST表(求解静态RMQ问题)

    例题:https://www.acwing.com/problem/content/1272/ ST表类似于dp. 定义st[i][j]表示以i为起点,长度位2^j的一段区间,即[ i , i + 2 ...

  10. Jar包一键重启的Shell脚本及新服务器部署的一些经验

    原文首发于博客园,作者:后青春期的Keats:地址:https://www.cnblogs.com/keatsCoder/ 转载请注明,谢谢! 前言 最近公司为客户重新部署了一套新环境,由我来完成了基 ...