FTP简单搭建(一)
一、FTP服务介绍
vsftp(very security ftp file transfer protocol 非常文件传输协议)
FTP分为主动模式和被动模式。
主动模式:(不安全,传数据的端口是固定的20号,容易被截取)
1、 客向服的21号端口发送连接请求信号
2、 服使用20号端口主动和客连接,服使用20号发送的数据,客通过>1024的随机端口接收。
被动模式:(安全,传数据的端口是>1024的随机端口,不易被截取)
1、 客向服的21号端口发送连接请求信号
2、 服使用>1024随机端口主动和客连接,服使用>1024的随机端口发送的数据,客通过>1024+1的随机端口接收。
#lftp 登录服务器的这一瞬间的流程:
1、-------------tcp connection ------------->
首先,客户端向服务端发送建立连接的请求
2、<-------------220 ready ----------------
服务端反馈220的代码,表明21号端口处于正常侦听状态
3、-------------USER --------------------->
客户端向服务端发送一个用户名
4、<-------------331 authentication-----------
服务端反馈331代码,要求客户端输入验证密码
5、-------------PASSWD------------------->
客户端向服务端发送密码
6、<-------------230 login-------------------
服务端反馈230代码,如果验证通过允许客登录
7、-------------pwd ----------------------->
客户端向服务端发送一条指令,例如pwd显示当前路径
8、<-------------257 work path --------------
服务端反馈代码,显示当前工作路径,每个指令的反馈代码都不同
二、实验环境
VMware Workstation Pro15
Red Hat Enterprise Linux Server release 7.3 (Maipo)
xshell 6(可不需要)
三、安装服务
[root@b ~]# yum install -y vsftpd lftp
四、匿名用户访问
直接重启服务即可
[root@b ~]# systemctl restart vsftpd
测试
[root@b ~]# >/var/ftp/pub/
[root@b ~]# ll /var/ftp/pub/
-rw-r--r--. root root Jul : /var/ftp/pub/
[root@b ~]# lftp b.kkcn.host
lftp b.kkcn.host:~> ls
drwxr-xr-x Jul : pub
lftp b.kkcn.host:/> cd pub/
lftp b.kkcn.host:/pub> ls
-rw-r--r-- Jul :
lftp b.kkcn.host:/pub> get
lftp b.kkcn.host:/pub> exit
[root@b ~]# ll
-rw-r--r--. root root Jul :
五、配置文件简述
vim /etc/vsftpd/vsftpd.conf 主配置文件 anonymous_enable=YES 允许匿名访问 local_enable=YES 允许本地 write_enable=YES 允许写入 anon_upload_enable=YES 允许匿名上传 anon_mkdir_write_ enable=YES 允许匿名用户创建新的目录 dirmessage_enalbe=YES 开启目录提示功能 xferlog_enable=YES 激活上传下载的日志 connect_from_port_20=YES 开启20号端口的主动模式 chown_username=whoever 指定匿名上传的用户 xferlog_file=/var/log/xferlog 日志文件,这个要反注释打开 xferlog_std_format=YES 启用日志的标准格式 idle_session_timeout= 连接上服务器10分钟内,如果什么操作都不做,就会被服务器踢掉,默认300秒 date-connection-timeout= 会话超时时间,如果因为断线导致连接断开,2分钟后,服务端会把客户端踢下去,默认300秒 ftpd_banner=Welcome to joinlabs 欢迎信息,在lftp没用 listen=NO NO只侦听ipv4, YES侦听ipv4和ipv6 listen_ipv6=YES 支持ipv6,但是不侦听ipv6也没用 userlist_enable=YES 启用黑名单
六、配套设置
FTP简单搭建(一)的更多相关文章
- linux ftp 简单搭建
1.安装 yum install vsftpd 2.重启服务 /sbin/service vsftpd restartShutting down vsftpd: [ OK ]Starting vsft ...
- FTP简单搭建(二)
六.配套设置 1.基于用户名的上传和下载 创建用户 useradd alex echo redhat |passwd --stdin alex 指定用户登录的路径 可不设置,不设置则为用户家目录 mk ...
- ftp服务器搭建及简单操作
ftp服务器搭建及简单操作 1. 添加一个新用户,使用名useradd testftp,然后使用passwd testftp对新添加的用户设置密码(这里设置为“1234567”). 2. 安装ftp服 ...
- [原创]LAMP+phpmyadmin+FTP环境搭建
***简单ftp服务器搭建: rpm –qa|grep vsftpd //检查是否安装服务 yum –y install vsftpd-* //安装服务 mkdir /var/ftp/uplo ...
- ftp&nginx搭建图片服务器
下面使用ftp+nginx搭建一个简单的服务器 ftp用于文件的传输 nginx提供http服务 nginx服务器的安装和配置可以参照之前的教程:nginx安装及其配置详细教程 下面介绍ftp服务的安 ...
- (转)【Java FTP及FTP服务器搭建】
转至 http://blog.csdn.net/studyvcmfc/article/details/8147052 目录(?)[+] -[Java FTP及FTP服务器搭建] 一:本文采用apach ...
- 基于腾讯云centos简单搭建VSFTP
基于腾讯云centos7.3搭建VSFTP 环境分析: 基于vsftp服务在于云主机上,所以推荐使用FTP的PASV模式: FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动 ...
- FTP服务器搭建及自动备份设置
本次随笔内容主要是FTP服务器搭建. 其实去年十月服务器就搭建完了.当时写了个PPT保存了一下,准备以后写博客,结果时隔快一年我自己都快要看不懂我自己写的PPT了 ( = o = ) 不过还是尽量尝 ...
- python简单搭建HTTP Web服务器
对于Python 2,简单搭建Web服务器,只需在i需要搭建Web服务器的目录(如C:/ 或 /home/klchang/)下,输入如下命令: python -m SimpleHTTPServer 8 ...
随机推荐
- Windows netsh命令的使用
Windows netsh命令 netsh(也被称为网络壳层),是一个存在于自微软 Windows 20000开始的所有Windows NT系列中的命令行工具. netsh允许本地或远程配置网络设备. ...
- fastclick无需对IOS11及以上做处理
// 解决click点击300毫秒延时问题 (IOS11及以上无需处理) import FastClick from 'fastclick' const device = navigator.user ...
- Python的f.seek(offset, whence)函数
file.seek()方法标准格式是:seek(offset,whence=0)offset:开始的偏移量,也就是代表需要移动偏移的字节数whence:给offset参数一个定义,表示要从哪个位置开始 ...
- Unicode规范中的BOM 和 ISO8891-1编码
Unicode规范中的BOM Unicode规范中有一个BOM的概念.BOM——Byte Order Mark,就是字节序标记.在这里找到一段关于BOM的说明: 在UCS 编码中有一个叫做" ...
- 【Python之路】特别篇--多线程与多进程
并发 与 并行 的区别: 解释一:并发是在同一实体上的多个事件,并行是在不同实体上的多个事件: 解释二:并发是指两个或多个事件在同一时间间隔发生,而并行是指两个或者多个事件在同一时刻发生. 并发:就是 ...
- The Semantics of Constructors: The Default Constructor (默认构造函数什么时候会被创建出来)
本文是 Inside The C++ Object Model, Chapter 2的部分读书笔记. C++ Annotated Reference Manual中明确告诉我们: default co ...
- 判断一个ip地址合法性(基础c,不用库函数)
#include <stdio.h> int judge(char *strIp); int main() { ]; ) { scanf("%s", a); == ju ...
- dup和dup2函数简单使用
dup函数 头文件和函数原型: #include <unistd.h> int dup(int oldfd); dup函数是用来打开一个新的文件描述符,指向和oldfd同一个文件,共享文件 ...
- Codeforces 965 D. Single-use Stones(思维)
Codeforces 965 D. Single-use Stones 题目大意: 有一条河宽度为w,河上有一些石头,给出一组数(编号1~w-1),其中a[i]代表与河一岸距离为i的石头数量.每只青蛙 ...
- js保留二位小数
js保留小数常用有三种方法,可根据实际情况选择 方法一:使用toFixed保留两位小数 自带四舍五入与补位 var num1 = 55.3715; console.log(num1.toFixed(2 ...