FTP主被动模式详解、FTP服务器的搭建及FileZilla的安装使用

2024-01-27 06:20

本文主要是介绍FTP主被动模式详解、FTP服务器的搭建及FileZilla的安装使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、FTP主被动模式详解

1.被动模式

2.主动模式

3.主被动模式的区别

二、FTP服务架设

1、环境要求

2、创建用户组

3、创建用户

4、安装FTP服务器 

5、配置FTP服务器 

6、设置目录权限 

7、重启服务器(可选)

三、FTP服务器连接验证 

1.本机浏览器验证

2.局域网访问验证

1.设置入站规则

2.设置访问

四、FileZilla的安装及使用 

1.什么是FileZilla

2.下载FileZilla

3.安装FileZilla

1. 服务端安装

2.客户端安装 

3.FileZilla的使用 

1.服务端的使用

1.1服务端的被动模式设置

2.2 设置防火强规则 

2.3 配置组

2.4 配置用户

2.服务端的使用 


前言:       

       简单了解下FTP,FTP是什么?

        FTP(文件传输协议)是一种用于在网络上进行文件传输的标准协议。通过FTP,用户可以从服务器上下载或上传文件,实现文件的远程访问和共享。

        FTP协议可以在多种网络环境下工作,包括局域网、互联网和广域网等。它使用TCP/IP协议作为传输层协议,提供可靠的、面向连接的数据传输服务。

        FTP服务器是指运行FTP协议的计算机,通常用于存储和管理文件。客户端是指使用FTP协议进行文件传输的计算机或应用程序。

        除了常见的主动模式和被动模式外,FTP还有其他一些功能和特点,例如支持多种数据传输模式(二进制和文本模式)、支持登录验证、支持文件权限和目录结构等。

        在实际应用中,FTP通常用于网站的主机服务、文件存储和备份、软件更新、数据迁移等方面。同时,也有一些安全措施可以加强FTP服务器的安全性,例如使用SSL加密通信、设置用户权限和访问控制等。


一、FTP主被动模式详解

        FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式(如果是IPv6,则分别是EPRT和EPSV)。主动被动都是相对于服务器来说的

1.被动模式

        FTP默认使用被动模式传输数据,如图所示FTP登录成功后,客户端向服务器发送PASV指令,告诉服务器使用的被动模式。服务器接受指令后,开放一个随机端口(端口大于1024),并将该端口信息回复客户端。客户端接受到服务器传来的端口信息后,建立一条数据链路来传送数据。

2.主动模式

        如图所示FTP登录成功后,由客户端开放一个随机端口(端口大于1024)后向服务器发送PORT指令,告诉服务器使用的主动模式。于是服务器从20端口向客户端开放的随机端口发送连接请求,建立一条数据链路来传送数据。

3.主被动模式的区别

由上面的连接图可以得出,二者的区别主要在于建立数据传输连接的时候,主模式的连接发起方为服务器端,使用20号端口连接客户端的端口建立数据连接;被动模式连接发起方为客户端,客户端使用端口号+1去连接服务器的端口建立数据连接;

二、FTP服务架设

        本篇以 windows server 2008 为例,操作均在VMware 16 pro 搭建的windows server 2008 环境下完成。

1、环境要求

        安装有windows server 2008或者其他服务器版本的window操作系统的机器

2、创建用户组

        server 2008对用户组和用户的管理比较严格,而且我们作为一个ftp服务器,肯定涉及到非常多的用户,单独使用用户来管理工作量非常大而且不显示,所以这里我们首先创建一个用户组ftpGroup

        打开 服务器管理器、左侧菜单:配置 -> 本地用户和组 -> 组 在组上右键 -> 新建组 填入组名,点击创建

3、创建用户

        左侧菜单:配置 -> 本地用户和组 -> 用户 在用户上右键 -> 新用户 填入条件、创建

        创建完成后找到刚创好的用户右键 -> 属性 -> 隶属于,将图中原有的隶属关系删除,添加

         在新弹出的窗口中点击高级,再次弹出窗口、立即查找找到之前创建好的组,确定。

4、安装FTP服务器 

        左侧菜单:角色 在角色上右键  -> 添加角色,进行下一步,找到web服务器(IIS)进行两次下一步后找到并勾选ftp服务器继续下一步安装等待完成即可

