太友帮_【非保定】山西专业网站维护公司
【非保定】山西优质网站维护供应商

深入解析FTP服务:工作原理、优势及与HTTP的区别

 

(PAM)配置文件,主要用来加强vsftpd服务器的用户认证②配置匿名用户登录的FTP服务器实例公司内部现在有一台FTP服务器和Web服务器,FTP主要用于维护公司网站内容,包括上传文件,创建目录,更新网页等。将FTP服务器和Web服务器放在一起是企业常用的

目录

1.FTP相关知识

基于HTTP的WWW服务功能虽然强大,但对于文件传输来说稍显不足。专门用于文件传输的FTP服务应运而生

FTP服务是一种文件传输服务。整个过程就是文件。顾名思义,它是一种文件传输协议,文件传输可靠性更强,效率更高。

1.FTP 的工作原理

FTP大大简化了文件传输的复杂性。它使得文件系统可以通过网络从一台主机传输到另一台计算机,而不受计算机和操作系统的限制。

Ⅰ.客户端向服务器发送连接请求,同时客户端系统动态打开大于1024的端口,等待服务连接。

二.如果FTP服务器在端口21上侦听请求,则客户端的端口1031和服务器的端口21之间将建立FTP会话连接。

三.当需要传输数据时,FTP客户端动态打开大于1024的端口,连接到服务器的20端口,并在两个端口之间传输数据。当数据传输完成后,这两个端口将自动关闭。

四.当客户端与FTP服务器断开连接时,客户端上动态分配的端口将自动释放。

2.FTP工作模式

FTP服务有两种工作模式:主动传输模式(FTP)和被动传输模式(FTP)

3.匿名用户

FTP 服务与 WWW 不同。它首先需要登录服务器,然后传输文件。这对于很多公开提供软件下载的服务器来说是非常不方便的,于是匿名用户访问就诞生了:通过使用通用的用户名和无限制密码的管理策略(一般使用用户的电子邮件地址作为密码),任何用户都可以轻松从FTP服务器下载软件

2、Linux服务器端和客户端的项目设计和配置信息准备

主机名

操作名称

IP地址

角色

8

8

192.168.80.3

FTP服务器

8

8

192.168.80.4

FTP客户端

192.168.10.1

主机、FTP 客户端

项目实施一.安装、启动和停止服务

[root@dns ~]# yum -y

[root@dns ~]# yum -y ftp

[root@dns ~]# rpm -qa | grep

[root@dns ~]# rpm -qa | grep ftp

[root@dns ~]#

[root@dns ~]#

[root@dns ~]# -cmd -- --add-=ftp

[root@dns ~]# -cmd --

[root@dns ~]# -p =on //打开

二.了解配置文件

