环境:CentOS6.3

ftp的三种用户模式

匿名用户:vsftp默认开启匿名用户,但只允许下载不允许上传;匿名用户anonymous或ftp;匿名用户目录/var/ftp,但实际上vsftp对匿名用户做了chroot

本地用户:vsftp默认开启本地用户登录;本地用户登录目录是其主目录,可以随意切换目录(可通过local_root=指定登录目录);一般通过系统权限控制用户访问

虚拟用户:需要手工配置,通过本地文件或数据库将ftp虚拟用户映射为一个系统用户,通过对此系统用户的控制实现更高的安全性

安装

yum install vsftpd

vsftp的主配置文件:/etc/vsftpd/vsftpd.conf

启动vsftp

service vsftpd start

开启防火墙

vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT

service iptables restart

修改SELinux          //解决本地用户登录出现500错误问题(无法进入用户主目录)

setsebool –P ftp_home_dir 1

setsebool –P allow_ftpd_full_access 1

或关闭SELinux

vi /etc/sysconfig/selinux

SELINUX=enforcing改为disable

启用自启动

chkconfig --level 35 vsftpd on

常用配置

anonymous_enable=YES    //默认开启了匿名用户,请注意如果想要关闭匿名用户,不是简单的注释掉此选项(因为默认匿名用户开启),而是指定选项值为NO(anonymous_enable=NO)

ftpd_banner=                        //登录banner,默认未开

xferlog_enable=YES          //开启日志,默认开启

xferlog_file=/var/log/xferlog    //日志路径,默认未开

xferlog_std_format=YES    //日志格式,默认开启

anon_max_rate=100000  //匿名用户最大传输速率,默认不存在

local_max_rate=1000000  //本地用户最大传输速率,默认不存在

max_clients=xx    //服务器最大并发连接数

max_per_ip=x    //每IP最大连接数

pasv_enable=NO      //关闭被动模式,用以解决ftp工具和windows连接无法list问题(我并不想在防火墙上开放过多的端口提供客户端的被动连接,如果必须采用被动模式,请参考小僧的博客文章。需要注意的是采用被动模式时,windows连接时需要把internet option---advaneced--use passive mode取消勾选,否则windows默认采用被动模式连接;一般客户端工具连接时能够自动判断,不需要过多配置)

cmds_allowed=ABOR,CWD,LIST,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RETR,RNFR,RNTO,SITE,SIZE,STOR,TYPE,USER,CDUP,APPE,MDTM    //此选项用以指定可以使用的FTP交互命令,我去掉了DELE(删除)用以限制用户删除远程文件,具体命令参数请参http://www.nsftools.com/tips/RawFTP.htm

用户访问控制

1.指定用户禁止访问,其他用户允许访问

userlist_enable=YES

userlist_file=/etc/vsftpd/vsftpd.userlist

userlist_deny=YES

2.指定用户允许访问,其他用户禁止访问

userlist_file=/etc/vsftpd/vsftpd.userlist

userlist_deny=NO

本地用户chroot

1.指定用户不受限制,其他用户受限

chroot_local_user=YES      //启用本地用户chroot,启用后本地用户登录就被限制在其登录目录中(默认为其主目录) chroot_list_enable=YES      //启用例外列表 chroot_list_file=/etc/vsftpd/chroot_list    //例外列表路径

2.指定用户受限,其他用户不受限

chroot_local_user=NO      chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list

ftp常用命令

open  x.x.x.x    //打开到ftp服务器的连接

user xxx  //登录用户

cd    //改变远程登陆目录(服务器端)

lcd  //改变本地目录(客户端)

bin  //以二进制模式传输(通常用于程序等)

ascii  //asc码模式传输(默认方式,常用于传输文本类文件)

hash    //显示传输进度

bell    //传输完毕后响铃

prompt  //交互模式开关(多用于mget,mput关闭交互)

status  //显示当前状态(传输模式,是否显示传输进度,是否响铃,是否交互等)

get  //下载

mget  //批量下载

put    //上传

mput  //批量上传

本篇文章来源于 Linux公社网站(www.linuxidc.com)  原文链接:http://www.linuxidc.com/Linux/2013-05/84947.htm

