Vsftpd安装详细文档
需求:
a.匿名用户不可以登录和访问ftp服务器(因为是运维部内部的ftp服务器,所以只有运维部的同事才可以登录),即只允许本地用户登录。
b.ftp服务器默认是用户登录到各自的家目录下,要求是所有用户登录到一个共享的目录下,用户有自己的文件夹,此处用运维部同事的名字命令文件夹名字,加以区分!要求是用户对于自己的文件夹是root权限即可以上传、创建、删除、下载等权限、对于其他文件夹可以可以下载,但是不可以删除。对于公共的文件夹用户可以下载、上传、可以删除自己上传的文件,但是不能删除其他用户上传的文件,如图示:
 

用weijunping用户登录到ftp服务器,该用户对weijunping文件具有root权限(即拥有所有权限),但是对于其他文件夹如jiaobin/panweibing等目录可以浏览、可以下载但是无创建、删除文件的权限;对于共享的文件夹如Shared_information/Work_material文件夹具有的权限是可以上传、浏览下载、删除属于自己曾经上传的东西

用chenyanhua登录在共享文件夹Shared_information中上传文件系统漏洞补丁

 
然后退出用weijunping登录进入到该目录中,试图删除该文件
 

vsftpd是一个安全、高速、稳定的FTP服务器
二.安装、启动vsftpd服务
Vsftpd安装很简单
[root@localhost webserver]# rpm -qa | grep vsftpd
vsftpd-2.0.1-6.el4
如果没有安装则
#yum –y install vsftpd
安装完成后使用service vsftpd start启动vsftpd,这样ftp服务器便搭建完成了
但此时还不能访问ftp服务器,因为服务器默认情况下关闭了防火墙,此时我们还需要使用service iptables stop命令关闭防火墙,这样客户端才可以访问ftp服务器。
三.·vsftp默认功能
1>允许匿名用户和本地用户登陆。
2>匿名用户使用的登陆名为ftp或anonymous,口令为空;匿名用户不能离开服
务器没目录/var/ftp,且只能下载不能上传。
3>本地用户的登录名为本地用户名,口令为此本地用户的口令;本地用户可以离开自家目录切换至有权访问的其他目录,并在权限允许的情况下进行下载/上传
4>写在文件/etc/vsftpd.ftpusers中的本地用户禁止登陆。
配置文件详解:
anon_uplood_enable=YES表示匿名帐户可以上传文件
anon_mkdir_write_enable=YES表示匿名帐户可以创建目录
anon_other_write_enable=YES表示匿名帐户可以为文件、文件夹进行更名删除
anon_world_readeable_only=NO表示用户可以浏览FTP目录和下载文件
·权限的设置
 
1>控制允许/不允许访问的主机
在vsftpd.conf文件最后一行有一条指令:TCP_wrappers=YES,表示vsftpd服务器与TCP wrappers相结合,进行主机的访问控制。这样客户机在访问vsftpd服务器时,服务器会检查/etc/hosts.allow和/etc/hosts.deny中的设置以决定请求连接的主机是否允许连接到服务器。这两个文件可以起到简易防火墙的功能
具体设置如下:
想要拒绝某个IP访问此服务器,可以在/etc/hosts.deny文件中加入vsftpd:192.168.0.18:deny
all:all:allow
想要允许某个IP段访问此服务器,可以在/etc/hosts.allow文件中加入
vsftpd:192.168.0:allow
all:all:deny
2>访问速度的限制
在vsftpd.conf文件最后一行加入anon_max_rate= (单位B),这样匿名用户在下载或上传文件最大速度为设置的值。想要对本地用户进行限制,只要加入local_max_rate= (单位B)即可完成对本地用户的速度限制。
3>线程数的限制
在vsftpd.conf文件中加入max_per_ip= (0表示不限制)可以防止一些人使用多线程下载资源,占用服务器的贷款、资源。这样当客户机使用的线程数超过服务器的最大限制时,将出现:There are too many connections from your internet address.
4>最大客户连接限制
在vsftpd.conf文件中加入max_clients= (0表示不限制)可以防止因客户连接数过多而导致服务器内存占满,死机。当客户机数超过服务器所设置的最大值时,客户端会出现:There are too many connected users,please try later.
设置如下:
Listen=YES
Tcp_wappers=YES
Anon_max_rate=64000
Local_max_rate=100000
Max_per_ip=3
Max_clients=10
5>设置用户登录的主目录
默认情况下用匿名用户登录FTP服务器后会进入/var/ftp目录,而本地用户登录服务器后进入/home下的用户主目录中。我们可以在vsftpd.conf文件中加入local_root=/home/website,这样在使用本地用户登录FTP服务器后自动进入/home/website目录中。
一:设置允许或不允许访问的用户
对用户的访问控制由/etc目录下的vsftpd.user_list和vsftpd.ftpuser文件来控制实现。相关配置命令如下:
·userlist_enable=YES    决定vsftpd.user_list文件是否启用生效,YES则生效,NO不生效。
    userlist_deny=NO         决定vsftpd.user_list文件中的用户是允许访问还是不允许访问。如设置为YES,则vsftpd.user_list文件中的用户将不允许访问FTP服务器;如设置为NO,则只有vsftpd.user_list文件中的用户,才能访问FTP服务器(vsftpd.ftpuser文件中没有这些用户,否则还是被禁用)。
