? ? 前段時(shí)間公司幾個(gè)不同地方用的IBM FTP接連出現(xiàn)異常屿良,首次排查過(guò)程也并不順利,當(dāng)時(shí)花了不少時(shí)間去了解FTP這個(gè)東西的工作流程以及它的兩種不同模式钉寝。由于網(wǎng)上查到的文檔確實(shí)有用弧呐,但也摻雜了很多無(wú)效無(wú)幫助內(nèi)容,需要的時(shí)候再去篩選略難受嵌纲,所以決定自己記一記筆記俘枫。
? ? 首先,想要解決問(wèn)題必須先了解原理逮走,提下我自己參考的《FTP的主動(dòng)模式和被動(dòng)模式》鸠蚪,這篇圖文并茂可以說(shuō)講的很不錯(cuò)了,說(shuō)明的很清楚看了很易懂师溅,具體內(nèi)容我就直接貼圖了茅信。
??
? ? ? ? 我在工作中實(shí)際遇到的問(wèn)題是:系統(tǒng)應(yīng)用報(bào)錯(cuò)FTP連接異常,但通過(guò)Serv-U軟件查看ftp日志時(shí)墓臭,發(fā)現(xiàn)FTP用戶能正常登錄蘸鲸,但上傳文件下載文件以及瀏覽文件目錄等數(shù)據(jù)操作全部失敗。同時(shí)窿锉,客戶端采用linux 命令直連ftp服務(wù)端時(shí)酌摇,可正常使用相同用戶名密碼進(jìn)行文件操作。
? ? ? ? 其實(shí)這個(gè)時(shí)候基本可以排除應(yīng)用本身的問(wèn)題嗡载,由工作模式我們很容易想到窑多,是不是端口開放的問(wèn)題。同時(shí)洼滚,由于我們應(yīng)用采用被動(dòng)模式連ftp埂息,會(huì)需要訪問(wèn)服務(wù)端的隨機(jī)開放數(shù)據(jù)端口。
? ? ? ? 問(wèn)題應(yīng)該是大概找到了,那怎么確認(rèn)是什么端口呢千康,我們通過(guò)增加Serv-U的日志打印范圍享幽,再次查看日志,看到了文件操作時(shí)的提示內(nèi)容:227 entering passive mode (X,X,X,X,X,X)吧秕。
????????通過(guò)查看資料琉闪,確認(rèn)了端口迹炼,果然砸彬,telnet一下果然端口不通,問(wèn)題基本就找到了斯入,解決方案就相對(duì)簡(jiǎn)單了砂碉,可以使用Serv-u軟件限制服務(wù)端隨機(jī)開放的端口范圍,然后服務(wù)端和客戶端防火墻刻两、堡壘機(jī)等對(duì)應(yīng)限制上均對(duì)約定端口放行增蹭,telnet通了,問(wèn)題也就解決了磅摹。