Linux环境下配置防火墙开放FTP服务器详细指南

admin
本文介绍Linux环境下配置防火墙开放FTP服务器的核心步骤,以CentOS(firewalld)和Ubuntu(ufw)为例,首先安装vsftpd并修改配置文件(如关闭匿名访问);随后通过firewalld开放21端口及被动模式端口范围(如50000-50010),或ufw允许21端口及被动端口;若启用SELinux需设置相应上下文;最后重启服务并测试FTP连接,确保防火墙规则生效,兼顾服务可用性与安全性。

FTP(File Transfer Protocol,文件传输协议)是广泛使用的文件传输服务,适用于企业内部文件共享、网站资源上传等场景,Linux系统作为服务器主流操作系统,其默认防火墙(如firewalldiptables)会阻止外部未授权访问,因此需手动配置防火墙规则以开放FTP服务,本文将以主流Linux发行版(CentOS/Ubuntu)为例,详细讲解如何在防火墙中开放FTP服务器,并确保服务正常可用。

准备工作

在开始配置前,需确保以下条件已满足:

  1. 系统环境:已安装Linux系统(本文以CentOS 7+、Ubuntu 20.04为例),具备rootsudo权限。
  2. FTP服务安装:已安装并启动FTP服务器(如vsftpd,最常用的FTP服务之一),若未安装,可通过以下命令安装:
    • CentOS:yum install vsftpd -y
    • Ubuntu:apt update && apt install vsftpd -y
  3. 防火墙状态确认:确认系统当前使用的防火墙工具(CentOS 7+默认为firewalld,CentOS 6及Ubuntu可能为iptables)。

使用firewalld配置防火墙(CentOS 7/8/RHEL 7+)

firewalld是CentOS 7及以上版本的默认动态防火墙管理工具,支持区域(Zone)和服务(Service)的灵活配置。

Linux环境下配置防火墙开放FTP服务器详细指南

检查firewalld状态

systemctl status firewalld  

若未运行,可通过systemctl start firewalld启动,并设置开机自启:systemctl enable firewalld

添加FTP服务到防火墙规则

firewalld预置了ftp服务定义,包含FTP控制端口(21)及被动模式所需的临时端口,可直接添加:

# 永久添加FTP服务(重启后仍生效)
firewall-cmd --permanent --add-service=ftp  
# 重新加载防火墙使规则生效
firewall-cmd --reload  

验证规则是否生效

# 查看已启用的服务
firewall-cmd --list-services  
# 查看开放的端口(应包含21及被动
文章版权声明:除非注明,否则均为xmsdn原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码