·vsftpd.ftpusers文件则专门用于定义不允许访问FTP服务器的用户列表,默认情况下,这两个文件已设置了一些用户不允许访问FTP服务器的系统内部帐户。
6>控制用户是否允许切换到上级目录
在默认配置下,用户可以使用“cd..”命令切换到上级目录。比如若用户登陆后所在的目录为/var/ftp,则在“ftp>”命令行下执行“cd..”命令后用户将切换到其上级目录/var.若继续执行该命令则可以Linux系统的根目录,从而可以对整个Linux文件进行操作。若设置了write_enable=YES.则用户还可以对目录下的文件进行改写操作,会给系统带来极大的安全隐患,因此必须访问用户切换到Linux的根目录,相关的配置项如下:
·chroot_list_enable=YES     设置是否启用chroot_list_file配置项指定的用户列表文件。
·chroot_list_file=/etc/vsftpd.chroot_list       用于指定用户列表文件,该文件用于控制哪些用户可以切换到FTP站点根目录的上级目录
·chroot_local_users=YES       用于指定用户列表文件中的用户,是否允许切换到上级目录。
具体情况有以下几种:
当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到上级目录;未在文件中列出的用户,不能切换到站点根目录所在的上级目录。
当chroot_list_enable=YES,chroot_local_user=NO时,在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到上级目录;未在文件中列出的用户,可以切换到站点根目录所在的上级目录。
当chroot_list_enable=NO,chroot_local_user=YES时,所有用户均不可切换到上级目录。
当chroot_list_enable=NO,chroot_local_user=NO时,所有用户均可切换到上级目录。
accept_timeout=60     设置建立FTP连接的超时时间,单位为秒,默认为60秒
idle_session_timeout=600     设置多长时间不对FTP服务器进行任何操作,则断开该FTP连接,单位为秒,默认为600秒
 
服务器具体设置如下:
#yum –y install vsftpd
#vi /etc/vsftpd/vsfptd.conf
anonymous_enable=NO (不允许匿名用户登录)
local_root=/home/webserver(设置用户登录的主目录)
其他的均保持默认
在/home/webserver目录下创建以各个运维同事名字命名的文件夹,并且更改各自的文件夹名称的所属主、所属组为与文件夹名相同,如:
chown chenyanhua.chenyanhua chenyanhua
对于共享的目录如:Shared_information/Work-material等目录,给予777的权限(755也可以吧,没尝试呢)并且对文件添加t属性(一个目录即使它的所有权限都开放rwxrwxrwx,如果是设置了粘贴位,除非目录的属主和root用户有权限删除它,除此之外的其他用户不能删除这个目录,用户一般是把一个文件的权限都打开,然后来共享文件)
#mkdir Shared_information
#chmod a+t Shared_information
#chmod 777 Shared_information
启动vsftpd服务
#service vsftpd start
 
 
 
 
 
 
 
 
 
 
 
 
                                                  

转载于:https://blog.51cto.com/wjpinrain/642496

