Iptables

Pure-FTPd:隨機失敗,受限 iptables INPUT

  • November 2, 2020

我已經在使用鏈的iptables預設DROP策略執行的 Debian 10 機器上安裝了 Pure-FTPd。鏈設置為INPUTOUTPUT``ACCEPT

問題:如果我嘗試連接 FTP 客戶端,它有時只能工作。似乎可以隨機列出文件夾或失敗。通常重試新連接會起作用。

我的Pure-FTPd 配置了以下埠

$ cat /etc/pure-ftpd/conf/Bind
85.xxx.xxx.xxx,57419

$ cat /etc/pure-ftpd/pure-ftpd.conf | grep Port
# Port range for passive connections - keep it as broad as possible.
PassivePortRange             30000 50000

要打開我使用的防火牆上的埠:

iptables -A INPUT -p tcp --dport 57419 -j ACCEPT
iptables -A INPUT -p tcp --dport 30000:50000 -j ACCEPT

伺服器上的日誌:

pure-ftpd]: (?@176.x.x.x) [INFO] New connection from 176.x.x.x
pure-ftpd]: (?@176.x.x.x) [INFO] TLS: Enabled TLSv1.2 with ECDHE-RSA-AES256-GCM-SHA384, 256 secret bits cipher
pure-ftpd]: (?@176.x.x.x) [INFO] testuser is now logged in
// no more output until the client retries a new connection

現在 FTP 客戶端會說它正在列出一段時間,然後: 在此處輸入圖像描述

現在,如果我將 iptablesINPUT鏈設置為ACCEPT一切正常,那麼 Pure-FTPd 隨機嘗試使用的某些埠似乎仍然被阻塞,我該如何調試/修復它?

謝謝你。

我設法將此跟踪到配置問題。

顯然將埠設置為/etc/pure-ftpd/pure-ftpd.conf是不夠的。通過進一步分析,ss -nap | grep pure我發現 pure 正在嘗試使用防火牆允許範圍之外的埠。

為了解決這個問題,我只是創建一個文件/etc/pure-ftpd/conf/PassivePortRange並在那裡設置埠範圍。

引用自:https://serverfault.com/questions/1040948