一般都習慣如下這般,打開21port就認為沒問題:
ufw allow ftp
本來也是這樣設定,但發現設定完之後仍然不能連,但把ufw關閉卻可以連線。
後來尋找後,加上以下這行就成功了。
ufw allow 21/tcp
另外,如果連線成功很快就斷線,或無法傳遞資料,那麼也請將20port打開。
ufw allow 20/tcp
一般來說server端的port 21通常是command port,而port 20是data port,但FTP有兩種不同的模式——主動模式(Active)及被動模式(Passive),而上面所說的是指主動模式。
在這個模式下,client端會隨機選則一個port(通常>1024)跟server端的command port(21)連線並告訴server自己會用哪一個port來傳輸資料(通常是N+1),接著server就會透過自己的data port(20)來跟client指定的傳輸port連線。