当前位置:首页 > 行业资讯 > 物理服务器 > 正文内容

在CentOS7上搭建FTP服务器的完整指南

2025-08-09物理服务器253

海外云服务器 40个地区可选            亚太云服务器 香港 日本 韩国

云虚拟主机 个人和企业网站的理想选择            俄罗斯电商外贸虚拟主机 赠送SSL证书

美国云虚拟主机 助力出海企业低成本上云             WAF网站防火墙 为您的业务网站保驾护航


在 CentOS 7 上搭建 FTP 服务器的完整指南涵盖了从安装 vsftpd 到配置防火墙和用户权限的全过程,确保系统更新并安装 vsftpd 软件包,配置 vsftpd 的主配置文件 /etc/vsftpd/vsftpd.conf,允许本地用户登录并设置所需的安全选项,使用 firewalld 开放 FTP 端口 21 和被动模式端口范围,创建或修改用户账户,并通过 SELinux 设置适当的文件访问权限,完成这些步骤后,FTP 服务器即可正常运行,支持文件上传和下载。

随着互联网技术的快速发展,文件传输已成为日常工作中的重要组成部分,尽管现代网络协议层出不穷,FTP(File Transfer Protocol)作为一种简单高效且广泛应用的文件传输协议,依然占据着一席之地,本文将详细介绍如何在 CentOS 7 操作系统上搭建一个安全可靠的 FTP 服务器。


安装 vsftpd 服务

确保系统已经安装了 vsftpd 服务。vsftpd 是一个非常流行且安全的 FTP 服务器软件,在 CentOS 7 中默认情况下并没有安装,因此需要我们手动进行安装,请按照以下步骤操作:

  1. 打开终端并执行以下命令来安装 vsftpd

    sudo yum install vsftpd -y
  2. 安装完成后,使用 systemctl 命令启动 vsftpd 服务,并设置其开机自启:

    sudo systemctl start vsftpd
    sudo systemctl enable vsftpd

配置防火墙

为了确保外部网络能够顺利访问我们的 FTP 服务器,我们需要对防火墙进行相应的配置,CentOS 7 默认使用的是 firewalld 防火墙,因此我们需要添加一条规则以允许 FTP 流量通过:

  1. 添加一条规则以允许 FTP 流量通过:
    sudo firewall-cmd --permanent --add-service=ftp
    sudo firewall-cmd --reload

这条命令会在防火墙规则中添加 FTP 端口(21),并重新加载防火墙配置。


配置 SELinux

SELinux 是一种强制访问控制机制,旨在提高系统的安全性,在某些情况下,它可能会阻止 FTP 服务正常工作,如果遇到无法连接的问题,请检查 SELinux 的状态并根据实际情况进行调整:

  1. 查看当前 SELinux 状态:
    sestatus

输出结果中的 SELinux status 行将显示 SELinux 当前的状态(启用或禁用),如果你希望暂时禁用 SELinux 以便测试 FTP 服务是否能够正常运行,可以使用以下命令:

sudo setenforce 0

这只是临时解决方案,一旦确认问题已解决后,建议重新启用 SELinux 并按照官方文档指导进行适当的配置。


创建虚拟用户认证

为了增强安全性,我们可以为 FTP 用户创建单独的身份验证账户,此步骤涉及多个不同的工具和服务,包括 db4-utilspure-ftpd-mysql,以下是详细的步骤说明:

安装必要的软件包

安装 db4-utils 工具:

sudo yum install db4-utils -y

创建密码文件

使用 db_load 工具从文本文件生成数据库格式的密码文件,创建一个包含用户名及其加密密码的文本文件(/etc/vsftpd/ftpd.passwd),然后运行以下命令将其转换为数据库格式:

db_load -T -t hash -f /etc/vsftpd/ftpd.passwd /etc/vsftpd/virtual_users.db

编辑 vsftpd 配置文件

打开 /etc/vsftpd/vsftpd.conf 文件,并添加以下行以启用虚拟用户支持:

guest_enable=YES
guest_username=ftp
user_config_dir=/etc/vsftpd/user_config_files
virtual_use_local_privs=YES

