सुरक्षित कॉपी प्रोटोकॉल

From Vigyanwiki
scp
Developer(s)The OpenSSH Project
Repositorygithub.com/openssh/openssh-portable/
Written inC
Operating systemCross-platform
TypeCommand, Communication protocol
Websitewww.openssh.com

सुरक्षित कॉपी प्रोटोकॉल (एससीपी) एक स्थानीय होस्ट और एक रिमोट सर्वर (कंप्यूटिंग) या दो रिमोट होस्ट के बीच कम्प्यूटर फाइल को सुरक्षित रूप से स्थानांतरित करने का एक साधन है। यह सुरक्षित खोल (एसएसएच) प्रोटोकॉल पर आधारित है।[1] एससीपी सामान्यतः सुरक्षित कॉपी प्रोटोकॉल और प्रोग्राम दोनों को संदर्भित करता है।[2]

अप्रैल 2019 में ओपनएसएसएच डेवलपर्स के अनुसार, एससीपी पुराना अनम्य और आसानी से तय नहीं है; वे फाइल स्थानांतरण के लिए अधिक आधुनिक प्रोटोकॉल जैसे सुरक्षित फ़ाइल स्थानांतरण कार्यक्रम और आरएस वाईएनसी के उपयोग की सलाह देते हैं।[3] ओपनएसएसएच संस्करण 9.0 के अनुसार, एससीपी क्लाइंट इसलिए लीगेसी एससीपी/आरसीपी प्रोटोकॉल के अतिरिक्त डिफ़ॉल्ट रूप से फ़ाइल स्थानांतरण के लिए एसएफटीपी का उपयोग करता है।[4]


सुरक्षित कॉपी प्रोटोकॉल

एससीपी एक नेटवर्क प्रोटोकॉल है जो बीएसडी आरसीपी (यूनिक्स) प्रोटोकॉल पर आधारित है[5] जो एक नेटवर्क पर होस्ट के बीच दस्तावेज हस्तांतरण का समर्थन करता है। एससीपी डेटा स्थानांतरण के लिए सुरक्षित खोल (एसएसएच) का उपयोग करता है और प्रमाणीकरण के लिए समान तंत्र का उपयोग करता है, जिससे सूचना सुरक्षा या पारगमन में डेटा की प्रामाणिकता और गोपनीयता सुनिश्चित होती है। एक ग्राहक वैकल्पिक रूप से उनकी मूल विशेषताओं (अनुमतियों, टाइमस्टैम्प) सहित सर्वर पर फ़ाइलें भेज (अपलोड) कर सकता है। ग्राहक सर्वर (डाउनलोड) से फ़ाइलों या निर्देशिकाओं का अनुरोध भी कर सकते हैं। एससीपी डिफ़ॉल्ट रूप से टीसीपी पोर्ट 22 पर चलता है।[6] आरसीपी की तरह टिप्पणियों के लिए कोई अनुरोध नहीं है जो प्रोटोकॉल की निकटतम को परिभाषित करता है।

कार्य

सामान्यतः, क्लाइंट दूरस्थ होस्ट के लिए एसएसएच कनेक्शन आरंभ करता है और दूरस्थ सर्वर पर एससीपी प्रक्रिया प्रारंभ करने का अनुरोध करता है। दूरस्थ एससीपी प्रक्रिया दो में से एक मोड में काम कर सकती है:

  • स्रोत मोड जो फ़ाइलों को पढ़ता है (सामान्यतः डिस्क से) और उन्हें क्लाइंट या वापस भेजता है
  • सिंक मोड, जो क्लाइंट द्वारा भेजी गई फाइलों को स्वीकार करता है और उन्हें (सामान्यतः डिस्क पर) रिमोट होस्ट पर लिखता है।

अधिकांश एससीपी ग्राहकों के लिए स्रोत मोड सामान्यतः -f फ्लैग (से) के साथ ट्रिगर होता है, जबकि सिंक मोड -t (to) के साथ ट्रिगर होता है।[2] ये झंडे आंतरिक रूप से उपयोग किए जाते हैं और एससीपी स्रोत कोड के बाहर प्रलेखित नहीं होते हैं।

