一、基本安装

  1.安装服务

yum -y install vsftpd  //centos Redhat
apt-get install vsftpd //debian ubuntu

  2.开启服务

service vsftpd status  //查看状态,默认是关闭的
service vsftpd start

  3.开机随操作系统启动

chkconfig vsftpd on

  4.添加账号

useradd -d /data/www/wwwroot -s /sbin/nologin vsftp
passwd vsftp //设置密码
chown -R vsftp.vsftp /data/www/wwwroot //设置指向目录

  其中,/demo指的是指向目录,vsftp是要添加的用户名,也可以使用usermod设置已有用户。

二、基本设置

  1.打开配置文件

vi /etc/vsftpd/vsftpd.conf

  2.参照如下设置

userlist_deny=YES
userlist_file=/etc/vsftpd/user_list
anonymous_enable=NO  //禁止匿名访问
local_enable=YES
write_enable=YES

  3.修改shell配置

vi /etc/shells  //如果该文件里没有/usr/sbin/nologin或者/sbin/nologin(具体看当前系统配置)则追加进去

  4.重启服务

service vsftpd start  //修改配置之后要重启服务

  

三、vsftp无法连接

service iptables stop //关闭防火墙

  或者修改配置文件

vi /etc/sysconfig/iptables-config
IPTABLES_MODULES="ip_conntrack_ftp"

  并添加规则

iptables -P INPUT DROP
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
service iptables save
service iptables restart

  

四、限制用户不能访问上级目录

  修改vsftp的配置文件vsftpd.conf

vi etc/vsftpd/vsftpd.conf

  修改下面的配置:  

chroot_local_user=YES
chroot_list_enable=YES //这行可以没有, 也可以有
chroot_list_file=/etc/vsftpd/chroot_list

  那么, 凡是加在文件vsftpd.chroot_list中的用户都是不受限止的用户,即可以浏览其主目录的上级目录。

  如果不希望指定的用户浏览其主目录上级目录中的内容,可以如下设置,然后在文件vsftpd/chroot_list中去掉或不添加该用户即可。

chroot_local_user=NO
chroot_list_enable=YES //这行必须要有, 否则文件vsftpd/chroot_list不会起作用
chroot_list_file=/etc/vsftpd/chroot_list

  

五、无法上传文件、创建文件/文件夹,或无法看到子目录

  这是由于selinux的机制,可以执行如下命令查看

getsebool -a|grep ftp

  使用如下命令重置权限

setsebool allow_ftpd_full_access=1

  修改目录权限

chmod  -R /var/ftp/pub

六、用户无法验证问题

  当我们限定了用户不能跳出其主目录之后,使用该用户登录FTP时往往会遇到这个错误。从2.3.5之后,vsftpd增强了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了!如果检查发现还有写权限,就会报该错误。

  方法1:修改配置文件vi /etc/vsftpd/vsftpd.conf,添加allow_writeable_chroot=YES

  方法2:用命令chmod a-w /home/user去除用户主目录的写权限

sudo chown -R root:root /home/ftp
cd /home/ftp
sudo mkdir FTPFILES
sudo chown -R vsftpuser:vsftpuser FTPFILES

  

