centos7安装配置vsftpd

  • 1.安装
  • 查看是否安装了FTP:rpm -qa|grep vsftpd
    安装:yum -y install vsftpd
    chkconfig vsftpd on

    启动vsftpd: systemctl start vsftpd.service

    vsftpd几种用户:本地用户、虚拟用户、匿名用户。

    主动模式、被动模式:

    PORT主动 FTP模式:
    命令连接:客户端>1024端口 -> 服务器21端口
    数据连接:客户端>1024端口 <- 服务器20端口

    PASV被动 FTP模式:
    命令连接:客户端>1024端口 -> 服务器21端口
    数据连接:客户端>1024端口 <- 服务器>1024端口

    文件说明:
    ll /etc/vsftpd/ftpusers:指定哪些用户账号不能访问FTP服务器,如root等。
    ll /etc/vsftpd/user_list:该文件里用户账号默认情况下不能访问FTP服务器,仅当vsftpd.conf配置文件里启用userlist_enabled=NO选项时才允许访问。

    • 2.配置

    vsftpd 虚拟用户配置说明。

    cat /etc/vsftpd/vsftpd.conf

    anonymousenable=NO  #设定不允许匿名访问
    localenable=YES   #设定本地用户可以访问。注意:主要是为虚拟宿主用户,如果该项目设定为NO,所有虚拟用户将无法访问。
    writeenable=YES   #设定可以进行写操作。
    localumask=022    #设定上传后文件的权限掩码。
    anonuploadenable=NO  #禁止匿名用户上传。
    anonmkdirwriteenable=NO  #禁止匿名用户建立目录。
    dirmessageenable=YES    #设定开启目录标语功能。
    xferlogenable=YES  #设定开启日志记录功能。
    connectfromport20=YES  #设定端口20进行数据连接。
    chownuploads=NO   #设定禁止上传文件更改宿主。
    xferlogfile=/var/log/vsftpd.log  #设定Vsftpd的服务日志保存路径。
    xferlogstdformat=YES  #设定日志使用标准的记录格式。
    asyncaborenable=YES  #设定支持异步传输功能。
    asciiuploadenable=YES
    asciidownloadenable=YES
    #设定支持ASCII模式的上传和下载功能。
    ftpdbanner=This Vsftp server supports virtual users ^^  #设定Vsftpd的登陆标语。
    chrootlistenable=NO  #禁止用户登出自己的FTP主目录。
    lsrecurseenable=NO
    #禁止用户登陆FTP后使用"ls -R"的命令。该命令会对服务器性能造成巨大开销。如果该项被允许,那么当多用户同时使用该命令时将会对该服务器造成威胁。
    listen=YES   #设定该Vsftpd服务工作在StandAlone模式下。
    pamservicename=vsftpd   #设定PAM服务下Vsftpd的验证配置文件名。因此,PAM验证将参考/etc/pam.d/下的vsftpd文件配置。
    userlistenable=YES  #设定userlistfile中的用户将不得使用FTP。
    tcpwrappers=YES  #设定支持TCP Wrappers
    #pasvpromiscuous=yes  #关闭ftp被动模式PASV的安全检查。
    chrootlocaluser=yes  #将所有用户限制在主目录。ftp用户不可以向上切换到其他目录之外
    chrootlistenable  #是否启动限制用户的名单/etc/vsftpd/chrootlist 。 YES为启用,则/etc/vsftpd/chrootlist文件用户不受限制。 NO禁用(包括注释掉也为禁用)
    chrootlistfile=/etc/vsftpd/chrootlist  #是否限制在主目录下的用户名单,至于是限制名单还是排除名单,这取决于chrootlocaluser的值。
    allowwriteablechroot=YES  #vsftpd在2.3.5之后,vsftpd为真强安全检查,如果用户被限制在其主目录下,则该用户的主目录下不再具有写权限。如发现写权限,就会报错误。修复错误一个方法是增加vsftpd.conf配置文件加allowwriteablechroot=YES。
    
    #以下关于Vsftpd虚拟用户支持的重要配置项目,需要自己手动添加配置
    guestenable=YES   #设定启用虚拟用户功能。
    guestusername=ftpuser   #指定虚拟用户的宿主用户。
    virtualuselocalprivs=YES   #设定虚拟用户权限与本都用户一样权限。
    #pamservicename=vsftpd  #虚拟用户启用pam认证
    userconfigdir=/etc/vsftpd/vuserconf    #设定虚拟用户配置文件所在目录*
    
    • 3.添加FTP账号用户,创建宿主用户

      useradd ftpuser -d /home/vsftpd -s /sbin/nologin
      chown ftpuser:ftpuser /data/vsftpd -R

    建虚拟用户文件:

    cat  /etc/vsftpd/vftpuser
    test
    test@123

    生成虚拟用户数据文件:

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

    配置pam认证文件:

    cat /etc/pam.d/vsftpd
    #%PAM-1.0
    auth      required      pam_userdb.so  db=/etc/vsftpd/vftpuser
    account  required       pam_userdb.so  db=/etc/vsftpd/vftpuser

    创建用户配置:
    ll /data/vsftpd/
    drwxrwxrwx 3 ftpuser ftpuser 4096 2月 1 17:26 test

    编辑每个虚拟用户配置文件:

    cat /etc/vsftpd/vuser_conf/test
    local_root=/data/vsftpd/test
    anon_world_readable_only=no
    write_enable=yes
    anon_upload_enable=yes
    anon_mkdir_write_enable=yes
    anon_other_write_enable=yes

    创建用户目录
    mkdir -p /data/vsftpd/test

    重启vsftpd: systemctl start vsftpd.service

    • 4.测试

    本地ftp测试:

    ftp 127.0.0.1
    Connected to 127.0.0.1 (127.0.0.1).
    220 (vsFTPd 3.0.2)
    Name (127.0.0.1:root): test
    331 Please specify the password.
    Password:
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> 

    原文地址:https://blog.51cto.com/10874766/2355506

    时间: 2024-08-30 00:17:21

    centos7安装配置vsftpd的相关文章

    Centos7 安装配置OpenLdap服务及OpenLdap管理工具

    我们上一篇文章中介绍了,Centos7+Openvpn使用Windows AD(LDAP)验证登录的配置介绍.说到LDAP服务,我们知道不止windows有,linux下也有,比如openldap,sambaLDAP服务,具体就不多介绍了,我们今天主要介绍一下Centos7 安装配置OpenLdap及Ldap管理工具等操作,为后面的Centos7+Openvpn+openldap验证登录做好基础. 我们首先配置一个指定源,我们源地址指向了阿里云的仓库源 cd /etc/yum.repos.d v

    Centos7安装配置Apache+PHP+Mysql+phpmyadmin

    转载自: Centos7安装配置Apache+PHP+Mysql+phpmyadmin 一.安装Apache yum install httpd 安装成功后,Apache操作命令: systemctl start httpd //启动apache systemctl stop httpd //停止apache systemctl restart httpd //重启apache systemctl enable httpd //设置apache开机启动 异常处理我再阿里云上配置并出现启动Apac

    CentOS7安装配置redis-3.0.0

    清园 沉没的Atlantis CentOS7安装配置redis-3.0.0 一.安装必要包 yum install gcc 二.linux下安装 #下载 wget http://download.redis.io/releases/redis-3.0.0.tar.gz tar zxvf redis-3.0.0.tar.gz cd redis-3.0.0 #如果不加参数,linux下会报错 make MALLOC=libc  安装好之后,启动文件 #启动redis src/redis-server

    Centos7安装配置gitlab

    Centos7安装配置gitlab 这篇文字我会介绍在Centos7上安装gitlab,配置gitlab的smtp,并且创建项目demo. sudo yum install openssh-server sudo yum install postfix sudo yum install cronie sudo service postfix start sudo chkconfig postfix on sudo lokkit -s http -s ssh 使用清华大学gitlab的镜像http

    CentOS7安装配置DNS服务器

    准备工作(假设名称为bigcloud.local) #更改主机名称 #vi /etc/sysconfig/network # Created by anaconda NETWORKING=yes HOSTNAME=bigcloud.local #修改文件/etc/hosts,内容如下: 127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1         localhost local

    Centos7网络配置,vsftpd安装及530报错解决

    今天在虚拟机安装CentOS7,准备全新安装LTMP,结果又是一堆问题,不过正好因为这些出错,又给自己长了见识. 1,CentOS7网络配置 最小化安装CentOs7后,ifconfig提示command not found,查了一下是ifconfig的net-tools没装,于是yum search ifconfig查找安装包,又是提示Cannot find a valid baseurl for repo: base/7/x86_6,才发现网卡还没配好,查了一下,原来是centos7下ip命

    开发人员学Linux(10):CentOS7安装配置代码质量管理平台SonarQube6.4

    1.前言上一章讲述了如何配置使用源代码管理工具SVN并使之与Apache集成,从而实现代码的变更可追溯,虽然在大多数团队里强调代码提交之前必须找团队中经验丰富的人来审核通过后方可提交,但这一条有时候不是所有时候都能得到满足,有没有依赖于机制而不是人来保证代码质量呢,我们知道计算机的缺点也是优点之一就是可以忠实执行指令.答案是有的,那就是SonarQube,其官方网址为:https://www.sonarqube.org/,目前最新版本为6.4.SonarQube是一个开源平台,用于管理源代码的质

    Centos6.7安装配置vsftpd虚拟用户

    演示环境 系统:Linux CentOS 6.7 64位 账号:root 环境:无安装vsftpd 1.安装依赖软件 [[email protected] ~]# yum install pam* db4* -y 安装PAM(用于虚拟用户认证)和DB4(用于生成虚拟用户的用户名密码的db文件). 2.安装vsftpd [[email protected] ~]# yum install vsftpd   -y 设置vsftpd开机启动: [[email protected]]# chkconfi

    linux上安装配置vsftpd(转)

    转自:http://www.webarch.org/category/linux 我的生产环境是Centos5.6,由于需要提供ftp服务,就找了一款比较小巧的ftp服务器端软件,vsftpd(vsftpd 的名字代表”very secure FTP daemon”, 安全是它的开发者 Chris Evans 考虑的首要问题之一.在这个 FTP 服务器设计开发的最开始的时候,高安全性就是一个目标.) 1.查看是否安装vsftp rpm -qa | grep vsftpd 如果出现vsftpd-2