溫馨提示×

Debian系統中vsftp如何配置防火墻

小樊
53
2025-06-29 21:15:08
欄目: 智能運維

在Debian系統中配置vsftpd以允許FTP流量通過防火墻,通常涉及到兩個步驟:配置vsftpd本身以及配置iptables或ufw(Uncomplicated Firewall)。以下是詳細的步驟:

1. 配置vsftpd

首先,確保你已經安裝了vsftpd。如果沒有安裝,可以使用以下命令進行安裝:

sudo apt update
sudo apt install vsftpd

然后,編輯vsftpd的配置文件 /etc/vsftpd.conf

sudo nano /etc/vsftpd.conf

確保以下配置項被正確設置:

  • listen=YES:啟用監聽模式。
  • listen_ipv6=NO:禁用IPv6(如果不需要)。
  • anonymous_enable=NO:禁用匿名用戶登錄。
  • local_enable=YES:允許本地用戶登錄。
  • write_enable=YES:允許FTP寫操作。
  • chroot_local_user=YES:將本地用戶限制在其主目錄中。
  • allow_writeable_chroot=YES:允許chroot目錄可寫。

保存并退出編輯器,然后重啟vsftpd服務:

sudo systemctl restart vsftpd

2. 配置防火墻

使用iptables

如果你使用的是iptables,可以添加以下規則來允許FTP流量:

sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT  # FTP控制端口
sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT  # FTP數據端口
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT  # 允許已建立的連接

保存iptables規則:

sudo sh -c "iptables-save > /etc/iptables/rules.v4"

使用ufw

如果你使用的是ufw(Uncomplicated Firewall),可以添加以下規則來允許FTP流量:

sudo ufw allow 21/tcp  # FTP控制端口
sudo ufw allow 20/tcp  # FTP數據端口
sudo ufw enable  # 啟用ufw

3. 驗證配置

確保防火墻規則已經生效,并且vsftpd服務正在運行:

sudo ufw status
sudo systemctl status vsftpd

你應該能夠看到FTP相關的端口已經被允許通過防火墻。

注意事項

  • FTP協議使用兩個端口:21用于控制連接,20用于數據傳輸。確保這兩個端口都被允許通過防火墻。

  • 如果你使用的是被動模式(PASV),還需要配置vsftpd以允許被動模式的端口范圍??梢栽?/etc/vsftpd.conf 中添加以下配置:

    pasv_enable=YES
    pasv_min_port=1024
    pasv_max_port=1048
    

    然后,更新防火墻規則以允許這些端口:

    sudo ufw allow 1024:1048/tcp
    

通過以上步驟,你應該能夠在Debian系統中成功配置vsftpd并通過防火墻允許FTP流量。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女