温馨提示×

如何配置CentOS SFTP的防火墙规则

小樊
54
2025-09-15 20:24:58
栏目: 智能运维

配置CentOS SFTP的防火墙规则,通常涉及以下几个步骤:

1. 安装并启用防火墙

CentOS 7及以上版本默认使用firewalld作为防火墙管理工具。如果尚未安装,可以使用以下命令安装:

sudo yum install firewalld 

然后启动并启用firewalld服务:

sudo systemctl start firewalld sudo systemctl enable firewalld 

2. 配置防火墙规则

为了允许SFTP连接,需要开放TCP端口22(默认的SSH端口)。可以使用以下命令添加规则:

sudo firewall-cmd --permanent --add-service=ssh sudo firewall-cmd --reload 

3. 验证防火墙规则

确保规则已正确添加并生效:

sudo firewall-cmd --list-all 

你应该能看到ssh服务在services列表中,并且端口22是开放的。

4. 配置SELinux(如果启用)

如果SELinux处于 enforcing 模式,可能需要配置SELinux策略以允许SFTP连接。可以使用以下命令查看SELinux状态:

sestatus 

如果SELinux处于 enforcing 模式,可以临时将其设置为 permissive 模式以测试:

sudo setenforce 0 

如果一切正常,可以配置SELinux策略以永久允许SFTP连接。编辑/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=permissive,然后重启系统。

5. 配置SSH服务器

确保SSH服务器配置文件/etc/ssh/sshd_config中启用了SFTP子系统。打开文件并确保有以下行:

Subsystem sftp /usr/libexec/openssh/sftp-server 

然后重启SSH服务以应用更改:

sudo systemctl restart sshd 

6. 测试SFTP连接

使用SFTP客户端(如FileZilla)测试连接,确保可以成功连接到服务器。

总结

通过以上步骤,你应该能够成功配置CentOS SFTP的防火墙规则,允许SFTP连接。如果有任何问题,请检查防火墙规则和SELinux配置,并确保SSH服务器正确配置。

0