CentOS 6.3 下 vsftp搭建的更多相关文章

  1. CentOS 6.5下快速搭建ftp服务器[转]

    CentOS 6.5下快速搭建ftp服务器 1.用root 进入系统 2.使用命令 rpm -qa|grep vsftpd 查看系统是否安装了ftp,若安装了vsftp,使用这个命令会在屏幕上显示vs ...

  2. CentOS 6.5下快速搭建ftp服务器

    来源:Linux社区 作者:Linux CentOS 6.5下快速搭建ftp服务器 1.用root 进入系统 2.使用命令 rpm -qa|grep vsftpd 查看系统是否安装了ftp,若安装了v ...

  3. CentOS 6.0下phpvod搭建教程(LAMP+phpvod)

    之所以安装CentOS是因为之前试过RedHat,但是发现RedHat在安装时,无法获取安装源,原因是RedHat系统没有在RHN注册. 网上的很多教程都说可以直接换用CentOS的源,可我小搞里一会 ...

  4. CentOS 5.8下快速搭建FTP服务器

    学习安装和配置vsftpd: 实验环境:CentOS 5.8 x86_64 测试环境关掉防火墙和selinux. service iptables stop setenforce 0 1.安装vsft ...

  5. CentOS 7 系统下 GitLab 搭建

    参考地址:https://blog.csdn.net/t748588330/article/details/79915003 1. 安装:使用 GitLab 提供仓库在线安装 curl -sS htt ...

  6. CentOS 6.2下搭建Web服务器

    1Centos 6.2下搭建web服务器 如今,Linux在Web应用越来越广,许多企业都采用Linux来搭建Web服务器,这样即节省了购买正版软件的费用,而且还能够提高服务器的安全性. 之前我们介绍 ...

  7. Linux CentOS 6.5 下 vsftpd ftp服务器搭建

    Linux CentOS 6.5 下 vsftpd ftp服务器搭建 by:授客 QQ:1033553122   操作系统环境:CentOS 6.5-x86_64 下载地址:http://www.ce ...

  8. CentOS 6.3下搭建Web服务器

    准备前的工作: 1.修改selinux配置文件(/etc/sysconfig/selinux) 关闭防火墙 (1)把SELINUX=enforcing注释掉 (2)并添加SELINUX=disable ...

  9. CentOS 6.5 下搭建FastDFS服务

    参考网站: http://www.open-open.com/lib/view/open1435468300700.html http://blog.csdn.net/lynnlovemin/arti ...

随机推荐

  1. Linux内存管理 - slab分配器和kmalloc

    本文目的在于分析Linux内存管理机制的slab分配器.内核版本为2.6.31.1. SLAB分配器 内核需要经常分配内存,我们在内核中最常用的分配内存的方式就是kmalloc了.前面讲过的伙伴系统只 ...

  2. HttpHandler(处理程序) 和 HttpModule(托管模块)

    本文参见:http://www.tracefact.net/Asp-Net/Introduction-to-Http-Handler.aspx 前言:前几天看到一个DTcms网站,里面有个伪静态技术, ...

  3. C# as运算符

    一.C# as运算符 as运算符用于执行引用类型的显式类型转换.请阅读C#数据类型. as运算符可以用下面的格式表示: expression as type?expression:引用类型的表达式. ...

  4. C# grid控件用数据库分页后台怎么写?

    C#grid控件使用数据库分页的写法如下: mySystem.GetDataa(gridName.PageIndex *gridName.PageSize + 1, (gridName.PageInd ...

  5. SpringBoot学习12:springboot异常处理方式2(使用@ExceptionHandle注解)

    1.编写controller package com.bjsxt.controller; import org.springframework.stereotype.Controller; impor ...

  6. 【MySQL】使用SQL语句操作MySQL

    前言: MySQL在工作中是最常用的数据库,但在使用Django和Flask的时候,都是使用ORM进行操作,除了select语句外,其他的SQL语句操作MySQL的能力没有啥提高,为了解决这个问题, ...

  7. Linux关闭开启防火墙命令

    在外部访问CentOS中部署应用时,需要关闭防火墙. 关闭防火墙命令:systemctl stop firewalld.service 开启防火墙:systemctl start firewalld. ...

  8. libvirt笔记(未完待续)

    参考源地址:http://libvirt.org/formatdomain.html http://blog.csdn.net/qq250941970/article/details/6022094 ...

  9. TCL之表达式

  10. Swoole 创建服务

    1: 创建TCP 服务器 $serv = new swoole_server(‘127.0.0.1’,9501); 2:创建UDP服务器 $serv =  new swoole_server('127 ...