设为首页 收藏本站
查看: 2107|回复: 0

[经验分享] Vsftpd完全攻略(一)ftp原理与vsftp安装

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-3-9 08:42:54 | 显示全部楼层 |阅读模式
VSFTPD是一款小巧易用FTP服务器程序vsftpd 在安全性、高性能及稳定性三个方面有上佳的表现。它提供的主要功能包括虚拟IP设置、虚拟用户、Standaloneinetd操作模式、强大的单用户设置能力及带宽限流等。在安全方面,它从原理上修补了大多数Wu-FTPProFTP,乃至BSD-FTP的安装缺陷,使用安全编码技术解决了缓冲溢出问题,并能有效避免“globbing”类型的拒绝服务攻击。目前正在使用vsftpd的官方网站有Red HatSuSEDebianGNUGNOMEKDEGimpOpenBSD等。它支持很多其他的 FTP 服务器不支持的特征。
比如:

非常高的安全性需求
带宽限制

良好的可伸缩性

创建虚拟用户的可能性

IPv6
支持

中等偏上的性能

分配虚拟 IP 的可能性

高速



   目录                                                

一.ftp原理与vsftpd安装

二.设置匿名用户也支持下载和上传,创建目录

三.基于系统用户支持ftp上传 访问和vsftp安全设置

四.搭建支持SSL加密传输的vftpd

五.vsftpd.conf配置详解

六.建立多个虚拟用户支持ftp不同访问权限(1)
      建立多个虚拟用户支持ftp不同访问权限(2)


七.利用quota对Vsftpd做磁盘配额



ftp原理与vsftp安装
1.ftp原理

FTP Transfer Protocol 件传输协议的缩写,RFC 959中具体说明。
FTP会话时包含了两个通道,一个叫控制通道,一个叫数据通道。





控制通道:控制通道是和FTP服务器进行沟通的通道,连接FTP,发送FTP指令都是通过控制通道来完成的, PI称为控制连接

数据通道:数据通道是和FTP服务器进行文件传输或者列表的通道。
FTP协议中,控制连接均有客户端发起,而数据连接有两种工作方式:PORT方式和PASV方式,DTP称为数据连接

PORT模式(主动方式)

FTP 客户端首先和FTP ServerTCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口(一个大于1024的端口)接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口发送数据。 FTP server必须和客户端建立一个新的连接用来传送数据。





PASV模式(被动方式)


在建立控制通道的时候和PORT模式类似,当客户端通过这个通道发送 PASV 命令的时候,FTP server打开一个位于10245000之间的随机端口并且通知客户端在这个端口上传送数据的请求,然后FTP server 将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接传送数据。







如果从C/S模型这个角度来说,PORT对于服务器来说是OUTBOUND,而PASV模式对于服务器是INBOUND,这一点请特别注意,尤其是在使用防火墙的企业里,这一点非常关键,如果设置错了,那么客户将无法连接。
2.安装vsftpd[iyunv@localhost /]# rpm -qa |grep vsftpd 查询是否安装了vsftpd(提示无)
[iyunv@localhost /]# mkdir /mnt/cdrom 创建挂载光驱目录文件
[iyunv@localhost /]# mount /dev/cdrom /mnt/cdrom/ 挂载光驱到刚创建目录
mount: block device /dev/cdrom is write-protected, mounting read-only
[iyunv@localhost /]# cd /mnt/cdrom/Server/
[iyunv@localhost Server]# rpm -ivh vsftpd-2.0.5-12.el5.i386.rpm 安装vsftp RPM
warning: vsftpd-2.0.5-12.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
   1:vsftpd                 ########################################### [100%]

[iyunv@localhost Server]# rpm -qa |grep vsftpd再查询是否安装了vsftpd
vsftpd-2.0.5-12.el5
[iyunv@localhost ~]# rpm -qi vsftpd 查询vsftpd详细信息
Name        : vsftpd                       Relocations: (not relocatable)
Version     : 2.0.5                             Vendor: Red Hat, Inc.
Release     : 12.el5                        Build Date: 20071213 星期四 193537
Install Date: 20091226 星期六 003503      Build Host: ls20-bc1-14.build.redhat.com
Group       : System Environment/Daemons    Source RPM: vsftpd-2.0.5-12.el5.src.rpm
Size        : 289673                           License: GPL
Signature   : DSA/SHA1, 20071217 星期一 234334, Key ID 5326810137017186
Packager    : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
URL         : http://vsftpd.beasts.org/
Summary     : vsftpd - 非常安全 Ftp 守护进程
Description :
vsftpd 是一个非常安全 FTP 守护进程。它是完全从零开始编写的。

[iyunv@localhost ~]# rpm -ql vsftpd      列出vsftpd中包含文件
/etc/logrotate.d/vsftpd.log             vsftpd的日志文件
/etc/pam.d/vsftpd                    PAM认证文件
/etc/rc.d/init.d/vsftpd                 启动脚本
/etc/vsftpd                          vsftpd的配置文件存放的目录
/etc/vsftpd/ftpusers                  禁止使用vsftpd的用户列表文件
/etc/vsftpd/user_list                  禁止或允许使用vsftpd的用户列表文件
/etc/vsftpd/vsftpd.conf                主配置文件
/etc/vsftpd/vsftpd_conf_migrate.sh      vsftpd操作的一些变量和设置
/usr/sbin/vsftpd                      vsftpd的主程序
其他一些说明文档和手册文件略!
/var/ftp                            匿名用户主目录
/var/ftp/pub                        匿名用户的下载目录

[iyunv@localhost /]# service vsftpd start 启动vsftpd
vsftpd 启动 vsftpd                                    [确定

[iyunv@localhost ~]# chkconfig --level 3 vsftpd on打开3级别随系统自动启动vsftpd


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-44698-1-1.html 上篇帖子: 简单的FTP搭建 下篇帖子: Vsftpd完全攻略(二)设置匿名用户也支持下载和上传与创建目录 完全攻略
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表