Linux服务器构建与运维管理-CentOS-实验10:面向互联网的FTP文件服务
棒棒堂智能运维
编辑于 2026年03月11日 19:50
收录于文集
共17篇

一、实验目的

1、了解FTP;

2、掌握通过vsftpd发布访问FTP服务。

二、实验学时

2学时

三、实验类型

综合型

四、实验需求

1、硬件

每人配备计算机1台。

2、软件

Windows操作系统,安装Oracle VM VirtualBox软件,安装Mobaxerm软件。

3、网络

本地主机与虚拟机能够访问互联网,不使用DHCP服务。

4、工具

无。

五、实验任务

1、完成vsftpd的在线安装与配置;

2、完成vsftpd服务的管理;

3、完成通过vsftpd发布访问的FTP服务。

六、实验环境

1、本实验需要VM 1台;

2、本实验VM配置信息如下表所示;

3、本实验拓扑图。

4、本实验操作演示视频。

本实验为视频集的第7集:网页链接​

七、实验内容及步骤

1、场景描述

创建一个允许用户通过互联网连接到文件共享服务器,并进行文件的上传和下载操作。

需要提供一个安全、可靠且易于使用的FTP服务,以满足用户的文件传输需求。

2、需求描述

(1)支持用户通过互联网进行远程连接。

(2)允许用户进行文件的上传和下载操作。

3、解决方案

(1)使用专业的FTP服务器软件vsftpd。

(2)在服务器上配置防火墙,打开FTP服务所需的端口(一般是21端口)。

(3)配置匿名访问选项,需要允许匿名用户访问。

4、具体部署

(1)使用dnf install命令在线安装vsftpd服务。

(2)使用systemctl启动vsftpd服务,设置为开机自启动并查看服务状态。

(3)使用firewall-cmd命令添加防火墙规则,允许所有客户端可以访问ftp服务,并重新载入防火墙规则使其生效,并将SELinux设置为permissive模式。

(4)使用mkdir创建共享目录/var/ftp/share,设置目录权限为755,并修改目录的所有者和所属组为ftp。

(5)使用cp命令备份vsftpd服务的配置文件vsftpd.conf。

(6)使用vi命令修改vsftpd.conf配置文件发布FTP服务。

(7)使用systemctl restart命令重启vsftpd服务使其配置生效。

代码块
Shell
自动换行
复制代码
# 在线安装vsftpd服务
[root@Lab-10-Task-01 ~]# dnf install -y vsftpd
# 启动vsftpd服务
[root@Lab-10-Task-01 ~]# systemctl start vsftpd
# 设置vsftpd服务为开机自启动
[root@Lab-10-Task-01 ~]# systemctl enable vsftpd
# 查看vsftpd服务状态
[root@Lab-10-Task-01 ~]# systemctl status vsftpd

# 允许所有客户端可以访问ftp服务
[root@Lab-10-Task-01 ~]# firewall-cmd --zone=public --add-service=ftp --permanent
# 重新载入防火墙规则使其生效
[root@Lab-10-Task-01 ~]# firewall-cmd --reload
# 将SELinux设置为permissive模式
[root@Lab-11-Task-01 ~]# setenforce 0

# 创建共享目录,设置目录权限为777,并修改目录的所有者和所属组为ftp并设置用户密码
[root@Lab-11-Task-01 ~]# mkdir -p /var/ftp/share
[root@Lab-11-Task-01 ~]# chmod 777 -R /var/ftp/share
[root@Lab-11-Task-01 ~]# chown ftp:ftp /var/ftp/share
[root@Lab-11-Task-01 ~]# passwd ftp

# 备份vsftpd服务的配置文件vsftpd.conf
[root@Lab-10-Task-01 ~]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak1
# 修改vsftpd.conf配置文件发布FTP服务
[root@Lab-10-Task-01 ~]# vi /etc/vsftpd/vsftpd.conf
# --------------------vsftpd.conf文件--------------------
# 允许匿名用户登录
anonymous_enable=YES
# 允许所有登录拥有写权限
write_enable=YES
# 允许匿名用户上传文件
anon_upload_enable=YES
# 允许匿名用户创建目录
anon_mkdir_write_enable=YES
# 允许匿名用户删除、重命名等
anon_other_write_enable=YES
# 权限掩码,匿名用户上传文档时预设的权限掩码
local_umask=022
# --------------------vsftpd.conf文件--------------------

# 重启vsftpd服务使配置生效
[root@Lab-10-Task-01 ~]# systemctl restart vsftpd
复制成功

5、服务测试

5.1 安装FTP客户端FileZilla

(1)从FileZilla的官方网站(https://www.filezilla.cn)获取FTP客户端可执行程序。

(2)安装完成后,启动FileZilla客户端,在左上角的“主机”输入框中输入“172.20.1.23”,用户名密码留空,端口默认,点击“快速连接”,如图10-1所示。

图 10-1 连接FTP服务

5.2上传文件测试

(1)在Window本地主机创建名为“上传测试.docx”的文件。

(2)将“上传测试.docx”文件上传到FTP服务的/share目录下,如图10-2所示。

图 10-2 上传文件

5.3下载文件测试

(1)在ssh远程终端进入到/var/ftp/pub目录下创建“下载测试.docx”文件。

(2)将FTP服务/pub目录下的“下载测试.docx”文件下载到Windows本地,如图10-3所示。

图10-3 下载文件

5.4 创建、删除和重命名文件测试

(1)在FTP服务/share目录下创建“文本1.txt”文件,创建“目录1”目录。

(2)删除“文本1.txt”文件。

(3)将“目录1”目录重命名为“测试目录”。