VSFTP的使用的更多相关文章

  1. Centos6.5中安装和配置vsftp详细总结

    一.vsftp安装篇 #查看是否安装:rpm -qa|grep vsftpd#卸载vsftpdrpm -e vsftpd-2.2.2-11.el6_3.1x86_64 --nodeps# 安装vsft ...

  2. asp.net core 简单部署之FTP配置(CentOS 7.0安装配置Vsftp服务器)

    配置过程原文地址:http://www.osyunwei.com/archives/9006.html 坑和结果 正确的跟着这个内容走,是靠谱的. 我自己给自己踩了个坑,请参照文章的朋友注意第七条:七 ...

  3. vsftp简单学习思考

    FTP的全称是File Transfer Protocol(文件传输协议),就是专门用来传输文件的协议.它工作在OSI模型的第七层,即是应用层,使用TCP传输而不是UDP这样FTP客户端和服务器建立连 ...

  4. CentOS 7.0安装配置Vsftp服务器

    一.配置防火墙,开启FTP服务器需要的端口 CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop fi ...

  5. 大数据系列(4)——Hadoop集群VSFTP和SecureCRT安装配置

    前言 经过前三篇文章的介绍,已经通过VMware安装了Hadoop的集群环境,当然,我相信安装的过程肯定遇到或多或少的问题,这些都需要自己解决,解决的过程就是学习的过程,本篇的来介绍几个Hadoop环 ...

  6. Centos安装vsftp服务

    1.安装vsftp yum install vsftpd 2.开启vsftp服务,设置开机自启 service vsftpd restart chkconfig vsftpd on 停止vsftpd: ...

  7. Linux系统Vsftp 传文件出现 553 Could Not Create File错误的解决方法

    解决方法: 登录出现了这个错误提示:553 Could not create file SELinux设置如下 查看SELinux设置 [root@localhost ~]# getsebool -a ...

  8. 腾讯云服务器centos 6.5(jdk+tomcat+vsftp)、腾讯mysql数据库 及 tomcat自启动 配置教程

    1.腾讯云数据库配置 1.考虑到安全性问题,,平常不使用root用户登录,新增一个用户名neil,用来管理项目的数据库 a.首先登录root创建db_AA数据库 b.在root用户下,创建neil用户 ...

  9. Vsftp精解之安装配置及原理(一)

    简介 Vsftp(Very Secure FTP)是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,是一款小巧而又易用FTP服务器程序,Vsftpd 在安全性.高性能及稳定性三个方面有很好 ...

  10. linux vsftp配置

    1.rpm -q ftp 查看是否安装ftp服务器 2.yum install vsftp 安装ftp服务器 3.修改配置文件/etc/vsftpd 下面的 ftpusers和user_list,这两 ...

随机推荐

  1. Selenium常用API详解介绍

    转至元数据结尾   由 黄从建创建, 最后修改于一月 21, 2019 转至元数据起始   一.selenium元素定位 1.selenium定位方法 2.定位方法的用法 二.控制浏览器操作 1.控制 ...

  2. javascript 字符串处理

    ---恢复内容开始--- 最近几次参加前端实习生招聘的笔试,发现很多笔试题都会考到字符串的处理,比方说去哪儿网笔试题.淘宝的笔试题等.如果你经常参加笔试或者也是一个过来人,相信你也跟我一样,发现字符串 ...

  3. 基于Java Instrument的Agent实现

    使用 Instrumentation,使得开发者可以构建一个独立于应用程序的代理程序(Agent),用来监测和协助运行在 JVM 上的程序,甚至能够替换和修改某些类的定义.有了这样的功能,开发者就可以 ...

  4. vim里添加自动补齐插件,与python 函数补齐

    参考  http://www.jb51.net/article/58009.htm 将 # cat ~/.vimrc filetype plugin on let g:pydiction_locati ...

  5. java ftp上传文件 工具类

    package com.learning.spboot.utils; import com.jcraft.jsch.*; import org.apache.commons.net.ftp.FTPCl ...

  6. 将前台页面的数据传到后台的方法(不调用ajax,少量数据)

    1.前台画面:在页面中加入form和runat = "server"的方法并加入触发事件 <form method="post" runat=" ...

  7. mysql中文、英文别名排序问题,order by 关键字详解

    order by 关键字详解:   SELECT intcode AS 商品编码, product_title AS 名称, retailprice AS 零售价, purchaseprice AS ...

  8. 本地新建git仓库后与远端仓库关联

    背景说明:如果你想把自己的一个项目开源到,需要新建一个本地代码仓库,然后与远端代码库建立关.不想使用git clone 命令去克隆远端新建代码仓库,然后再将我们写好的代码copy到克隆下来的文件夹里, ...

  9. 二、Windows 下 ShellCode 编写初步

    第二章.Windows 下 ShellCode 编写初步 (一)shellcode 定义:最先的 Shell 指的是人机交互界面,ShellCode 是一组能完成我们想要的功能的机器代码,通常以十六进 ...

  10. vue H5页面在微信浏览器打开软键盘关闭导致页面空缺的问题。

    methods:{ inputBlur () { // window.scroll(0, 0); setTimeout(() => { // alert(1); if (document.act ...