运维

运维

Products

当前位置:首页 > 运维 >

如何设置CentOS上vsftp防火墙规则才能安全访问?

96SEO 2025-07-30 14:04 10


1.

在CentOS系统上配置FTP服务器时平安性是首要考虑的因素。VSFTPD是一个广泛用的FTP服务器,而防火墙配置则是确保平安的关键步骤之一。

centos上vsftp如何配置防火墙规则

2. 安装VSFTPD

在开头配置防火墙之前,确保VSFTPD已经安装在您的CentOS系统上。能通过以下命令进行安装:

sudo yum install vsftpd

3. 启动并启用VSFTPD服务

安装完成后启动VSFTPD服务并设置开机自启:

sudo systemctl start vsftpd
sudo systemctl enable vsftpd

4. 配置防火墙规则

4.1 用firewalld配置防火墙

CentOS 7及更高大版本用firewalld服务来管理防火墙规则。以下步骤将指导您怎么配置防火墙规则以允许FTP流量通过:

sudo firewall-cmd --permanent --add-port=20/tcp
sudo firewall-cmd --permanent --add-port=21/tcp

这些个命令将永久添加TCP端口20和21到防火墙规则中,分别用于FTP的命令和数据传输。

4.2 添加被动模式端口范围

如果你的FTP客户端用被动模式,还需要添加被动模式的端口范围。默认情况下 VSFTPD用以下端口范围:

pasv_min_port=30000
pasv_max_port=30999

你能用以下命令添加这些个端口到防火墙规则中:

sudo firewall-cmd --permanent --add-port=30000-30999/tcp

4.3 配置SELinux

如果你的系统启用了SELinux,兴许还需要配置SELinux以允许FTP流量。你能用以下命令来设置SELinux上下文:

sudo setsebool -P ftp_home_dir on
sudo setsebool -P allow_ftpd_full_access on

4.4 沉新鲜加载防火墙规则

添加完端口后 沉新鲜加载防火墙规则以使更改生效:

sudo firewall-cmd --reload

5. 验证防火墙规则

你能用以下命令来验证防火墙规则是不是已经正确添加:

sudo firewall-cmd --list-all

你得能看到类似以下的输出,说明端口已经成功添加:

public 
  target: default
  icmp-blocks: 
  interfaces: eno1
  sources: 
  services: ssh
  ports: 
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks-in: 
  rich rules: 
    rule family="ipv4" source address="192.168.1.0/24" port port="21" protocol="tcp" accept
    rule family="ipv4" source address="192.168.1.0/24" port port="20" protocol="tcp" accept
    rule family="ipv4" source address="192.168.1.0/24" port port="30000-30999" protocol="tcp" accept

6. 测试FTP连接

再说说你能用FTP客户端来测试FTP连接,确保一切配置正确。

ftp 192.168.1.100

将192.168.1.100替换为你的服务器IP地址。

7. 结论

通过以上步骤, 你能在CentOS系统上成功配置VSFTPD的防火墙规则,以允许平安地访问FTP服务器。确保定期审查和更新鲜防火墙规则,以保持网络的平安性。


标签: CentOS

提交需求或反馈

Demand feedback