在CentOS系統中,開啟FTP服務器的防火墻規則需要使用firewall-cmd
命令。以下是具體步驟:
首先,確認防火墻是否已經啟動:
sudo systemctl status firewalld
如果防火墻未啟動,可以使用以下命令啟動它:
sudo systemctl start firewalld
FTP服務通常使用兩個端口:21(控制連接)和20(數據連接)。你需要為這兩個端口添加防火墻規則。
sudo firewall-cmd --permanent --add-port=21/tcp
FTP數據連接端口通常是動態分配的,但你可以指定一個范圍來允許這些端口:
sudo firewall-cmd --permanent --add-port=1024-65535/tcp
添加規則后,需要重新加載防火墻配置以使更改生效:
sudo firewall-cmd --reload
你可以使用以下命令來驗證FTP端口是否已經成功添加到防火墻規則中:
sudo firewall-cmd --list-all
或者查看特定端口是否開放:
sudo firewall-cmd --query-port=21/tcp
sudo firewall-cmd --query-port=1024-65535/tcp
如果你的系統啟用了SELinux,可能還需要配置SELinux策略以允許FTP服務。你可以臨時設置SELinux為寬容模式來測試:
sudo setenforce 0
如果一切正常,你可以永久修改SELinux配置文件/etc/selinux/config
,將SELINUX=enforcing
改為SELINUX=permissive
。
確保你的FTP服務(如vsftpd)已經啟動并運行:
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
通過以上步驟,你應該能夠在CentOS系統中成功開啟FTP服務器的防火墻規則。