1.主配置文件(/etc//.conf)

=[yes|no] 是否以独立模式监控服务=IP地址 设置监控的IP地址=21 设置FTP服务的监听端口=[yes|no] 是否允许文件下载

=[是|否]

=[yes|no] 设置用户列表“允许”或“禁止”操作

=0 最大客户端连接数,0表示无限制 =0 同一IP地址最大连接数; 0表示不限制=[yes|no]是否允许匿名用户访问

=[yes|no]是否允许匿名用户上传文件=022 匿名用户上传文件的umask值=/var/ftp 匿名使用的FTP根目录 ble=[yes|no]是否允许匿名用户创建目录ble=[是| no]是否允许匿名用户其他写权限(包括重命名、删除等)=0 匿名用户最大传输速率,0表示不限制=[yes|no]是否允许本地用户登录FTP =022 本地用户上传文件的umask值

=/var/ftp 本地用户的FTP根目录

=[yes|no] 是否限制用户对FTP目录的权限,保证安全=0 本地用户最大传输速率(KB/S),0表示不限制

2./etc/pam.d/

(PAM)配置文件,主要用于加强服务器的用户认证

3./etc//

位于此文件中的所有用户将无法访问该服务。当然,出于安全考虑,这个文件默认已经包含了root、bin等系统账户。

4./etc//

该文件中包含的用户可能会被拒绝访问该服务,也可能会被允许访问,具体取决于主配置文件/etc//.conf中的“”参数设置为yes或no

5./var/ftp文件夹

该文件夹是提供服务的文件分发中心,它包含一个pub子目录。在默认配置下,所有目录都是只读的,但只有root有写权限。

三.配置匿名用户FTP实例

① 认证方式

允许用户通过3种认证方式登录FTP服务器,

匿名开放模式:是最不安全的认证模式。无需验证密码,无需直接登录FTP服务器。本地用户模式:是通过Linux系统本地账户信息进行认证的模式。与匿名开放模式相比,该模式更加安全且配置简单。但如果账户信息被黑客破解,你可以畅通无阻地登录FTP服务器,完全控制整个服务器。虚拟用户模式:是最安全的认证模式。它需要为FTP服务创建一个单独的用户数据库文件。虚拟映射用于验证账户信息以进行密码验证。但这些账户信息实际上并不存在于服务器系统中,仅用于FTP。服务程序用于认证。

②配置匿名用户登录的FTP服务器实例

示例:新建一个FTP服务器网站维护公司,允许匿名用户上传和下载文件。匿名用户的根目录设置为/var/ftp

1.新建测试文件并编辑/etc//.conf

将=NO改为=YES //允许匿名用户登录

添加

=/var/ftp //设置匿名用户的根目录为/var/ftp

=YES //允许匿名用户上传文件

ble=YES //允许匿名用户创建文件夹

ble=YES //表示允许匿名用户删除文件

2.允许,让防火墙允许ftp服务,并重启服务

3、在客户端资源管理器中输入ftp://192.168.80.3,打开pub目录,新建文件夹

原因是什么?原来是系统的本地权限没有设置。

4、设置本地系统权限,设置所有者为ftp,或者授予其他用户对pub目录的写权限

5.重启服务器并再次测试

创建新文件夹

尝试上传文件

上传了一个 html 文件

返回ftp服务器,查询

上传成功

6.尝试在Linux客户端上传、下载文件

要在 Linux 上进行测试,请输入 ftp 作为用户名,然后按“enter”键输入密码。

下载文件:

上传文件:

四、本地模式下配置常规FTP服务器案例

1.FTP服务器配置要求

公司现拥有FTP服务器和Web服务器。 FTP主要用于维护公司网站的内容,包括上传文件、创建目录、更新网页等。公司目前有两个部门负责维护任务,分别使用team1和team2账号进行管理。首先,只需要team1和team2帐户登录FTP服务器,但无法登录本地系统。这两个账户的根目录被限制为/web/www/html,不能进入该目录以外的任何目录。

2、需求分析

将FTP服务器和Web服务器放在一起,以方便网站的维护,是企业常用的方法。为了增强安全性,首先需要只允许本地用户访问,禁止匿名用户登录。其次,使用该功能锁定/web/www/html目录下的team1和team2。如果需要删除文件,还需要注意本地权限。

三、解决方案

① 建立用于维护网站内容的FTP帐户team1、team2和user1并禁止本地登录,然后为其设置密码。

② 配置vsftp.conf主配置文件时,进行相应修改并写入配置文件中。

=NO //禁止匿名登录

=YES //允许本地用户登录

=/web/www/html //设置本地用户的根目录为/web/www/html

=NO //是否限制本地用户,这也是默认值,可以省略

=YES //激活功能

=/etc// //设置根目录下锁定用户的列表文件

ot=YES //只要启动了就必须加上这个:允许限制,否则会出现连接错误

③创建/etc//文件并添加team1和team2账户

④ 防火墙允许、关闭、重启服务

⑤修改本地权限

⑥Linux客户端安装ftp

⑦ 使用ftp登录,发现530错误:

首先检查/etc//和/etc//这两个文件中是否有用于连接ftp的用户名。如果有,请将其删除。

/etc//.conf中有两条关于设置的语句

前者用于设置是否检查/etc//中的用户名,后者用于设置是否拦截/etc//和/etc//这两个文件中的所有用户。

不过我们不用担心那么多,只需确保/etc//和/etc//中没有我们的用户名即可

如果设置后还是不行,可能是pam模块设置的问题。由于用户认证FTP服务需要使用PAM模块,因此可能会因为未安装PAM模块而导致无法登录。

解决办法是打开/etc/pam.d/文件,将下面两条前面用#注释掉的语句,然后重新启动ftp。

auth .so item=用户感知=拒绝 file=/etc//ft

授权文件

⑧使用 team1 和 team2 的用户不能更改目录网站维护公司,但可以创建新文件夹。显示的是“/”,实际上是/web/www/html文件夹!

ftp::no路由到主机问题的解决办法:

1:防火墙规则不正确:解决方案:关闭防火墙或添加防火墙端口规则

2:FTP服务的工作模式错误:解决方案:将模式更改为被动模式

为什么会出现错误?

观察防火墙是否关闭或者是否允许ftp服务

网站维护公司_公司网站维护要做什么_维护网站公司名称大全

同时关闭服务器和客户端的防火墙

再试一次

如果关闭客户端的防火墙仍不能解决问题,则说明FTP服务工作模式错误。

服务器A已启动服务。服务器B通过ftp连接成功后,提示“没有到主机的路由”。

解决办法:ftp *.*.*.*

输入用户名和密码。成功后进入(关闭被动模式)改为主动模式;

再次输入ls查看ftp目录,成功!

回到正题:

发现team1和team2用户不允许更改主目录。

测试用户1用户

发现user1可以随意切换目录,下载/etc/文件到主目录,这是非常危险的。

Ⅴ.设置vsftp虚拟帐户

搭建FTP服务器并不复杂,但是需要根据服务器的用途适当规划相关配置。如果FTP服务器未对上的所有用户开放,您可以关闭匿名访问并启用物理帐户或虚拟帐户的验证机制。但在实际操作中,如果使用物理账户访问,FTP用户如果掌握了服务器的真实用户名和密码,就会对服务器造成潜在的危害。如果FTP服务器设置不当,用户可能会使用物理账户进行非法操作。因此,为了FTP服务器的安全,可以采用虚拟用户认证,即将虚拟账号映射到服务器的物理账号,客户端使用虚拟账号访问FTP服务器。

需求:使用虚拟用户user2和user3登录FTP服务器,访问主目录/var/ftp/pub。用户只允许查看文件,不允许进行上传、修改等操作。

1.创建用户数据库

(1) 首先,将保存虚拟帐户和密码的文本文件保存为以下格式:

虚拟账户1

密码

虚拟账户2

密码

使用vim编辑器创建用户文件vuser.txt并添加虚拟帐户user2和user3。

(2)。生成数据库

保存虚拟账号和密码的文本文件不能被系统账号直接调用。需要使用命令生成db数据库。

文档。

(3)。修改数据库文件访问权限

数据库文件存储虚拟帐号和密码信息。为了防止非法用户窃取,可以修改文件权限。

2.配置PAM文件

为了让服务器能够使用数据库文件并对客户端进行身份验证,需要调用系统的PAM模块。 PAM ( ) 可识别可插入的身份验证模块,而无需重新安装应用程序。您可以通过修改指定的配置文件来调整程序的身份验证方法。

(1).备份/etc/pam.d/文件

(2)。修改配置文件,将所有默认配置用“#”注释,并添加相应字段

3.创建系统用户对应的虚拟账户

[root@ ~]# -d /var/ftp/vuser vuser ---指定主目录为 /var/ftp/vuser

[root@ ~]# chown vuser.vuser /var/ftp/vuser ---更改归属关系

[root@ ~]# chmod 555 /var/ftp/vuser --更改权限

[root@ ~]# ls -ld /var/ftp/vuser --查看详细信息

4、修改/etc//.conf

=否

=否

布莱=否

ble=NO //为了保证服务器的安全,关闭匿名访问等匿名设置

=YES //虚拟账户会映射到服务器的系统账户,因此需要启用本地账户支持。

=是

ot=YES //锁定账户根目录

=NO //关闭用户的写权限

=YES //启用虚拟账户访问功能

=vuser //设置虚拟账户对应的系统账户为vuser

=YES //设置FTP服务器独立运行

= //配置vsftp使用的PAM模块。

5.关闭防火墙并允许访问

6. 客户端测试

主目录不能更改,只能查看,不能写入。

Ⅵ.补充服务器端主动、被动模式配置

(1):主动模式配置:

=YES //启用主动模式

=YES //指定开启主动模式时是否启动默认20端口监听

=%% //当上一个选项使用NO参数时指定数据传输端口。

(2)被动模式配置

=否

=YES //启用被动模式

=%% //被动模式最低端口

=%% //被动模式最大端口

注意:部分素材来源于网络,如有侵权,请及时联系作者处理

服务热线

15928132840

SEO网站优化

网站建设服务

小程序服务

项目定制化服务

太友帮客服微信_【非保定】山西专业网站维护公司

客服微信