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 ...
随机推荐
- 数据库中char和varchar的区别
1. char类型的长度是固定的,varchar的长度是可变的. 这就表示,存储字符串'abc',使用char(10),表示存储的字符将占10个字节(包括7个空字符) 使用varchar2(10),, ...
- 直接插入排序java代码
//直接插入排序(无哨兵) 通过测试 public class InsertSortTest{ public static void insertSort(int[] arr) { for (int ...
- mysql索引分类及实现原理
索引分类:主键索引.唯一索引.普通索引.全文索引.组合索引 1.主键索引:即主索引,根据主键pk_clolum(length)建立索引,不允许重复,不允许空值 ALTER TABLE 'table_n ...
- java+大文件上传+下载
我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用. 这次项目的需求: 支持大文件的上传和续传,要求续传支持所有浏览器,包括ie6,ie7,i ...
- 实现同时将一批.bmp文件转换成.mat格式
%% 功能:实现同时对一批.bmp文件的转换成.mat格式PicFormat = {'*.bmp','Bitmap image (*.bmp)';... '*.jpg','JPEG image (*. ...
- Java集合框架系列大纲
###Java集合框架之简述 Java集合框架之Collection Java集合框架之Iterator Java集合框架之HashSet Java集合框架之TreeSet Java集合框架之Link ...
- CentOS7 安装JumpServer
环境: CentOS Linux release 7.6.1810 (Core) JumpServer 1.4.8 Python 3.6.X MariaDB 编译安装Python3.6 首先,下载Py ...
- JS基础_toString()
当我们直接在页面中打印一个对象时,实际上是输出的对象的toString()方法的返回值 如果我们希望在输出对象时不输出[ object Object ],可以为对象添加一个toString()方法或者 ...
- React 番外篇
小技巧:如果我们想了解一门技术,不知道如何学习,那就在 BOSS 直聘上,来看看对这门技术的要求 这篇给大家讲的是 React 1.0 的初始版本,仅仅是让大家有个了解,毕竟回顾历史,我们才能找到他最 ...
- electron关于页面跳转 的问题
刚开始看到页面跳转,大家一般会想到用 window.location.href = './index.html'; 这样的代码.结果是可以跳转,但 DOM事件 基本都会失效.到最后还是使用的 elec ...