5、配置FTP服务器 

         左侧菜单:角色 -> web服务器 -> internet信息服务(IIS)管理器。 在网站上右键->添加FTP站点。填写站点名称,选择物理路径,点击下一步。 站点名称不要包含中文、物理路径为本地文件夹、没有SSL证书,选择无,下一步,身份验证选择基本 授权选择指定角色或用户组。 ftpGroup  (这里使用我们第一步创建的ftp分组) 权限(读写权限)完成。

6、设置目录权限 

        找到磁盘文件,右键->属性、切换到安全标签,点击编辑、点击添加、高级设置、立即查找找到ftpGroup确定即可

7、重启服务器(可选)

        由于涉及用户组的变更,可能需要重启后才能生效。建议重启服务器后再测试连接。 否则可能导致无法连接ftp服务器

        在服务器管理器中找到上述操作创建的ftpserver,在右侧菜单中点击重新启动   

三、FTP服务器连接验证 

1.本机浏览器验证

        Win + R 打开命令行窗口 输入ftp:\\localhost。用户名为 ftptest 上述操作中创建的用户、登录后显示页面

2.局域网访问验证

1.设置入站规则

         左侧菜单:配置 ->高级安全 Windows 防火墙 -> 入站规则,找到“FTP 服务器(FTP 流入量)”右键属性,在程序和服务一栏中复制图中指示的部分

          左侧菜单:配置 ->高级安全 Windows 防火墙 -> 入站规则、右键新建规则。选中程序,下一步、在程序路径中粘贴上述操作复制的路径,紧接着弹出窗口,是、重复下一步完成操作

2.设置访问

        Win + R 打开命令行窗口 输入cmd 打开黑窗口,在黑窗口中输入 telnet 192.168.36.136 21

Win + E 打开文件资源管理器 输入ftp://192.168.36.136/ 弹出登录身份输入密码后登录完成操作

四、FileZilla的安装及使用 

1.什么是FileZilla

        FileZilla是一个免费开源的 FTP 软件,分为 客户端 版本和服务器版本,具备所有的FTP软件功能。 可控性 、有条理的界面和管理多站点的简化方式使得Filezilla客户端版成为一个方便高效的FTP客户端工具,而 FileZilla Server 则是一个小巧并且可靠的支持FTP&SFTP的 FTP服务器软件。

2.下载FileZilla

        下载地址:FileZilla - The free FTP solution

          如图所示,一个为客户端,一个为服务端。我们两个都进行下载。在主机中安装客户端,虚拟机中则安装服务端。

3.安装FileZilla

1. 服务端安装

        安装的过程非常简单,直接下一步就可以了,需要说明的是,下图中的端口指的是FileZilla服务器的管理端口,不是ftp传输时使用的端口,直接使用默认即可

        安装时会提示输入filezilla服务器的管理密码,输入自己容易记住的密码即可

2.客户端安装 

        客户端的安装非常简单,直接下一步就可以了

3.FileZilla的使用 

1.服务端的使用

1.1服务端的被动模式设置

        进入服务端后点击菜单中的编辑、打开设置、找到被动模式设置。在被动模式设置中勾选自定义端口范围中输入端口范围

        如:50000 - 50010,设置完成后确定。 然后需要将上面设置的端口范围定义到防火墙的入站规则中

(如果不配置,则客户端的连接会被防火墙拦截)

2.2 设置防火强规则 

2.3 配置组

        - 设置 -> 组 -> “General”项 点击【添加】按钮, 添加一个组

2.4 配置用户

        使用FileZilla可以为不同的用户设置访问不同的目录,这也是设置不同的用户的主要目的,需要注意的是不同的客户端是可以使用相同的用户登录的,只要知道密码可以。

        - 设置 -> 用户 -> “General” 项 点击【添加】按钮, 添加一个用户
        - ”Shared Folders”项, 添加该用户有权操作的目录,如果只用一个目录则必须为主目录,如果多个,则必须有一个为主目录
重复操作添加两个用户
       

