环境: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. C#自制png转ico图标工具

    此项目基于.net framework 4.0 只需把图片拖拽到窗口内,自动转换生成ico图标,在png文件同级目录下. /// /// 实现代码: 转换Image为Icon /// ///要转换为图 ...

  2. js中关于假值和空数组的总结

    先上x==y运算符的算法细节: 如果x不是正常值(比如抛出一个错误),中断执行. 如果y不是正常值,中断执行. 如果Type(x)与Type(y)相同,执行严格相等运算x === y. 如果x是nul ...

  3. 3、SpringBoot------邮件发送(1)

    开发工具:STS 代码下载链接:https://github.com/theIndoorTrain/Springboot/tree/8878e8e89ce01ceb967ef8c1193ac740a6 ...

  4. C#封装cef图片title不显示

    遇到Web项目在浏览器调试时tip能正常显示,在cef环境下居然没有提示.根据网上的的资料添加app.manifest文件. 并且放开这一段代码.重新编译后能够显示出tip.

  5. 友盟分享小结 - iOS

    因之前都写在了 AppDelegate 类中,看起来过于臃肿,此次基于友盟分享重新进行了一次优化,此次分享内容基于已经成功集成 SDK 后 code 层级部分.注:此次分享基于 SDK 6.9.3,若 ...

  6. runtime - 消息机制

    Xcode中使用runtime代码时,建议先做下配置: 使用runtime代码时会有适当的提醒. OC方法调用的本质是消息转发,消息机制的本质 创建一个Person类,添加方法 - (void)eat ...

  7. python 获取项目的根路径

    root_path = os.path.abspath(os.path.dirname(__file__)).split('shippingSchedule')[0] shippingSchedule ...

  8. LeetCode207 课程表

    问题:课程表 现在你总共有 n 门课需要选,记为 0 到 n-1. 在选修某些课程之前需要一些先修课程. 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们: [0,1] 给定 ...

  9. Struts2之类范围拦截器和方法拦截器

    1.Struts2拦截器的体系结构 Struts2拦截器最大的特点是其透明性,即用户感觉不到它的存在,但我们在使用Struts2框架时,拦截器时时刻刻都在帮助我们处理很多事情. 包括: 文件上传 表单 ...

  10. nodejs的http-server--web前端福利

    很多web前端在日常开发的时候可能会想常开发是谁. 不好意思,说错了. 很多web前端在日常开发的时候总是避免不了让所写页面在服务器环境下执行. 比如当你在用angularjs的route模块等等等. ...