创建用户目录和权限设置

创建一个用于存放用户数据的主目录,并为每个虚拟用户创建对应的子目录,假设我们要为名为 "user1" 的用户创建目录:

sudo mkdir -p /home/vsftpd/user1
sudo chown -R ftp:ftp /home/vsftpd/user1
sudo chmod 750 /home/vsftpd/user1

重启 vsftpd 服务

不要忘记重新启动 vsftpd 服务以使更改生效:

sudo systemctl restart vsftpd

测试 FTP 服务器

完成上述所有配置之后,可以通过 FTP 客户端连接到我们的 FTP 服务器进行测试,可以使用任何支持 FTP 协议的客户端工具,如 FileZilla 或者命令行工具 ftp

如果您遇到连接失败的情况,请仔细检查前面提到的各项配置项是否正确无误,特别注意防火墙设置、SELinux 状态以及 vsftpd 配置文件中的参数。


通过遵循以上步骤,您可以在 CentOS 7 上轻松地创建一个功能强大且安全的文件共享环境,希望这篇文章能帮助您顺利完成 FTP 服务器的部署工作!

扫描二维码推送至手机访问。

版权声明:本文由特网科技发布,如需转载请注明出处。

本文链接:https://www.56dr.com/mation/68432.html

分享给朋友:

“在CentOS7上搭建FTP服务器的完整指南” 的相关文章

在企业内部搭建服务器的方法。

在内网环境中搭建一个服务器,首先需要确定目标服务器的操作系统、软件需求和网络环境。配置硬件资源(如CPU、内存和存储),然后安装操作系统,并进行必要的软件安装和配置。设置安全措施,确保服务器的安全性和可靠性。通过网络连接,将服务器与其他设备进行通信。随着互联网的发展,越来越多的组织和个人需要通过网络...

国外服务器搭建的网站是否能在国内访问?

在互联网时代,域名和IP地址已经成为我们获取网络资源的基本工具,在某些情况下,国外服务器搭建的网站可能会遇到在国内无法直接访问的问题,本文将探讨这一现象的原因,并提供几种解决方案。原因分析1、DNS解析问题: - 国内用户使用的是中国国家顶级域名(如.cn),而国外服务器可能使用不同的域名或子域...

全球网络中的关键资源

随着互联网技术的发展,全球网络中关键资源正变得越来越重要。这些资源包括数据、信息、人才和基础设施等。在全球范围内,许多公司和政府都在努力保护和利用这些资源,以推动经济发展和社会进步。由于网络的复杂性和潜在风险,也存在一些挑战和问题,需要我们共同努力来解决这些问题。在当今数字化时代,网站建设和维护已经...

服务器备案和域名备案的区别

服务器备案和域名备案是两个不同类型的注册服务,分别用于为网络设备和网站进行身份验证。服务器备案涉及向互联网服务提供商(ISP)提交关于物理服务器信息的申请,以证明其合法性和所有权。而域名备案则是将一个特定的字符串(即域名)分配给某个实体或组织,用于标识该实体在网络上的位置。两者在申请流程、目的以及所...

探索与创新的无限可能,如何在传统与现代之间找到平衡

随着科技的快速发展,创新已成为推动社会进步的重要力量。探索与创新的融合道路不仅能够激发新的灵感和创意,还能促进产品和服务的持续发展。这种融合也对经济、文化和社会产生了深远的影响。在当今数字化时代,随着全球互联网技术的飞速发展,网络空间变得愈发广阔和复杂,为了满足用户日益增长的数据处理需求,越来越多的...

海外云服务器,性价比高,性能稳定

海外云服务器的选择取决于多个因素,包括性能、价格、安全性、支持和服务。建议您进行详细的比较和评估,以找到最适合您需求的云服务提供商。考虑选择信誉良好的企业,并咨询专业的IT顾问或市场研究机构的意见。随着互联网的飞速发展,越来越多的企业和个人开始将业务迁移到全球各地,以利用当地的市场和资源,在这个背景...