2.服务端的使用 

        因为已经在服务端配置了被动方式,所以在连接时直接指定被动方式进行连接
        文件 -> 站点管理
        击【新站点】创建一个站点,输入主机,端口(默认为21 ),用户,密码
        点击传输设置,选择【被动】

         出现类似如下所示的界面,说明连接成功:

        将需要上传的文件右键上传或者拖动至远程站点即可进行文件上传 

        在服务端打开文件存放文章即可查看上传的文件

这篇关于FTP主被动模式详解、FTP服务器的搭建及FileZilla的安装使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/649311

相关文章

QT6中绘制UI的两种方法详解与示例代码

《QT6中绘制UI的两种方法详解与示例代码》Qt6提供了两种主要的UI绘制技术:​​QML(QtMeta-ObjectLanguage)​​和​​C++Widgets​​,这两种技术各有优势,适用于不... 目录一、QML 技术详解1.1 QML 简介1.2 QML 的核心概念1.3 QML 示例:简单按钮

使用Java将实体类转换为JSON并输出到控制台的完整过程

《使用Java将实体类转换为JSON并输出到控制台的完整过程》在软件开发的过程中,Java是一种广泛使用的编程语言,而在众多应用中,数据的传输和存储经常需要使用JSON格式,用Java将实体类转换为J... 在软件开发的过程中,Java是一种广泛使用的编程语言,而在众多应用中,数据的传输和存储经常需要使用j

一文详解PostgreSQL复制参数

《一文详解PostgreSQL复制参数》PostgreSQL作为一款功能强大的开源关系型数据库,其复制功能对于构建高可用性系统至关重要,本文给大家详细介绍了PostgreSQL的复制参数,需要的朋友可... 目录一、复制参数基础概念二、核心复制参数深度解析1. max_wal_seChina编程nders:WAL

Nginx路由匹配规则及优先级详解

《Nginx路由匹配规则及优先级详解》Nginx作为一个高性能的Web服务器和反向代理服务器,广泛用于负载均衡、请求转发等场景,在配置Nginx时,路由匹配规则是非常重要的概念,本文将详细介绍Ngin... 目录引言一、 Nginx的路由匹配规则概述二、 Nginx的路由匹配规则类型2.1 精确匹配(=)2

一文详解如何查看本地MySQL的安装路径

《一文详解如何查看本地MySQL的安装路径》本地安装MySQL对于初学者或者开发人员来说是一项基础技能,但在安装过程中可能会遇到各种问题,:本文主要介绍如何查看本地MySQL安装路径的相关资料,需... 目录1. 如何查看本地mysql的安装路径1.1. 方法1:通过查询本地服务1.2. 方法2:通过MyS

电脑软件不能安装到C盘? 真相颠覆你的认知!

《电脑软件不能安装到C盘?真相颠覆你的认知!》很多人习惯把软件装到D盘、E盘,刻意绕开C盘,这种习惯从哪来?让我们用数据和案例,拆解背后的3大原因... 我身边不少朋友,在使用电脑安装软件的时候,总是习惯性的把软件安装到D盘或者E盘等位置,刻意避开C盘。如果你也有这样的习惯,或者不明白为什么要这么做,那么我

Mysql数据库中数据的操作CRUD详解

《Mysql数据库中数据的操作CRUD详解》:本文主要介绍Mysql数据库中数据的操作(CRUD),详细描述对Mysql数据库中数据的操作(CRUD),包括插入、修改、删除数据,还有查询数据,包括... 目录一、插入数据(insert)1.插入数据的语法2.注意事项二、修改数据(update)1.语法2.有

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

SQL Server中的PIVOT与UNPIVOT用法具体示例详解

《SQLServer中的PIVOT与UNPIVOT用法具体示例详解》这篇文章主要给大家介绍了关于SQLServer中的PIVOT与UNPIVOT用法的具体示例,SQLServer中PIVOT和U... 目录引言一、PIVOT:将行转换为列核心作用语法结构实战示例二、UNPIVOT:将列编程转换为行核心作用语

Python logging模块使用示例详解

《Pythonlogging模块使用示例详解》Python的logging模块是一个灵活且强大的日志记录工具,广泛应用于应用程序的调试、运行监控和问题排查,下面给大家介绍Pythonlogging模... 目录一、为什么使用 logging 模块?二、核心组件三、日志级别四、基本使用步骤五、快速配置(bas