vsftpd之基本知识

FTP(File Transfer Protocol) 文件传输协议

端口:

TCP 21

TCP 20

连接:

命令连接:

控制链接,不指定超时时间一直在线。

监听在TCP 21端口

数据连接:

按需打开,按需关闭。客户端发起请求时才打开连接,完成传输后关闭。

主动模式在20端口,被动模式不确定。

主动模式(PORT模式):

服务器端用20号端口主动连接客户端。

1.客户端通过A端口连接到服务器端的21号端口发送请求。

2.服务器端通过20号端口连接客户端的A+1端口进行数据传输。若端口被占用则使用A+1,以此类推。

Client A --> Server 21

Server 20 --> Client A+1(端口若被占用则自动+1)

缺点:服务端的请求会被客户端防火墙拦截。造成传输失败。

被动模式(PSAV模式):

1.客户端通过A端口连接到服务器的21号端口发送请求。同时打开A+1端口。

2.服务器端通过21号端口发送响应请求给给客户端的A端口,告知客户端连接服务器端的B端口进行数据传输。请求中的部分内容为XY,B=X*256+Y。

3.客户端通过A+1号端口连接服务器端的B端口,完成数据传送。

Client A --> Server 21

Server 21 --> Client A+1(连接Server的B端口)

Client A+1 --> Server B

缺点:客户端的请求有可能被服务器端防火墙拦截。

防火墙连接追踪:

自身请求出去的,响应回来会自动放行。

数据传输模式:

二进制

文本

具体传输哪种格式由服务器和客户端自行协商。

用户分类:

以下用户都映射为系统用户。

用户的验证都是基于PAM的。

匿名用户

anonymous

用户的根目录是/var/ftp,被强行锁定到此。

虚拟用户:

系统用户

系统上存在的用户,其根目录就是/home/USERNAME

时间: 2024-08-28 05:48:05

vsftpd之基本知识的相关文章

关于linux学习的热身知识八

第八章     一.系统服务的控制 1.systemed:系统初始化程序,系统开始的第一个进程,pid为1. 2.systemctl命令: systemctl  liat-units           列出当前系统服务的状态 systemctl  list-unit-files        列出服务的开机状态 systemctl  status  sshd         查看指定服务的状态 systemctl  stop  sshd          关闭指定服务 systemctl  s

FTP简述之CentOS平台vsftpd参数讲解

FTP知识概述 FTP的全称为"File Transfer Protocol"即(文件传输协议),用于在Internet或Intranet的两台主机之间传输文件,利用FTP可以传输文本文件和二进制文件: 该协议的简称叫"FTP",现如今已然成为文件传输的代名词:FTP 是Internet上最早出现且使用也最为广泛的一种文件传输服务.基于C/S架构,工作在应用层且通过该服务可在FTP服务器和FTP客户端之间建立连接,实现FTP服务器和FTP客户端之间的数据文件传输:

Azure + vsftpd + ubntu14 + 虚拟用户 遇到的问题:从网上摘抄

:在Azure安装好ubuntu虚拟机,安装包选择ubuntu14.04 LTS,选择LTS,以便微软对其以后的更好支持,不选就可能技术支持不会很久,现只开一台,端口默认选择22 :打开虚拟机,进入端点设置,已经启用端口22 :在本地windows中用Xshell连接虚拟机,用ssh2方式,主机地址在虚拟机的仪表盘下面ssh详细信息看到,端口选22 :连接成功了先安装vsftpd : sudo apt-get install vsftpd : 然后配置:sudo vim /etc/vsftpd.

vsftpd的安装配置及lftp命令的使用

vsftpd(very secure FTP daemon)是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它是一个安全.高速.稳定的FTP服务器 一.FTP FTP(File Transfer Protocol,文件传输协议)用于Internet上的控制文件的双向传输.同时,它也是一个应用程序(Application).基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件. 1.ftp基于C/S架构 client: ftp.lftp.lftpge

Liunx 环境下vsftpd的三种实现方法(超详细参数)

以下文章介绍Liunx 环境下vsftpd的三种实现方法 ftp://vsftpd.beasts.org/users/cevans/vsftpd-2.0.3.tar.gz,目前已经到2.0.3版本.假设我们已经将vsftpd-2.0.3.tar.gz文件下载到服务器的/home/xuchen目录 代码: # cd /home/xuchen # tar xzvf vsftpd-2.0.3.tar.gz //解压缩程序 # cd vsftpd-2.0.3 三.三种方式的实现            

linux基础知识的总结

例如以下内容是我对linux基础知识的总结,由于本人在初期学习linux的时候走了不少的弯路,对于基础的掌握耗费了不少的时间,所以为了后来者对linux的基础部分有个清晰的了解,特对基础知识进行了总结,由于水平有限.难免有疏忽或者不准确的地方.希望大家可以直接指出来,我会及时改正.一切为了知识的传播.^_^ ? *********************************************************************************************

centos 6.5 搭建ftp 服务器(vsftpd的配置文件说明)

0x00 如何快速的搭建简易的资源发布站 开启简易的python http服务器 1 2 cd /home/your_path python -m SimpleHTTPServer 8000 开启防火墙的对应端口 1 vim /etc/sysconfig/iptables 增加对应的端口就好 0x01 知识储备 FTP通道解释 FTP包含了两个通道,一个叫控制通道,一个叫数据通道: 控制通道:控制通道是和FTP服务器进行沟通的通道,连接FTP,发送FTP指令都是通过控制通道来完成的. 数据通道:

Linux下FTPserver的实现(仿vsftpd)

继上一篇博文实现Linux下的shell后,我们进一步利用网络编程和系统编程的知识实现Linux下的FTPserver.我们以vsftpd为原型并实现了其大部分的功能.因为篇幅和时间的关系,这里不再一一赘述详细的实现过程,而是简要概述功能实现思想和部分核心代码. (一)基本框架和流程 先解决两个疑问: (1)为什么要使用nobody进程和服务进程两个进程? 在PORT模式下,server会主动建立数据通道连接client,server可能就没有权限做这样的事情,就须要nobody进程来帮忙. N

Linux快速入门04-扩展知识

这部分是快速学习的最后一部分知识,其中最重要的内容就是源码的打包和软件的安装的学习,由于个人的Linux学习目的就是自己能在阿里云Ubuntu上搭建一个简单的nodejs发布环境. Linux系列文章 快速入门系列--Linux--01基础概念 快速入门系列--Linux--02文件系统管理 快速入门系列--Linux--03系统管理 快速入门系列--Linux--04扩展知识 由于现在均是使用云平台,这部分内容已完全透明,因而只做一个简单的了解,整个linux的启动过程包含如下8个步骤: 1.