क्या टेलनेट या नेटकैट ग्राहक एसएसएल पर संवाद कर सकते हैं?


62

मैं SSL / HTTPS पर SSL, HTTPS और अन्य सुरक्षित टेक्स्ट-आधारित इंटरनेट प्रोटोकॉल पर IMAP के साथ क्लाइंट कनेक्शन का परीक्षण करना चाहूंगा, उसी तरह मैं टेलनेट या नेटकैट का उपयोग करूंगा, यदि वे सुरक्षित प्रोटोकॉल पर टनल नहीं किए गए थे। क्या एसएसएल / टीएलएस जैसे पाइप या वैकल्पिक कार्यक्रम के माध्यम से जाने के लिए टेलनेट या नेटसेट प्राप्त करने का एक तरीका है?


जवाबों:


131

कोई टेलनेट / नेटकैट क्लाइंट नहीं है - वे दो अलग-अलग कार्यक्रम हैं, और कम से कम 10 अलग-अलग टेलनेट क्लाइंट मौजूद हैं और कम से कम 6 अलग-अलग नेटकैट संस्करण (मूल नेटकाट, जीएनयू नेटकैट, ओपनबीएसडी नेटकैट, नैम्पस एनसीएटी; बाकी को भूल गए);

पसंदीदा उपकरण टीएलएस पुस्तकालयों से स्वयं आते हैं। वे एक बिट क्रिया हो सकता है, यद्यपि।

  • GnuTLS में लिनक्स पर एक TLS क्लाइंट टूल है:

    gnutls-cli imap.gmail.com -p 993
    

    -sSTARTTLS के लिए उपयोग करें ; आपको आवश्यक प्रोटोकॉल कमांड को मैन्युअल रूप से दर्ज करने और CtrlDतैयार होने पर प्रेस करने की आवश्यकता होगी ।

    IPv6 का समर्थन करता है, डिफ़ॉल्ट रूप से सर्वर प्रमाणपत्रों को मान्य करता है।

  • OpenSSL में एक TLS क्लाइंट टूल है:

    openssl s_client -connect imap.gmail.com:993
    

    यह सभी ऑपरेटिंग सिस्टम के लिए उपलब्ध है। STARTTLS -starttls imapया -starttls smtpविकल्पों के माध्यम से समर्थित है , और कार्यक्रम स्वचालित रूप से इस पर बातचीत करेगा। (हालांकि यह ऐसा करने के बाद प्रारंभिक सर्वर उत्तर को फेंक देता है, लेकिन यह आमतौर पर ठीक है।)

    केवल संस्करण ≥ 1.1 IPv6 का समर्थन करता है।

    केवल संस्करण server 1.0.2 (IIRC) डिफ़ॉल्ट रूप से सर्वर प्रमाणपत्र को मान्य करता है; पुराने संस्करणों को मैनुअल-स्पेसपथ विनिर्देशन की आवश्यकता होती है।

(मुझे NSS और SChannel के परीक्षण के लिए उपकरण भी चाहिए, लेकिन कोई भी नहीं मिल सका।)

कार्यक्रम भी समान पुस्तकालयों का उपयोग करते हैं, लेकिन कम कॉन्फ़िगरेशन वाले नॉब्स हो सकते हैं। कुछ डिफ़ॉल्ट रूप से सहकर्मी प्रमाणपत्र जांच पर भी छोड़ देते हैं ...

  • समाज :

    socat openssl:imap.gmail.com:993 stdio
    

    सुविधा के लिए रीडलाइन मोड का उपयोग किया जा सकता है:

    socat ssl:imap.gmail.com:993 readline
    

    STARTTLS समर्थित नहीं है।

  • एनएपीटी से एनएकेटी टीएलएस का समर्थन करता है (लेकिन STARTTLS नहीं):

    ncat --ssl imap.gmail.com 993
    
  • कुछ टेलनेट ग्राहक, जैसे कि डेबियन पर टेलनेट-एसएसएल पैकेज, टीएलएस का भी समर्थन करते हैं:

    telnet-ssl -z ssl imap.gmail.com 993
    

    एस्केप मेनू starttlsसे STARTTLS को सक्रिय किया जा सकता है Ctrl]


4
काश, मैं प्रश्न के बजाय आपके उत्तर को पसंदीदा बना पाता, जो पूछने वाले ने मानने के बजाय चिह्नों को परेशान नहीं किया।
सैममाइच

Gnutls-cli भी केवल एक ही लगती है, जिसके साथ मैं IPv6 के साथ STARTLS का परीक्षण कर सकता हूं। धन्यवाद!
कारोशी

ओपनएसएसएल s_clientको 1.1 रिलीज में आईपीवी 6 सपोर्ट है।
ग्रिटिटी

1
ओपनएसएसएल की s_clientएक "उपयोगी" सुविधा है जहां आर या क्यू के साथ शुरू होने वाली लाइनों को कमांड के रूप में माना जाता है ( मैनुअल देखें )। -ign_eofइसे निष्क्रिय करने के लिए उपयोग करें। इसके अलावा, s_clientसत्यापन विफल होने पर भी जारी रहेगा; आपको यह जाँचना होगा कि यह "रिटर्न कोड सत्यापित करें: 0 (ठीक है)" और सर्वर को इस संदेश को खराब करने की कोशिश नहीं करता है। gnutls-cliयदि संभव हो तो उपयोग करना बेहतर है।
टॉम

1
सौभाग्य से यह उसके -verify_return_errorलिए भी है ।
विशाल ity

5

आप खुलने के समय s_client , उदा देखना चाह सकते हैं

# openssl s_client -connect dummy.com:8443

2

हाँ वहाँ एक कार्यक्रम कहा जाता है stunnel

इसकी कॉन्फ़िगरेशन फ़ाइल है,

आप इसे बताएं कि किस पोर्ट को सुनना है, किस पोर्ट को फॉरवर्ड करना है।

यह क्लाइंट साइड, या सर्वर साइड, या दोनों के लिए काम करता है।

इसलिए यह एक सर्वर को बदल सकता है जो ssl का समर्थन नहीं करता है, प्रभावी रूप से एक करता है।

या एक क्लाइंट जो ssl का समर्थन नहीं करता है, प्रभावी रूप से एक में करता है।

या क्लाइंट और सर्वर दोनों के पास ssl कनेक्शन है।


1

यदि आपको क्रॉस-प्लेटफ़ॉर्म समर्थन (यानी विंडोज) की आवश्यकता है, तो स्केलेन्ट ( गिट ) भी है ।

एक स्थानीय सर्वर बनाएँ, जो उदाहरण के लिए tls को दिखाता है

$ sclient example.com:443 localhost:3000
> [listening] example.com:443 <= localhost:3000

टेलनेट के साथ example.com के लिए एक अनुरोध करें

$ telnet localhost 3000
  Trying 127.0.0.1...
  Connected to localhost.
  Escape character is '^]'.
> GET / HTTP/1.1
> Host: example.com
> Connection: close 
> 
> 
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.