深度解析vsftpd服务相关推荐

  1. 阿里巴巴资深架构师深度解析微服务架构设计之SpringCloud+Dubbo

    微服务 软件架构是一个包含各种组织的系统组织,这些组件包括Web服务器,应用服务器,数据库,存储,通讯层),它们彼此或和环境存在关系.系统架构的目标是解决利益相关者的关注点. ​ 编辑切换为居中 添加 ...

  2. 分布式服务框架原理与实践pdf_深度解析微服务治理的技术演进和架构实践

    为什么需要服务治理? 第一.业务需求 随着业务的发展,服务越来越多,如何协调线上运行的各个服务,保障服务的SLA,对服务架构和运维人员是一个很大的挑战.随着业务规模的不断扩大,小服务资源浪费等问题逐渐 ...

  3. 运维与微服务结合?深度解析微服务框架Tars整体解决方案

    内容导航 什么是Tars? Tars框架源码部署 Tars服务部署管理 Tars配置中心 Tars服务发现 Tars远程日志 Tars状态监控 什么是Tars Tars是一个支持多语言内嵌服务治理功能 ...

  4. 微服务架构深度解析与最佳实践

    微服务架构深度解析与最佳实践 微服务架构的概念,现在对于大家应该都不陌生,无论使用 Apache Dubbo.还是 Spring Cloud,都可以去尝试微服务,把复杂而庞大的业务系统拆分成一些更小粒 ...

  5. 深度解析dubbo源码系列

    以下文章均基于dubbo v2.6.x 持续更新中- dubbo spi 扩展技术,框架基石 <深度解析dubbo扩展技术dubbo spi(注解)> <深度解析dubbo扩展技术d ...

  6. 推荐:微服务架构的深度解析!

    通过采用微服务架构,企业最大的收益是帮助内部IT建设沿着可演进的方向发展.支持灵活扩展.降低运维成本.快速响应业务变化. 这些底层技术能力的提升让业务更加敏捷.成本可控,企业也可以从中获得技术红利和市 ...

  7. 25岁阿里120W年薪架构师推荐学习的750页微服务架构深度解析文档

    前言 当前,微服务架构在国内正处于蓬勃发展的阶段,无论是大型互联网公司还是传统的IT企业,纷纷采用微服务架构构建系统. 在过去几年里,DevOps.云原生.面向演进式架构等理念已经深入人心,围绕微服务 ...

  8. RocketMQ源码(十)—Broker 消息刷盘服务GroupCommitService、FlushRealTimeService、CommitRealTimeService源码深度解析

    深入的介绍了broker的消息刷盘服务源码解析,以及高性能的刷盘机制. 学习RocketMQ的时候,我们知道RocketMQ的刷盘策略有两个,同步或者是异步: 1. 同步刷盘:如上图所示,只有消息真正 ...

  9. 你知道微服务架构深度解析:微服务的主要特性有哪些吗?

    微服务主要特性 粒度更细的服务 微服务架构相比SOA分布式架构强调按业务边界做细粒度的服务拆分.SOA架构使用粗粒度的服务模式来封装业务和技术能力,减少服务交互,但同时带来了业务耦合的复杂性.而微服务 ...

最新文章

  1. MySQL慢查询日志分析(一)
  2. 《智慧书》格言241-250
  3. 小工匠聊架构-超高并发秒杀系统设计 07_Plan B 的设计
  4. UVA12113 Overlapping Squares重叠的正方形 暴力破解
  5. jmeter HTTPS和HTTP的区别
  6. azure kinect三维点云_万众期待的 【三维点云处理】 课程来啦!
  7. Java 11:将集合转换为数组
  8. java中简单的if语句_java中if语句的写法
  9. java的网络功能与编程_Java的网络功能与编程(转载)
  10. Ckeditor插件
  11. tesseract win 训练
  12. Tensorflow如何读取文件
  13. python学习笔记——叁之修改配置文件
  14. [软件更新]gladder2.0.3.3
  15. 开源淘宝客APP源码淘客商城源码uniapp开发模版
  16. C#之Chart控件使用
  17. c语言作业陌路寒暄,短学期算法与编程实习的C语言题目
  18. 调整Oracle用户密码期限及错误登录次数
  19. 三面微软,四面雅虎,外企面经复盘总结,那些你不知道的面试技巧
  20. python 自动化刷投票脚本开发 【刷微信投票】付源码

热门文章

  1. android5.1.1移植教程,iTOP4412开发板Android5.1.1移植教程
  2. opencv调节图片饱和度_OpenCV调整彩色图像的饱和度和亮度
  3. oracle一般人能不能学,Oracle人门学习笔记
  4. python索引例子_Python实现带下标索引的遍历操作示例
  5. oracle批量生成索引,ORACLE迁移时批量导出索引、存储过程,表结构等
  6. html5 canvas 不兼容safari浏览器_HTML5简介
  7. flask 上传excel 前端_flask-restful编写上传图片api
  8. python桌面应用html_是否将Python后端与HTML / CSS / JS用户界面集成到桌面应用程序? - javascript...
  9. jQuery概述、优点、使用步骤、入口函数、jQuery对象和DOM对象之间的转换、层级选择器、属性选择器、筛选选择器、节点选择器
  10. php 并发 100 压测,简单PHP把握站点并发数