सबको सुप्रभात,
मैं MS Azure में होस्ट किए गए WIN 2012 R2 सर्वर पर एक FileZilla FTP सर्वर (निष्क्रिय मोड) होस्ट कर रहा हूं।
एफ़टीपी हस्तांतरण आमतौर पर ठीक काम कर रहे हैं - कई एफ़टीपी अपलोड और पुनर्प्राप्ति दैनिक आधार पर चल रहे हैं।
मैंने निष्क्रिय मोड के लिए अनुमति देने के लिए एज़्योर पोर्टल / साइड पर बंदरगाहों (एंडपॉइंट्स) की एक बड़ी रेंज खोली है।
छिटपुट रूप से (औसतन हर 2 वें दिन एक बार) मैं एफ़टीपी स्थानांतरण मुद्दों को देख रहा हूँ जैसे कि निम्नलिखित:
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> MDTM dev_updates/file1
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> 213 20160728071048
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> MDTM dev_updates/file2
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> 213 20160728071048
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> MDTM dev_updates/file3
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> 213 20160728071050
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> CWD dev_updates/Infrastructure/folder
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> 250 CWD successful. "dev_updates/Infrastructure/folder" is current directory.
8/8/2016 9:10:00 AM - USER_FILEZILLA (62.154.Y.X)> PASV
8/8/2016 9:10:00 AM - USER_FILEZILLA (62.154.Y.X)> 227 Entering Passive Mode (104,40,Y,X,234,235)
8/8/2016 9:10:00 AM - USER_FILEZILLA (62.154.Y.X)> 426 Connection closed; aborted transfer of ""
8/8/2016 9:10:01 AM - USER_FILEZILLA (62.154.Y.X)> disconnected.
8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> Connected on port 21, sending welcome message...
8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> 220-FileZilla Server 0.9.57 beta
8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> 220-written by Tim Kosse (tim.kosse@filezilla-project.org)
8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> 220 Please visit https://filezilla-project.org/
8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> USER USER_FILEZILLA
8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> 331 Password required for
जैसा कि उल्लेख किया गया है, कई एफ़टीपी हस्तांतरण दैनिक (स्वचालित) आधार पर हो रहे हैं और फ़ाइलज़िला एफ़टीपी सर्वर (निष्क्रिय मोड में अभिनय) को सौंपे गए 140+ पोर्ट रेंज पर व्यापक हैं।
मेरे पास Azure में होस्ट किए गए VM पर एक Wireshark कैप्चर चल रहा है; मैं Wireshark से देख सकता हूं कि "426 कनेक्शन बंद" इवेंट वास्तव में एक RST द्वारा VM द्वारा Azure में मेल खाते हैं और PASV कमांड जारी करने वाले क्लाइंट को भेजे गए हैं (अर्थात उपरोक्त उदाहरण में, FTP सर्वर जवाब देता है) क्लाइंट PASV पोर्ट के साथ कमांड: 234,235 -> 60139; स्थानांतरण शुरू करने के लिए पोर्ट 60139 में क्लाइंट एक डेटा चैनल खोलने का प्रयास करता है -> एफ़टीपी सर्वर तुरंत जवाब देता है (एमएस के भीतर विंडसर कैप्चर के अनुसार एक आरएसटी जारी कर रहा है) ग्राहक के लिए)।
मैंने एफ़टीपी सर्वर की ओर से कुछ पंचांग पोर्ट आवंटन मुद्दे के बारे में सोचा -> इसलिए मैंने एफ़टीपी निष्क्रिय बंदरगाह रेंज को ओवरलैप न करने के लिए डायनेमिक ओएस एपीथर्मल पोर्ट रेंज को कम कर दिया - एफ़टीपी का उपयोग करके
netsh int ipv4 set dynamicport tcp start=49152 num=10000
इसके अलावा, मैंने स्पष्ट रूप से कमांड के माध्यम से netsh स्टैक के लिए पोर्ट रेंज आरक्षण जोड़ा है
netsh int ip add excludeportrange protocol=tcp startport=60000 numberofports=141 store=persistent
फिर भी, समस्या अभी भी कभी-कभी हो रही है।
मैंने इस वेबसाइट के साथ-साथ MS Azure तकनीकी सत्र पर व्यापक तकनीकी चर्चाएँ पढ़ीं कि कैसे Azure समापन बिंदु स्थिति (एक LB सेट का हिस्सा) पर नज़र रखता है, लेकिन यह मेरे मामले में FTP पैसिव ट्रांसफ़र (पुनर्प्राप्ति और अपलोड) के रूप में लागू नहीं है आरक्षित एफटीपी निष्क्रिय बंदरगाह रेंज के भीतर यादृच्छिक बंदरगाहों पर आम तौर पर ठीक काम कर रहे हैं।
यदि आवश्यक हो तो मैं अतिरिक्त विवरण प्रदान कर सकता हूं - इस बीच, मैं सर्वर और क्लाइंट पक्ष पर समस्या निवारण / जांच में अतिरिक्त सुझावों के लिए आभारी रहूंगा (बहुत यकीन है कि समस्या नेटवर्क या नेटवर्क कॉन्फ़िगरेशन से संबंधित नहीं है)।
मैं अतिरिक्त समस्या निवारण / जांच सुझाव / युक्तियां पूछना चाहता हूं कि कैसे संभव सर्वर साइड सॉकेट उपलब्धता समस्याओं के लिए डीबग winsock।
426
एक और सत्र के पीछे गर्भपात की त्रुटि हमेशा कुछ सेकंड के बाद एक 550
अनुमति अस्वीकृत त्रुटि हुई। मुझे संदेह है कि यह FileZilla के साथ एक बग है, लेकिन हमारे लिए फिक्स 550 को रोकने के लिए था (हमारे मामले में, एक परीक्षण प्रणाली परीक्षण फ़ोल्डर तक पहुंचने का प्रयास कर रही थी, लेकिन उत्पादन क्रेडेंशियल्स का उपयोग कर रही है; इसलिए हमें केवल उस सिस्टम की क्रेडेंशियल्स को सही करना पड़ा; ।