रिमोट से रिमोट मोड

अतीत में दूरस्थ-से-दूरस्थ सुरक्षित प्रति में एससीपी क्लाइंट स्रोत होस्ट के लिए एक एसएसएच कनेक्शन खोलता है और अनुरोध करता है कि यह बदले में गंतव्य के लिए एक एससीपी कनेक्शन खोलें (रिमोट-टू-रिमोट मोड दो एससीपी कनेक्शन खोलने और मध्यस्थ के रूप में मूल क्लाइंट का उपयोग करने का समर्थन नहीं करता है)। यह ध्यान रखना महत्वपूर्ण है कि एससीपी का उपयोग पासवर्ड या कीबोर्ड-इंटरैक्टिव प्रमाणीकरण मोड में काम करते समय स्रोत से गंतव्य तक दूरस्थ रूप से कॉपी करने के लिए नहीं किया जा सकता है क्योंकि इससे स्रोत के लिए गंतव्य सर्वर के प्रमाणीकरण प्रमाण-पत्र प्रकट होंगे। चूँकि कुंजी-आधारित या जीएसएसएपीआई विधियों के साथ यह संभव है जिसके लिए उपयोगकर्ता इनपुट की आवश्यकता नहीं होती है।[2]

वर्तमान में रिमोट-टू-रिमोट मोड क्लाइंट के माध्यम से रूटिंग ट्रैफ़िक का समर्थन करता है जिसने स्थानांतरण की प्रारंभ की तथापि वह स्थानांतरण के लिए एक तृतीय पक्ष हो। इस तरह प्राधिकरण प्रमाणिकता केवल मूल क्लाइंट तृतीय पक्ष पर होनी चाहिए।[7]


बातूनी शेल प्रोफाइल का उपयोग करने में समस्या

एससीपी एसएसएच लॉगिन शेल के साथ संचार करने वाले पाठ की अपेक्षा नहीं करता है। एसएसएच प्रोफाइल के कारण प्रेषित पाठ (उदाहरण के लिए echo वेलकम .bashrc फ़ाइल में) एक त्रुटि संदेश के रूप में समझा जाता है, और एक शून्य रेखा (echo </kbd) >) त्रुटि संदेश के पूरा होने की प्रतीक्षा में एससीपी क्लाइंट को गतिरोध का कारण बनता है।[2]


सुरक्षित कॉपी (रिमोट फाइल कॉपी प्रोग्राम)

एससीपी कार्यक्रम[8] एक सॉफ्टवेयर उपकरण है जो एससीपी प्रोटोकॉल को सर्विस डेमन या क्लाइंट के रूप में प्रयुक्त करता है। यह सुरक्षित नकल करने का कार्यक्रम है।

संभवतः सबसे व्यापक रूप से उपयोग किया जाने वाला एससीपी प्रोग्राम ओपेन सएसएच कमांड लाइन एससीपी प्रोग्राम है जो कि अधिकांश एसएसएच कार्यान्वयनों में प्रदान किया जाता है। एससीपी प्रोग्राम rcp कमांड का सुरक्षित एनालॉग है। एससीपी प्रोग्राम उन सभी एसएसएच सर्वर का भाग होना चाहिए जो एससीपी सेवा प्रदान करना चाहते हैं क्योंकि एससीपी एससीपी सर्वर के रूप में भी कार्य करता है।

कुछ एसएसएच कार्यान्वयन एससीपी2 प्रोग्राम प्रदान करते हैं जो एससीपी के अतिरिक्त एसएसएच फ़ाइल स्थानांतरण प्रोटोकॉल प्रोटोकॉल का उपयोग करता है, किंतु एससीपी के समान कमांड लाइन इंटरफ़ेस प्रदान करता है। एससीपी सामान्यतः एससीपी2 का सांकेतिक लिंक होता है।

सिंटेक्स

सामान्यतः scp प्रोग्राम का सिंटैक्स[9] cp (कॉपी) के सिंटैक्स की तरह होता है:

स्थानीय फ़ाइल को दूरस्थ होस्ट में कॉपी करना:

