1.ftp为明码传输
2.客户端和服务端采用两条链路来分别进行命令和数据的传输。数据传输的模式分为主动链接和被动链接。
3.客户端在需要数据的时候,会告知服务器端采取主动或者被动的方式来链接。
4.如果是主动链接,客户端在自己主机上启动一个数据接收端口,通过控制端口告诉服务端,接下来等待服务端主动链接这个端口,并传输数据。
5.采用主动链接的方式,如果客户端躲在NAT主机的后面,将导致服务端链接不到此端口。采用被动链接的方式,需要ftp服务端软件支持,客户端告知服务端采用被动模式传输数据,服务端启动一个数据监听端口,将这个端口告知客户端,并等待客户端连接。
 
6.ftp登陆者的身份可以分为三种。
    1.实体用户:ftp服务默认没有对实体用户进行任何限制,所以实体用户可以对整个文件系统采取任何有权限的操作(linux系统用户)。
    2.访客身份:这种身份的用户只能在指定的用户空间内操作。可以限制权限。
    3.匿名身份:要做很多限制,如限制最大访问数。
 
cent OS vsFTPd安装运行:
 
0.安装:yum install vsftpd
1.关闭防火墙 :service iptables stop
2.关闭selinux :setenforce 0
3.建立ftp实体用户 useradd -d /home/ftpdir ftpuser;passwd ftpuser 123456;(要有用户主目录)
4.默认配置启动:service vsftpd start
 
主要配置解析:
 
1.anonymous_enable=NO 是否允许匿名登陆
 
2.local_enable=YES 是否允许本地用户(添加的实体用户登录)
 
3.用户目录chroot设置:
    A.chroot_local_user=YES
    B.chroot_list_enable=YES 
   C.chroot_list_file=/etc/vsftpd/chroot_list
  当A没有设置的时候,处于/etc/vsftpd/chroot_list 文件中的用户将被chroot。当A设置的时候,结果相反。
 
4.用户访问权限设置
    A.userlist_enable=YES
    B.userlist_deny=NO
    C.userlist_file=/etc/vsftpd/user_list
  当三个文件都写的时候,userlist限制访问权限才能起作用。当B为YES的时候,/etc/vsftpd/user_list中的用户不能访问FTP,当B为NO的时候,只有user_list内的用户能访问FTP。
 
5.PAM权限中vsFTPd访问权限设置:
在文件/etc/pam.d/vsftpd 中,auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed表明,在ftpusers文件中配置的用户无法登陆。
 
可以使用 man 5 vsftpd.conf命令来查看vsftpd.conf来查看所有的配置和默认值。

FTP原理和cent OS vsFTPd架设的更多相关文章

  1. cent os 6.5 配置vsftpd

    1. 下载vsftpd: #yum –y install vsftpd 2. 关闭iptables 查看防火墙状态:/etc/init.d/iptables status 关闭:service ipt ...

  2. vmware安装cent os 6.5 + oracle 11g xe + jboss eap 6.2 + weblogic 12c+ webshpere mq 7.5

    前言: mac系统发展速度确实很快,短短数年,mac os上已经能网银支付(中行.招行.工商.支付宝等均已全面支持mac os了),windows上的经典常用软件:qq.飞信.旺旺.有道词典.有道云笔 ...

  3. iOS开发UI篇—程序启动原理和UIApplication

    iOS开发UI篇—程序启动原理和UIApplication   一.UIApplication 1.简单介绍 (1)UIApplication对象是应用程序的象征,一个UIApplication对象就 ...

  4. iOS开发UI篇—程序启动原理和UIApplication1

    iOS开发UI篇—程序启动原理和UIApplication   一.UIApplication 1.简单介绍 (1)UIApplication对象是应用程序的象征,一个UIApplication对象就 ...

  5. 程序启动原理和UIApplication

    iOS开发UI篇—程序启动原理和UIApplication   一.UIApplication 1.简单介绍 (1)UIApplication对象是应用程序的象征,一个UIApplication对象就 ...

  6. Cent OS安装使用ffmpeg(完整版)

    Cent OS安装使用ffmpeg centos作为主流后台linux 系统,ffmpeg作为视频流解析的主力,尤其是ffmpeg配合opencv使用,则是视觉操作的基础 版本: ffmpeg3.1 ...

  7. iOS-程序启动原理和UIApplication

    iOS开发UI篇—程序启动原理和UIApplication   一.UIApplication 1.简单介绍 (1)UIApplication对象是应用程序的象征,一个UIApplication对象就 ...

  8. 如何在Cent OS上安装和部署jdk与tomcat?

    Cent OS是一款Linux系统.在商业应用中,Linux操作系统在服务器市场有着广泛的运用,这源于Linux系统的几大优点: 1.跨平台的硬件支持 由于Linux 的内核大部分是用C 语言编写的, ...

  9. (静默安装)Cent OS 6_5(x86_64)下安装Oracle 11g

    Cent OS 6_5(x86_64)下安装Oracle 11g 1 硬件要求   1.1 内存 & swap 物理内存不少于1G 硬盘可以空间不少于5G swap分区空间不少于2G Mini ...

随机推荐

  1. [D3] 7. Quantitative Scales

    # Quantitative Scales var colorScale = d3.scale.quantile() .domain([d3.max(dataset) / 4, d3.max(data ...

  2. oracle6

    转换函数  介绍 转换函数用于将数据类型从一种转为另外一种.在某些情况下,oracle server允许值的数据类型和实际的不一样,这时oracle server会隐含的转化数据类型 比如: crea ...

  3. Android(java)学习笔记174:SharedPreferences(轻量级存储类)

    1.SharedPreferences是Android平台上一个轻量级的存储类,简单的说就是可以存储一些我们需要的变量信息.2个activity 之间的数据传递除了可以他通过intent来传递数据,还 ...

  4. iOS 网络编程:socket

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...

  5. VS2010 Web项目需要缺少的Web组件才能加载

    用记事本打开 .csproj 文件,找到<UseIIS>True</UseIIS>改为<UseIIS>False</UseIIS> ,重新加载项目即可.

  6. ASP.NET中常用方法

    身份证号检测: /// <summary> /// 检验身份证号是否正确 /// </summary> /// <param name="Id"> ...

  7. 程序员带你十天快速入门Python,玩转电脑软件开发(一)

    关注今日头条-做全栈攻城狮,学代码也要读书,爱全栈,更爱生活.提供程序员技术及生活指导干货. 如果你真想学习,请评论学过的每篇文章,记录学习的痕迹. 请把所有教程文章中所提及的代码,最少敲写三遍,达到 ...

  8. CSS常见问题及兼容性

    CSS常见问题 1 (IE6,7)H5标签兼容 解决方法1:(只显示核心代码) 1<script>  ; ; ;                    ;;;};;;;;;;;       ...

  9. Java-Android 之动画的实现

    一:显示隐藏动画 在res目录下创建一个anim目录,然后在里面创建一个alpha.xml文件 <?xml version="1.0" encoding="utf- ...

  10. MyXLS案例

    using System; using System.Data; using org.in2bits.MyXls; namespace Maticsoft.Common { /// <summa ...