क्या SSH या FTP प्रोटोकॉल सर्वर को बताता है कि मैं किस डोमेन से जुड़ने की कोशिश कर रहा हूं?


25

का उपयोग करते समय sshftpबैश शेल से या कमांड , सर्वर जो मैं डोमेन नाम का उपयोग करने के लिए कनेक्ट कर रहा हूं? मैं समझता हूँ कि डोमेन नाम स्थानीय रूप से DNS के माध्यम से एक आईपी पते में अनुवादित है। HTTP में, ऐसा होने के बाद, सर्वर को मूल डोमेन नाम के साथ-साथ सही पेज की सेवा या सही TLS सर्टिफिकेट (SNI) प्रस्तुत करने के लिए कहा जाता है।

host serverfault.com
GET /

क्या एक समान घटना तब होती है जब sshया से कनेक्ट होती है ftp?

मैं पूछता हूं क्योंकि मैं एक सर्वर में जाने की कोशिश कर रहा हूं (GoDaddy webhosting) जो एक डोमेन नाम की उम्मीद करता है, लेकिन जब मैं इसके माध्यम से कनेक्ट करने का प्रयास करता हूं तो मुझे इसमें शामिल नहीं होने देता है user@IPaddress DNS के से GoDaddy IP पते पर नहीं ले जाया जाता है ।


क्या आपके पास .ssh/configहोस्ट नाम (या आईपी पता) के लिए विशिष्ट है? आपको क्या त्रुटि मिल रही है? (हम्म, यह समर्थन है, लेकिन सवाल का जवाब देने के लक्ष्य के लिए नहीं ...)
एंड्रियास क्रे

बस Login authentication failedFTP के लिए सामान्य और Permission deniedSSH के लिए। वास्तविक कनेक्शन ठीक है, और मैंने लॉगिन क्रेडेंशियल्स को चौगुना-चेक किया है।
डॉटनचेन

जवाबों:


25

नहीं, SSH क्लाइंट आपके द्वारा सर्वर से जुड़े DNS नाम को पास नहीं करते हैं।
जैसा कि आपने सही कहा, नाम स्थानीय रूप से IP पते पर हल हो गया है।

ऐसा लगता है कि मैं एफ़टीपी के बारे में गलत था।
विवरण के लिए अन्य उत्तर देखें।


5
यह अब एफ़टीपी के लिए सच नहीं है। मेरा जवाब
मार्टिन प्रिक्रील

दिलचस्प है, मुझे नहीं पता था कि। मैंने अपना उत्तर संपादित किया। धन्यवाद!
faker

दरअसल, 2015 तक अधिकांश मामलों में एकजुट जवाब सही है। हालांकि अगले कुछ सालों में इसमें बदलाव हो सकता है।
9

मैं सोच रहा हूँ कि कितने ग्राहक अभी तक इसका समर्थन करते हैं। किसी भी मामले में आपका उत्तर अधिक सही है।
फकर

@faker मैंने क्लाइंट-साइड समर्थन के बारे में बहुत कम जानकारी जोड़ी है, जो मुझे पता है। बाद में कुछ और शोध कर सकते हैं।
मार्टिन प्रिकिल

34

सर्वर को होस्ट प्रदान करने के लिए SSH / SFTP प्रोटोकॉल के पास कोई तंत्र नहीं है।

OpenSSH में इस कार्यक्षमता को जोड़ने के बारे में चर्चा हुई, ssh के लिए "वर्चुअल होस्ट" देखें ।


FTP प्रोटोकॉल करता है HOSTआदेश है, जो HTTP के लिए एक बराबर है Hostहैडर। यह अपेक्षाकृत नए RFC 7151 द्वारा निर्दिष्ट किया गया है । RFC मार्च 2014 में प्रकाशित हुआ था (हालांकि पहला मसौदा 2007 से है)। जैसे, यह अभी तक सार्वभौमिक रूप से समर्थित नहीं है।

सर्वर-साइड पर, यह IIS (RFC Microsoft द्वारा प्रायोजित है) और ProFTPD द्वारा समर्थित है (1.3.6rc1 के बाद से)। यह अन्य सामान्य यूनिक्स एफ़टीपी सर्वरों द्वारा समर्थित नहीं है जैसे कि प्योर-एफ़टीपी या वर्सेटपैड।

क्लाइंट-साइड पर, यह (मेरे) WinSCP द्वारा समर्थित है । यह FileZilla द्वारा समर्थित नहीं है, क्योंकि इसके लेखक ने विचार का विरोध किया है , न ही CyberDuck द्वारा। मैं दूसरों के बारे में नहीं जानता।


धन्यवाद, यह अगले कुछ वर्षों में एक महत्वपूर्ण विचार होगा जब लोग इस मुद्दे पर आएंगे और इस प्रश्न को Google करेंगे।
9

1
पता चला तो अच्छा है। मैं कुछ ऐसा चाहूंगा जो ssh के लिए भी मौजूद हो, क्योंकि मुझे एक ऐसे दृश्य की आवश्यकता है जो होस्टनाम के आधार पर अलग-अलग सर्वर पर एक आईपी पते पर किए गए ssh कनेक्शन को भेज सके। लेकिन मेरे सभी पिछले शोध आपके निष्कर्ष से सहमत हैं, कि यह ssh के लिए मौजूद नहीं है, और इसे आसानी से प्रोटोकॉल में नहीं जोड़ा जा सकता है।
कैस्परल्ड

@kasperd, आप अलग-अलग कनेक्शन के लिए अलग-अलग पोर्ट नंबर का उपयोग कर सकते हैं। या आप इसे उपयोगकर्ता नाम के आधार पर कर सकते हैं।
AE

@ यूएई दृष्टिकोण मेरे उपयोग के मामले के लिए काम करेगा। जब तक मुझे यह तय करने की आवश्यकता होती है कि किस सर्वर को कनेक्शन भेजना है, तो क्लाइंट ने अभी तक उपयोगकर्ता नाम नहीं भेजा है। (इसके अलावा मुझे पूरा यकीन है कि उपयोगकर्ता नाम केवल एन्क्रिप्टेड है, और मुझे पता नहीं है कि उपयोगकर्ता नाम निकालने के लिए एक ssh कनेक्शन को कैसे मिटाना है।) पोर्ट नंबर या तो काम नहीं करेगा क्योंकि मेरा दृश्य वास्तव में होस्टनाम का DNS लुकअप करता है। बैकएंड खोजने के लिए। (फ्रंटएंड दोहरी स्टैक है, बैकएंड का कोई सार्वजनिक आईपीवी 4 पता नहीं है,
फ्रंटेंड

2
@kasperd मैंने SSH में इसे जोड़ने के बारे में OpenSSH मेलिंग सूची थ्रेड का लिंक जोड़ा है।
मार्टिन प्रिक्रिल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.