scp LocalSourceFile user@remotehost:directory/TargetFile

रिमोट होस्ट से फ़ाइल कॉपी करना और रिमोट होस्ट से फ़ोल्डर कॉपी करना (-r स्विच के साथ):

scp user@remotehost:directory/SourceFile LocalTargetFile
scp -r user@host:directory/SourceFolder LocalTargetFolder


ध्यान दें कि यदि रिमोट होस्ट 22 के डिफ़ॉल्ट के अतिरिक्त पोर्ट का उपयोग करता है तो इसे कमांड में निर्दिष्ट किया जा सकता है। उदाहरण के लिए होस्ट से फ़ाइल कॉपी करना:

scp -P 2222 user@host:directory/SourceFile TargetFile

अन्य ग्राहक

जैसा कि सुरक्षित कॉपी प्रोटोकॉल केवल फाइल स्थानांतरण को प्रयुक्त करता है जीयूआई एससीपी क्लाइंट दुर्लभ हैं क्योंकि इसे प्रयुक्त करने के लिए अतिरिक्त कार्यक्षमता (निर्देशिका (फाइल सिस्टम) लिस्टिंग कम से कम) की आवश्यकता होती है। उदाहरण के लिए विनएससीपी, एसएफटीपी प्रोटोकॉल को डिफॉल्ट करता है।[10] एससीपी मोड में काम करते समय भी विनएससीपी जैसे क्लाइंट सामान्यतः शुद्ध एससीपी क्लाइंट नहीं होते हैं क्योंकि उन्हें अतिरिक्त कार्यक्षमता (जैसे एलएस ls कमांड) को प्रयुक्त करने के लिए अन्य साधनों का उपयोग करना चाहिए।[11] यह बदले में प्लेटफ़ॉर्म-निर्भरता की समस्याएँ लाता है।

एसएसएच पर फाइलों के प्रबंधन के लिए अधिक व्यापक उपकरण एसएसएच फाइल स्थानांतरण प्रोटोकॉल क्लाइंट हैं।

सुरक्षा

2019 में भेद्यता CVE-2019-6111 [12] की घोषणा ओपनएसएच् एससीपी उपकरण और प्रोटोकॉल से संबंधित की गई थी, जो उपयोगकर्ताओं को एससीपी क्लाइंट लक्ष्य निर्देशिका में इच्छानुसार फ़ाइलों को अधिलेखित करने की अनुमति देता है।

यह भी देखें

संदर्भ

  1. "लिनक्स और यूनिक्स एसपीपी कमांड". Computer Hope. Retrieved 4 August 2015.
  2. 2.0 2.1 2.2 2.3 Pechanec, Jan. "एससीपी प्रोटोकॉल कैसे काम करता है". Jan Pechanec's weblog. Oracle. Archived from the original on 2017-02-15. Retrieved 4 August 2015.
  3. "OpenSSH 8.0". OpenSSH Release Notes. 17 April 2019.
  4. "OpenSSH 9.0". OpenSSH Release Notes. 8 April 2022.
  5. "scp(1) - OpenBSD मैनुअल पेज (इतिहास अनुभाग)". Retrieved 25 June 2012.
  6. "एससीपी - सिक्योर कॉपी प्रोटोकॉल - यह क्या है और पूर्ण परिभाषा और उदाहरण सीएमडीएस!". PC & Network Downloads - PCWDLD.com (in English). 2019-06-29. Retrieved 2020-05-22.
  7. Carroll, Brandon (16 August 2017). "फाइल ट्रांसफर के लिए सिक्योर कॉपी का उपयोग कैसे करें". TechRepublic (in English). Retrieved 2020-05-22.
  8. "पोर्टेबल ओपनएसएसएच". GitHub. 13 May 2022.
  9. "scp(1) - OpenBSD manual pages" https://man.openbsd.org/scp
  10. "Supported File Transfer Protocols :: WinSCP". winscp.net (in English). Retrieved 2020-05-22.
  11. "The SCP/Shell Page (Advanced Site Settings dialog) :: WinSCP". winscp.net (in English). Retrieved 2020-05-22.
  12. "NVD - Cve-2019-6111".