阿里雲ftp連接遇到的錯誤,entering passive mode失敗(一個並不成熟的產品?)


####禁止自行轉載

####違者必究

####需要轉載請聯系我

 

因為最近用python寫了一個自動上傳的腳本,想通過FTP把數據上傳到我的服務器。

於是,

興高采烈地打開我一直信任的阿里雲,yum install vsftpd。

bing!成功安裝好,修改配置文件開始

想通過本地模式登錄,先把匿名訪問模式給關了。

anonymous_enable=NO

再把 /etc/vsftpd/ftpusers 和 /etc/vsftpd/user_list 兩個文件中的root刪掉,保證root用戶可以登錄ftp,沒毛病了吧?

systemctl start vsftpd
systemctl enable vsftpd

再重啟,加入開機啟動項!沒毛病了吧?

阿里雲安全組放行全部端口,防火牆關了,SELINUX禁用,沒毛病了吧?

打開python腳本上傳資料,why?錯誤?肯定是python腳本有錯!不可能是我的阿里雲有錯的!

先在腳本加入兩行ftp調試代碼,然后一看!咦!怎么一直在entering passive mode?然后就 ftp:connect:Connect timed out。

好吧,我知識量不夠,那我學!

百度搜一遍,谷歌搜一遍。

百度搜到的全部都是先解釋一下主被動模式,然后叫你關閉passive mode的。。。。。。但是為什么entering passive mode就不行?我不服!

然后谷歌了一番(邊看還要開着個翻譯軟件真的苦啊!~)

 

最后在某個問答貼看到entering passive mode后邊幾個數字的含義。

附上原帖地址,感謝!

172.18.144.104就是ftp客戶端要連接的ip

139*256+147=35731的意思就是服務端開啟35731端口,然后讓客戶端連接。

我看了一下這個IP,不對啊?!這不是內網ip么?

上阿里雲服務器 ifconfig 看下,原來真的是內網IP。(后來才了解到彈性服務器的真正意義。有興趣的童鞋請百度吧,這里不多說了哦)

然后接下來又是漫長的搜索與學習,以及后來的請阿里雲服務支持。

最終阿里雲給我的答復是,在vsftpd配置文件下添加下面幾行配置。

pasv_enable=YES
pasv_address=#我的外網IP
pasv_min_port=1024
pasv_max_port=2048
pasv_promiscuous=YES  #關閉PASV模式的安全檢查

配置好之后我在阿里雲服務器本身 ftp 連接到本身服務器,成功了!終於能進入passive mode了!

興奮!欣喜若狂!趕緊結束工單,給了個五星好評!

然后回到宿舍,運行一下python自動上傳腳本。、

what?又進入passive mode失敗?entering passive mode(0,0,0,0,xxx,xxx)

肯定是python腳本哪里寫錯了!

檢查一遍又一遍,沒毛病啊!

后來在自己的 linux 備用機 ftp 嘗試連接一下阿里雲的 vsftpd 。

還是不行!我還不死心,借了朋友的服務器連接,還不行!!!

此時我已經折騰了幾天了,天天搜索,問題出在哪里。睡醒就開始搜,舍友睡覺了我也還在搜,天天都是頭發蓬亂,雙眼通紅的狀態。

終於不堪勞累,把問題記好,我放棄了。

直到今天,看到騰訊雲搞年中活動耶,買個玩玩,搭搭服務。

騰訊雲也是兩個IP,一個公網,一個私有。

心里想,FTP服務肯定又沒戲了。肯定和阿里雲一樣。

不過都買了,搭來試試。配置文件:

anonymous_enable=NO

一樣的,/etc/vsftpd/ftpusers 和 /etc/vsftpd/user_list 兩個文件中的root刪掉。

啟動試試?

開阿里雲 ftp 連接,???,連上了???

不信!用linux備用機 ftp 連接,也連上了???

不信!運行python腳本,ftp l連接,連上了???

那一刻很懵逼,彷佛多年以來我覺得很牛逼的東西只是別人的冰山一角。上騰訊雲 ifconfig 看看,居然是內網IP?

為什么同樣 ifconfig 都是內網IP,同樣都是私有IP映射公網IP,騰訊雲可以 ftp 連接,而你阿里雲連這點東西都做不到?

還修改了一大堆配置文件,依然於事無補。而騰訊雲只要簡簡單單的常規配置就可以連接了。

令我有點失望了,阿里雲。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM