.NET के लिए SFTP लाइब्रेरी [बंद]


109

किसी को भी उपयोग करने के लिए एक अच्छा SFTP पुस्तकालय की सिफारिश कर सकते हैं? अभी मैं SecureBlackbox, IPWorks SSH, WodSFTP और Rebef SFTP जैसे उत्पादों को देख रहा हूं। हालाँकि, मैंने पहले कभी किसी SFTP लाइब्रेरी का उपयोग नहीं किया है इसलिए मुझे यकीन नहीं है कि मैं क्या देख रहा हूँ।

अगर किसी ने पहले इन का उपयोग किया है, तो क्या कोई कारण है कि मुझे "वाई" से अधिक उत्पाद "एक्स" के साथ जाना चाहिए?



क्या MIT के तहत लाइसेंस प्राप्त SFTP लाइब्रेरी है?
यश सरैया

जवाबों:


87

मैंने आसपास खोज की है और पाया है कि SharpSSH का यह कांटाऔर SSH.NET आज तक का सबसे ऊपर है और के लिए सबसे अच्छा बनाए रखा पुस्तकालय हैं SFTP (साथ भ्रमित होने की नहीं FTPS .NET में संचार)। SSH.NET, SFTP प्रोटोकॉल का एक शुद्ध .NET 4.0 कार्यान्वयन है, और मैंने इसे उड़ने वाले रंगों और शानदार सफलता के साथ हल किया है।

असली SharpSsh मृत प्रतीत होता है और अधिकांश अन्य समाधानों में या तो विंडोज निष्पादन योग्य की स्थापना की आवश्यकता होती है या एक बकेट लोड ऑफ कैश (या बदतर; दोनों)।


6
मैंने SSH.NET ( sshnet.codeplex.com ) का भी उपयोग किया है और इसे उत्कृष्ट पाया है।
एलेक्स

10
मैंने SSH.NET को बल्ले से छोटी छोटी चीज़ों के लिए सही पाया। फ़ाइल / डीआईआर की जाँच हमेशा मौजूद रहती है। जारी सूची में कई खुले और उलझे हुए मुद्दों ने मुझे परियोजना से दूर कर दिया।
रॉनी ओवरबी

1
@RonnieOverby मैंने फ़ाइल / डीआईआर के बारे में आपके द्वारा बताए गए मुद्दे की तलाश की है और यह मुद्दा अब मौजूद नहीं है। मैंने SSH.NET का परीक्षण करने के लिए कोड लिखा था और यह अपेक्षा के अनुरूप काम करता है।
कॉलिन

4
SharpSSH कांटा मृत भी (पिछले सितंबर 2012 में अद्यतन) है।
मार्टिन प्रिक्रील

3
धन्यवाद, तुलना करने के बाद SSH.NET उन्हें साफ और उपयोग करने में आसान लगता है। मैं अपने प्रोजेक्ट को खत्म करने के बाद अपना जवाब अपडेट करूंगा। मैं उन्हें धन्यवाद दे रहा हूं। धन्यवाद,
नूर लाबीदी

52

हम WinSCP का उपयोग करते हैं। यह निःशुल्क है। यह एक लिबास नहीं है, लेकिन इसमें एक अच्छी तरह से प्रलेखित और पूर्ण रूप से चित्रित कमांड लाइन इंटरफ़ेस है जिसे आप Process.Start के साथ उपयोग कर सकते हैं।

अपडेट: v.5.0 के साथ, WinSCP में WinSCP की स्क्रिप्टिंग परत के लिए .NET रैपर लाइब्रेरी है।


1
मुझे बहुत अच्छा लगता है: wincp.net/eng/docs/library#example
जॉन केज

4
मैंने सफलतापूर्वक WinSCP .NET असेंबली (wincpnet.dll) का उपयोग किया, WinSCP स्क्रिप्टिंग इंटरफ़ेस पर आवरण। हाँ, वास्तव में, यह अच्छी तरह से प्रलेखित है। इसके कई उदाहरण हैं। यदि आप गलत मापदंडों से गुजरते हैं तो रैपर अपवाद का विस्तार करता है जो गलत है। मापदंडों को सही करने के लिए मुझे कुछ परीक्षण और त्रुटि मिली, WinSCP की कोई गलती नहीं, बस ftps और sftp के बीच मेरा भ्रम। इसके अलावा, आवेदन बिन फ़ोल्डर में WinSCP.exe को कॉपी करना याद रखें; या आप Session.Open () को कॉल करने से पहले Session.ExecutablePath सेट कर सकते हैं।
एडवर्ड

WinSCP को GPL के तहत लाइसेंस प्राप्त है। क्या ऐसा कुछ है जो मैं एमआईटी के तहत लाइसेंस के साथ काम कर सकता हूं?
यश सरैया


1
कोई अच्छा, wincp .exe से बंधा हुआ है, जो मल्टी प्लेटफॉर्म डेवलपमेंट के लिए भरपूर है।
अल्विन

9

इसे देखें: http://www.tamirgal.com/home/dev.aspx?Item=sharpSsh

SharpSSH SSH2 क्लाइंट प्रोटोकॉल सूट का शुद्ध .NET कार्यान्वयन है। यह SSH सर्वर के साथ संचार के लिए एक एपीआई प्रदान करता है और इसे किसी भी .NET अनुप्रयोग में एकीकृत किया जा सकता है।

पुस्तकालय JCraft इंक से JSch परियोजना का C # पोर्ट है और इसे BSD स्टाइल लाइसेंस के तहत जारी किया गया है।

SharpSSH आपको JSH के API के समान API का उपयोग करके SSH चैनलों पर डेटा को पढ़ने / लिखने और फ़ाइलों को स्थानांतरित करने की अनुमति देता है। इसके अलावा, यह कुछ अतिरिक्त रैपर कक्षाएं प्रदान करता है जो एसएसएच संचार के लिए और भी सरल अमूर्तता प्रदान करते हैं।

स्रोत फोर्ज में SharpSSH प्रोजेक्ट पेज: http://sourceforge.net/projects/sharpssh


9
शांत सामान, लेकिन 2007 के बाद से अद्यतन नहीं किया गया, .net 4 के लिए आवश्यकता है
जॉनी_डी

1
अद्यतन और सक्रिय रूप से बनाए रखी गई चीज़ के लिए मेरा उत्तर देखें।
असबजर्न उल्सबर्ग

10
मैंने इस लाइब्रेरी का इस्तेमाल किया और इसकी सिफारिश नहीं करता। यह काम किया, लेकिन यह एक अधूरा बंदरगाह की तरह महसूस किया: शीर्ष स्तर की कक्षाओं में कुछ विशेषताएं गायब थीं (परीक्षण में फाइलें IIRC मौजूद थीं), और मुझे उन्हें काम करने के लिए निजी क्षेत्रों पर विधियों को कॉल करना पड़ा; स्रोत में छोड़े गए जावा कोड की टिप्पणी-आउट विखंडन; जावा मानक पुस्तकालय में लोगों के नाम पर आवरण कक्षाएं; जावा मुहावरे मैंने बड़ी सफलता के साथ SSH.NET का उपयोग किया है (जैसा कि @ asbjornu की पोस्ट में)।
एलेक्स

8

हमने रेबेक्स फाइल ट्रांसफर पैक खरीदा , और सब ठीक है। एपीआई आसान है, हमें कॉम सर्वर, प्रॉक्सी सर्वर आदि के साथ कोई समस्या नहीं है ...

लेकिन मैं एक और SFTP / FTPS घटक के साथ तुलना करने का मौका गंवाता हूं।


कृपया ध्यान दें कि SFTP और FTPS एक ही प्रोटोकॉल नहीं हैं।
ट्रेंट

6

बिटविस के पास एक महान उत्पाद है जिसे टनलियर कहा जाता है जो एफ़टीपी को एसएफटीपी को पाट सकता है। आप तब .NET में मानक FtpWebRequest का उपयोग कर सकते हैं।

http://www.bitvise.com/ftp-bridge

मैं वर्तमान में अपने स्वयं के उद्देश्यों के लिए इसका परीक्षण कर रहा हूं और अपने निष्कर्षों के साथ अपडेट करूंगा।

अपडेट करें

जब तक आप ग्राहक को एक सेवा या कुछ और से जुड़ा रखने के लिए हुप्स के माध्यम से कूदना नहीं चाहते, जब तक कि मैं एनएसएसएम का उपयोग करके पूरा नहीं करता, यह विचार आदर्श स्वचालन के लिए आदर्श नहीं है ।

मैंने बिटविइस और wincp.com सहित विभिन्न ग्राहकों के साथ CLI स्वचालन की कोशिश की है। मैंने भी इन .net वर्ग पुस्तकालयों की कोशिश की है: Winscp, SSH.NET, SharpSSH, और व्यावसायिक SecureBlackBox SFTP ग्राहक।

SecureBlackBox ने अच्छा काम किया, लेकिन यह बहुत भारी है, लाइसेंस के आधार पर यह काफी महंगा हो सकता है, और मैं इसके साथ एपीआई के लिए बहुत सहमत नहीं था।

नीचे हाथ, .NET विकास के लिए सबसे अच्छा मुफ्त sftp क्लाइंट है wincp । मैंने इसे आसान बनाने के लिए कुछ कक्षाएं और विस्तार विधियाँ लिखी हैं: Winscp.Extensions


4

मैं अब कुछ महीनों के लिए चिल्कैट की मूल SFTP लाइब्रेरी ( http://www.chilkatsoft.com/ssh-sftp-component.asp ) का उपयोग कर रहा हूं और यह बहुत अच्छा काम कर रहा है। बड़ी फ़ाइलों को डाउनलोड करने और निजी कुंजी प्रमाणीकरण करने के लिए रात के काम में इसका उपयोग किया गया। केवल समस्या जो मुझे 64 बिट संस्करण में विंडोज़ सर्वर 2008 पर काम करने के लिए मिल रही थी, मुझे अपने सर्वर पर vcredist_x64.exe ( http://www.microsoft.com/download/en/details.aspx?id=14632 ) स्थापित करने की आवश्यकता थी ।


2
चिलकट 100% प्रबंधित कोड नहीं है। यह एक देशी पुस्तकालय है जो .NET में लिपटा है। जब हमने इस लाइब्रेरी को शामिल किया तो इसने विज़ुअल स्टूडियो वेब डिज़ाइनर को तोड़ दिया क्योंकि VS 32-बिट मोड में चलता है। हमें इन सभी कार्यों को देव और ठेस (जो 64-बिट में है) के बीच बनाना है, इसलिए यह सही DLL का उपयोग कर सकता है, मज़ेदार नहीं। आसपास के काम के लिए GAC को 32 और 64 बिट DLL दोनों लक्ष्य मशीनों पर स्थापित करने की आवश्यकता है: chilkatforum.com/questions/114/…
क्रिस स्मिथ

0

.NET में व्यापक SFTP समर्थन के लिए edtFTPnet / PRO का प्रयास करें । यह कई अलग-अलग SFTP सर्वरों के समर्थन के साथ लंबे समय से है।

हम विंडोज, कम्प्लीट एफटीपी के लिए एक एसएफटीपी सर्वर भी बेचते हैं , जो कि आपके विंडोज मशीन पर एसएफटीपी के लिए समर्थन पाने का एक सस्ता तरीका है। एफ़टीपी और एफटीपीएस भी है।


मैंने कुछ समय के लिए edtFTPnet लाइब्रेरी का उपयोग किया है - अच्छी तरह से काम करता है लेकिन .net बाइंडिंग के लिए प्रलेखन बहुत अच्छा नहीं है।
जॉन केज

0

मैंने IP * वर्क्स SSH का उपयोग किया है और यह बहुत अच्छा है। स्थापित करने और उपयोग करने के लिए आसान। इसके अलावा, जब आप प्रश्नों या समस्याओं में भाग लेते हैं तो उनका समर्थन शीर्ष पर होता है।

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