सुरक्षित कॉपी प्रोटोकॉल: Difference between revisions

From Vigyanwiki
(Created page with "{{short description|Network protocol for copying files between computers}} {{More citations needed|date=July 2008}} {{Infobox software | name = scp | logo...")
 
No edit summary
 
(6 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{short description|Network protocol for copying files between computers}}
{{short description|Network protocol for copying files between computers}}
{{More citations needed|date=July 2008}}
{{Infobox software
{{Infobox software
| name                  = scp
| name                  = scp
Line 18: Line 17:
| website                = {{URL|https://www.openssh.com/}}
| website                = {{URL|https://www.openssh.com/}}
}}
}}
सिक्योर कॉपी प्रोटोकॉल (SCP) एक स्थानीय होस्ट और एक रिमोट [[सर्वर (कंप्यूटिंग)]] या दो रिमोट होस्ट के बीच [[कम्प्यूटर फाइल]] को सुरक्षित रूप से स्थानांतरित करने का एक साधन है। यह [[ सुरक्षित खोल ]] (SSH) प्रोटोकॉल पर आधारित है।<ref>{{cite web|title=लिनक्स और यूनिक्स एसपीपी कमांड|url=https://www.computerhope.com/unix/scp.htm|access-date=4 August 2015|website=Computer Hope}}</ref> एससीपी आमतौर पर सिक्योर कॉपी प्रोटोकॉल और प्रोग्राम दोनों को संदर्भित करता है।<ref name="Pechanec">{{cite web|url=https://blogs.oracle.com/janp/entry/how_the_scp_protocol_works|title=एससीपी प्रोटोकॉल कैसे काम करता है|last=Pechanec|first=Jan|author-link=Jan Pechanec|publisher=Oracle|archive-url=https://web.archive.org/web/20170215184048/https://blogs.oracle.com/janp/entry/how_the_scp_protocol_works|archive-date=2017-02-15|work=Jan Pechanec's weblog|access-date=4 August 2015}}</ref>
सुरक्षित कॉपी प्रोटोकॉल (एससीपी) एक स्थानीय होस्ट और एक रिमोट [[सर्वर (कंप्यूटिंग)]] या दो रिमोट होस्ट के बीच [[कम्प्यूटर फाइल]] को सुरक्षित रूप से स्थानांतरित करने का एक साधन है। यह [[ सुरक्षित खोल |सुरक्षित खोल]] (एसएसएच) प्रोटोकॉल पर आधारित है।<ref>{{cite web|title=लिनक्स और यूनिक्स एसपीपी कमांड|url=https://www.computerhope.com/unix/scp.htm|access-date=4 August 2015|website=Computer Hope}}</ref> एससीपी सामान्यतः सुरक्षित कॉपी प्रोटोकॉल और प्रोग्राम दोनों को संदर्भित करता है।<ref name="Pechanec">{{cite web|url=https://blogs.oracle.com/janp/entry/how_the_scp_protocol_works|title=एससीपी प्रोटोकॉल कैसे काम करता है|last=Pechanec|first=Jan|author-link=Jan Pechanec|publisher=Oracle|archive-url=https://web.archive.org/web/20170215184048/https://blogs.oracle.com/janp/entry/how_the_scp_protocol_works|archive-date=2017-02-15|work=Jan Pechanec's weblog|access-date=4 August 2015}}</ref>
अप्रैल 2019 में ओपनएसएसएच डेवलपर्स के अनुसार, एससीपी पुराना, अनम्य और आसानी से तय नहीं है; वे फाइल ट्रांसफर के लिए अधिक आधुनिक प्रोटोकॉल जैसे [[ सुरक्षित फ़ाइल स्थानांतरण कार्यक्रम ]] और [[rsync]] के उपयोग की सलाह देते हैं।<ref>{{cite web|url=https://www.openssh.com/txt/release-8.0|title=OpenSSH 8.0|work=OpenSSH Release Notes|date=17 April 2019}}</ref> OpenSSH संस्करण 9.0 के अनुसार, <kbd>scp</kbd> क्लाइंट इसलिए लीगेसी SCP/RCP प्रोटोकॉल के बजाय डिफ़ॉल्ट रूप से फ़ाइल स्थानांतरण के लिए SFTP का उपयोग करता है।<ref>{{cite web |date=8 April 2022 |title=OpenSSH 9.0 |url=https://www.openssh.com/txt/release-9.0 |work=OpenSSH Release Notes}}</ref>


अप्रैल 2019 में ओपनएसएसएच डेवलपर्स के अनुसार, एससीपी पुराना अनम्य और आसानी से तय नहीं है; वे फाइल स्थानांतरण के लिए अधिक आधुनिक प्रोटोकॉल जैसे [[ सुरक्षित फ़ाइल स्थानांतरण कार्यक्रम |सुरक्षित फ़ाइल स्थानांतरण कार्यक्रम]] और [[rsync|आरएस वाईएनसी]] के उपयोग की सलाह देते हैं।<ref>{{cite web|url=https://www.openssh.com/txt/release-8.0|title=OpenSSH 8.0|work=OpenSSH Release Notes|date=17 April 2019}}</ref> ओपनएसएसएच संस्करण 9.0 के अनुसार, <kbd>एससीपी</kbd> क्लाइंट इसलिए लीगेसी एससीपी/आरसीपी प्रोटोकॉल के अतिरिक्त डिफ़ॉल्ट रूप से फ़ाइल स्थानांतरण के लिए एसएफटीपी का उपयोग करता है।<ref>{{cite web |date=8 April 2022 |title=OpenSSH 9.0 |url=https://www.openssh.com/txt/release-9.0 |work=OpenSSH Release Notes}}</ref>


== सिक्योर कॉपी प्रोटोकॉल ==
एससीपी एक [[नेटवर्क प्रोटोकॉल]] है, जो [[बीएसडी]] [[आरसीपी (यूनिक्स)]] प्रोटोकॉल पर आधारित है,<ref>{{cite web|title=scp(1) - OpenBSD मैनुअल पेज (इतिहास अनुभाग)|url=https://man.openbsd.org/scp#HISTORY|access-date=25 June 2012}}</ref> जो एक नेटवर्क पर मेजबानों के बीच [[ दस्तावेज हस्तांतरण ]] का समर्थन करता है। एससीपी डेटा ट्रांसफर के लिए [[ सुरक्षित खोल ]] (एसएसएच) का उपयोग करता है और प्रमाणीकरण के लिए समान तंत्र का उपयोग करता है, जिससे सूचना सुरक्षा # [[पारगमन में डेटा]] की प्रामाणिकता और [[गोपनीयता]] सुनिश्चित होती है। एक ग्राहक वैकल्पिक रूप से उनकी मूल विशेषताओं (अनुमतियों, टाइमस्टैम्प) सहित सर्वर पर फ़ाइलें भेज (अपलोड) कर सकता है। ग्राहक सर्वर (डाउनलोड) से फ़ाइलों या निर्देशिकाओं का अनुरोध भी कर सकते हैं। एससीपी डिफ़ॉल्ट रूप से [[टीसीपी पोर्ट]] 22 पर चलता है।<ref>{{Cite web|title=एससीपी - सिक्योर कॉपी प्रोटोकॉल - यह क्या है और पूर्ण परिभाषा और उदाहरण सीएमडीएस!|url=https://www.pcwdld.com/what-is-scp|date=2019-06-29|website=PC & Network Downloads - PCWDLD.com|language=en-US|access-date=2020-05-22}}</ref> आरसीपी की तरह, टिप्पणियों के लिए कोई अनुरोध नहीं है जो प्रोटोकॉल की बारीकियों को परिभाषित करता है।


=== समारोह ===
 
आम तौर पर, क्लाइंट दूरस्थ होस्ट के लिए SSH कनेक्शन आरंभ करता है, और दूरस्थ सर्वर पर SCP प्रक्रिया प्रारंभ करने का अनुरोध करता है। दूरस्थ SCP प्रक्रिया दो में से एक मोड में काम कर सकती है:
== सुरक्षित कॉपी प्रोटोकॉल ==
* स्रोत मोड, जो फाइलों को पढ़ता है (आमतौर पर डिस्क से) और उन्हें क्लाइंट को वापस भेजता है, या
एससीपी एक [[नेटवर्क प्रोटोकॉल]] है जो [[बीएसडी]] [[आरसीपी (यूनिक्स)]] प्रोटोकॉल पर आधारित है<ref>{{cite web|title=scp(1) - OpenBSD मैनुअल पेज (इतिहास अनुभाग)|url=https://man.openbsd.org/scp#HISTORY|access-date=25 June 2012}}</ref> जो एक नेटवर्क पर होस्ट के बीच [[ दस्तावेज हस्तांतरण |दस्तावेज हस्तांतरण]] का समर्थन करता है। एससीपी डेटा स्थानांतरण के लिए [[ सुरक्षित खोल |सुरक्षित खोल]] (एसएसएच) का उपयोग करता है और प्रमाणीकरण के लिए समान तंत्र का उपयोग करता है, जिससे सूचना सुरक्षा या [[पारगमन में डेटा]] की प्रामाणिकता और [[गोपनीयता]] सुनिश्चित होती है। एक ग्राहक वैकल्पिक रूप से उनकी मूल विशेषताओं (अनुमतियों, टाइमस्टैम्प) सहित सर्वर पर फ़ाइलें भेज (अपलोड) कर सकता है। ग्राहक सर्वर (डाउनलोड) से फ़ाइलों या निर्देशिकाओं का अनुरोध भी कर सकते हैं। एससीपी डिफ़ॉल्ट रूप से [[टीसीपी पोर्ट]] 22 पर चलता है।<ref>{{Cite web|title=एससीपी - सिक्योर कॉपी प्रोटोकॉल - यह क्या है और पूर्ण परिभाषा और उदाहरण सीएमडीएस!|url=https://www.pcwdld.com/what-is-scp|date=2019-06-29|website=PC & Network Downloads - PCWDLD.com|language=en-US|access-date=2020-05-22}}</ref> आरसीपी की तरह टिप्पणियों के लिए कोई अनुरोध नहीं है जो प्रोटोकॉल की निकटतम को परिभाषित करता है।
* सिंक मोड, जो क्लाइंट द्वारा भेजी गई फाइलों को स्वीकार करता है और उन्हें (आमतौर पर डिस्क पर) रिमोट होस्ट पर लिखता है।
 
अधिकांश एससीपी ग्राहकों के लिए, स्रोत मोड आमतौर पर <kbd>-f</kbd> फ्लैग (से) के साथ ट्रिगर होता है, जबकि सिंक मोड <kbd>-t</kbd> (to) के साथ ट्रिगर होता है।<ref name="Pechanec"/> ये झंडे आंतरिक रूप से उपयोग किए जाते हैं और एससीपी स्रोत कोड के बाहर प्रलेखित नहीं होते हैं।
=== कार्य ===
सामान्यतः, क्लाइंट दूरस्थ होस्ट के लिए एसएसएच कनेक्शन आरंभ करता है और दूरस्थ सर्वर पर एससीपी प्रक्रिया प्रारंभ करने का अनुरोध करता है। दूरस्थ एससीपी प्रक्रिया दो में से एक मोड में काम कर सकती है:
*स्रोत मोड जो फ़ाइलों को पढ़ता है (सामान्यतः डिस्क से) और उन्हें क्लाइंट या वापस भेजता है
* सिंक मोड, जो क्लाइंट द्वारा भेजी गई फाइलों को स्वीकार करता है और उन्हें (सामान्यतः डिस्क पर) रिमोट होस्ट पर लिखता है।
अधिकांश एससीपी ग्राहकों के लिए स्रोत मोड सामान्यतः <kbd><code>-f</code></kbd> फ्लैग (से) के साथ ट्रिगर होता है, जबकि सिंक मोड <kbd>-t</kbd> (to) के साथ ट्रिगर होता है।<ref name="Pechanec"/> ये झंडे आंतरिक रूप से उपयोग किए जाते हैं और एससीपी स्रोत कोड के बाहर प्रलेखित नहीं होते हैं।


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


हाल ही में, रिमोट-टू-रिमोट मोड क्लाइंट के माध्यम से रूटिंग ट्रैफ़िक का समर्थन करता है जिसने स्थानांतरण की शुरुआत की, भले ही वह स्थानांतरण के लिए एक तृतीय पक्ष हो। इस तरह, प्राधिकरण प्रमाणिकता केवल मूल ग्राहक, तृतीय पक्ष पर होनी चाहिए।<ref>{{Cite web|title=फाइल ट्रांसफर के लिए सिक्योर कॉपी का उपयोग कैसे करें|url=https://www.techrepublic.com/article/how-to-use-secure-copy-for-file-transfer/|first=Brandon|last=Carroll|website=TechRepublic|language=en|access-date=2020-05-22|date=16 August 2017 }}</ref>
वर्तमान में रिमोट-टू-रिमोट मोड क्लाइंट के माध्यम से रूटिंग ट्रैफ़िक का समर्थन करता है जिसने स्थानांतरण की प्रारंभ की तथापि वह स्थानांतरण के लिए एक तृतीय पक्ष हो। इस तरह प्राधिकरण प्रमाणिकता केवल मूल क्लाइंट तृतीय पक्ष पर होनी चाहिए।<ref>{{Cite web|title=फाइल ट्रांसफर के लिए सिक्योर कॉपी का उपयोग कैसे करें|url=https://www.techrepublic.com/article/how-to-use-secure-copy-for-file-transfer/|first=Brandon|last=Carroll|website=TechRepublic|language=en|access-date=2020-05-22|date=16 August 2017 }}</ref>




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




== सिक्योर कॉपी (रिमोट फाइल कॉपी प्रोग्राम) ==
== सुरक्षित कॉपी (रिमोट फाइल कॉपी प्रोग्राम) ==
एससीपी कार्यक्रम<ref>{{cite web | url=https://github.com/openssh/openssh-portable/blob/master/scp.c | title=पोर्टेबल ओपनएसएसएच| website=[[GitHub]] | date=13 May 2022 }}</ref> एक सॉफ्टवेयर टूल है जो SCP प्रोटोकॉल को सर्विस डेमन या क्लाइंट के रूप में लागू करता है। यह सुरक्षित नकल करने का कार्यक्रम है।
एससीपी कार्यक्रम<ref>{{cite web | url=https://github.com/openssh/openssh-portable/blob/master/scp.c | title=पोर्टेबल ओपनएसएसएच| website=[[GitHub]] | date=13 May 2022 }}</ref> एक सॉफ्टवेयर उपकरण है जो एससीपी प्रोटोकॉल को सर्विस डेमन या क्लाइंट के रूप में प्रयुक्त करता है। यह सुरक्षित नकल करने का कार्यक्रम है।


शायद सबसे व्यापक रूप से उपयोग किया जाने वाला SCP प्रोग्राम OpenSSH [[कमांड लाइन]] <kbd>scp</kbd> प्रोग्राम है, जो कि अधिकांश SSH कार्यान्वयनों में प्रदान किया जाता है। <kbd>scp</kbd> प्रोग्राम <kbd>rcp</kbd> कमांड का सुरक्षित एनालॉग है। <kbd>scp</kbd> प्रोग्राम उन सभी SSH सर्वर का हिस्सा होना चाहिए जो SCP सेवा प्रदान करना चाहते हैं, क्योंकि <kbd>scp</kbd> SCP सर्वर के रूप में भी कार्य करता है।
संभवतः सबसे व्यापक रूप से उपयोग किया जाने वाला एससीपी प्रोग्राम ओपेन सएसएच [[कमांड लाइन]] <kbd>एससीपी</kbd> प्रोग्राम है जो कि अधिकांश एसएसएच कार्यान्वयनों में प्रदान किया जाता है। <kbd>एससीपी</kbd> प्रोग्राम <kbd>rcp</kbd> कमांड का सुरक्षित एनालॉग है। <kbd>एससीपी</kbd> प्रोग्राम उन सभी एसएसएच सर्वर का भाग होना चाहिए जो एससीपी सेवा प्रदान करना चाहते हैं क्योंकि <kbd>एससीपी</kbd> एससीपी सर्वर के रूप में भी कार्य करता है।


कुछ SSH कार्यान्वयन <kbd>scp2</kbd> प्रोग्राम प्रदान करते हैं, जो SCP के बजाय SSH फ़ाइल स्थानांतरण प्रोटोकॉल प्रोटोकॉल का उपयोग करता है, लेकिन <kbd>scp</kbd> के समान कमांड लाइन इंटरफ़ेस प्रदान करता है। <kbd>scp</kbd> आमतौर पर <kbd>scp2</kbd> का सांकेतिक लिंक होता है।
कुछ एसएसएच कार्यान्वयन <kbd>एससीपी2</kbd> प्रोग्राम प्रदान करते हैं जो एससीपी के अतिरिक्त एसएसएच फ़ाइल स्थानांतरण प्रोटोकॉल प्रोटोकॉल का उपयोग करता है, किंतु <kbd>एससीपी</kbd> के समान कमांड लाइन इंटरफ़ेस प्रदान करता है। <kbd>एससीपी</kbd> सामान्यतः <kbd>एससीपी2</kbd> का सांकेतिक लिंक होता है।


=== सिंटेक्स ===
=== सिंटेक्स ===
आमतौर पर, <kbd>scp</kbd> प्रोग्राम का सिंटैक्स<ref>"scp(1) - OpenBSD manual pages" https://man.openbsd.org/scp</ref> Cp (Unix)|<kbd>cp</kbd> (प्रतिलिपि) के सिंटैक्स की तरह है:
सामान्यतः <code>scp</code> प्रोग्राम का सिंटैक्स<ref>"scp(1) - OpenBSD manual pages" https://man.openbsd.org/scp</ref> <code>cp</code> (कॉपी) के सिंटैक्स की तरह होता है:


स्थानीय फ़ाइल को दूरस्थ होस्ट में कॉपी करना:
स्थानीय फ़ाइल को दूरस्थ होस्ट में कॉपी करना:<syntaxhighlight>
<kbd>scp <var>LocalSourceFile</var> <var>user</var>@<var>remotehost</var>:<var>directory</var>/<var>TargetFile</var></kbd >
scp LocalSourceFile user@remotehost:directory/TargetFile
</syntaxhighlight>रिमोट होस्ट से फ़ाइल कॉपी करना और रिमोट होस्ट से फ़ोल्डर कॉपी करना (<kbd>-r</kbd> स्विच के साथ):<syntaxhighlight>
scp user@remotehost:directory/SourceFile LocalTargetFile
scp -r user@host:directory/SourceFolder LocalTargetFolder
</syntaxhighlight>


रिमोट होस्ट से फ़ाइल कॉपी करना और रिमोट होस्ट से फ़ोल्डर कॉपी करना (<kbd>-r</kbd> स्विच के साथ):
ध्यान दें कि यदि रिमोट होस्ट 22 के डिफ़ॉल्ट के अतिरिक्त पोर्ट का उपयोग करता है तो इसे कमांड में निर्दिष्ट किया जा सकता है। उदाहरण के लिए होस्ट से फ़ाइल कॉपी करना:<syntaxhighlight>
<kbd>scp <var>उपयोगकर्ता</var>@<var>remotehost</var>:<var>directory</var>/<var>SourceFile</var> <var>LocalTargetFile</var></kbd >
scp -P 2222 user@host:directory/SourceFile TargetFile
<kbd>scp -r <var>उपयोगकर्ता</var>@<var>मेजबान</var>:<var>निर्देशिका</var>/<var>SourceFolder</var> <var>LocalTargetFolder</var>< / केबीडी>


ध्यान दें कि यदि रिमोट होस्ट 22 के डिफ़ॉल्ट के अलावा पोर्ट का उपयोग करता है, तो इसे कमांड में निर्दिष्ट किया जा सकता है। उदाहरण के लिए, होस्ट से फ़ाइल कॉपी करना:
</syntaxhighlight>
<kbd>scp -P 2222 <var>उपयोगकर्ता</var>@<var>मेजबान</var>:<var>निर्देशिका</var>/<var>SourceFile</var> <var>TargetFile</var> </केबीडी>


=== अन्य ग्राहक ===
=== अन्य ग्राहक ===
जैसा कि सिक्योर कॉपी प्रोटोकॉल केवल फाइल ट्रांसफर को लागू करता है, [[जीयूआई]] एससीपी क्लाइंट दुर्लभ हैं, क्योंकि इसे लागू करने के लिए अतिरिक्त कार्यक्षमता ([[निर्देशिका (फाइल सिस्टम)]] लिस्टिंग कम से कम) की आवश्यकता होती है। उदाहरण के लिए, [[WinSCP]], SFTP प्रोटोकॉल को डिफॉल्ट करता है।<ref>{{Cite web|title=Supported File Transfer Protocols :: WinSCP|url=https://winscp.net/eng/docs/protocols|website=winscp.net|language=en|access-date=2020-05-22}}</ref> एससीपी मोड में काम करते समय भी, विनएससीपी जैसे क्लाइंट आमतौर पर शुद्ध एससीपी क्लाइंट नहीं होते हैं, क्योंकि उन्हें अतिरिक्त कार्यक्षमता (जैसे एलएस|<kbd>ls</kbd> कमांड) को लागू करने के लिए अन्य साधनों का उपयोग करना चाहिए।<ref>{{Cite web|title=The SCP/Shell Page (Advanced Site Settings dialog) :: WinSCP|url=https://winscp.net/eng/docs/ui_login_scp|website=winscp.net|language=en|access-date=2020-05-22}}</ref> यह बदले में प्लेटफ़ॉर्म-निर्भरता की समस्याएँ लाता है।
जैसा कि सुरक्षित कॉपी प्रोटोकॉल केवल फाइल स्थानांतरण को प्रयुक्त करता है [[जीयूआई]] एससीपी क्लाइंट दुर्लभ हैं क्योंकि इसे प्रयुक्त करने के लिए अतिरिक्त कार्यक्षमता ([[निर्देशिका (फाइल सिस्टम)]] लिस्टिंग कम से कम) की आवश्यकता होती है। उदाहरण के लिए [[WinSCP|विनएससीपी]], एसएफटीपी प्रोटोकॉल को डिफॉल्ट करता है।<ref name=":0">{{Cite web|title=Supported File Transfer Protocols :: WinSCP|url=https://winscp.net/eng/docs/protocols|website=winscp.net|language=en|access-date=2020-05-22}}</ref> एससीपी मोड में काम करते समय भी विनएससीपी जैसे क्लाइंट सामान्यतः शुद्ध एससीपी क्लाइंट नहीं होते हैं क्योंकि उन्हें अतिरिक्त कार्यक्षमता (जैसे एलएस <kbd>ls</kbd> कमांड) को प्रयुक्त करने के लिए अन्य साधनों का उपयोग करना चाहिए।<ref>{{Cite web|title=The SCP/Shell Page (Advanced Site Settings dialog) :: WinSCP|url=https://winscp.net/eng/docs/ui_login_scp|website=winscp.net|language=en|access-date=2020-05-22}}</ref> यह बदले में प्लेटफ़ॉर्म-निर्भरता की समस्याएँ लाता है।


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


== सुरक्षा ==
== सुरक्षा ==
2019 में भेद्यता {{CVE|2019-6111}}<ref>{{cite web | url=https://nvd.nist.gov/vuln/detail/CVE-2019-6111 | title=NVD - Cve-2019-6111 }}</ref> Opensh SCP टूल और प्रोटोकॉल से संबंधित घोषणा की गई थी, जो उपयोगकर्ताओं को SCP क्लाइंट लक्ष्य निर्देशिका में मनमानी फ़ाइलों को अधिलेखित करने की अनुमति देता है।
2019 में भेद्यता {{CVE|2019-6111}} <ref>{{cite web | url=https://nvd.nist.gov/vuln/detail/CVE-2019-6111 | title=NVD - Cve-2019-6111 }}</ref> की घोषणा ओपनएसएच् एससीपी उपकरण और प्रोटोकॉल से संबंधित की गई थी, जो उपयोगकर्ताओं को एससीपी क्लाइंट लक्ष्य निर्देशिका में इच्छानुसार फ़ाइलों को अधिलेखित करने की अनुमति देता है।
 
== यह भी देखें ==
== यह भी देखें ==
{{Wikibooks|Guide to Windows Commands}}
{{Wikibooks|Guide to Windows Commands}}
Line 87: Line 90:


{{Windows commands}}
{{Windows commands}}
[[Category: क्रिप्टोग्राफिक सॉफ्टवेयर]] [[Category: क्रिप्टोग्राफिक प्रोटोकॉल]] [[Category: नेटवर्क फ़ाइल स्थानांतरण प्रोटोकॉल]]


[[Category: Machine Translated Page]]
[[Category:CS1 English-language sources (en)]]
[[Category:Collapse templates]]
[[Category:Created On 11/05/2023]]
[[Category:Created On 11/05/2023]]
[[Category:Lua-based templates]]
[[Category:Machine Translated Page]]
[[Category:Multi-column templates]]
[[Category:Navigational boxes| ]]
[[Category:Navigational boxes without horizontal lists]]
[[Category:Pages using div col with small parameter]]
[[Category:Pages with script errors]]
[[Category:Pages with syntax highlighting errors]]
[[Category:Sidebars with styles needing conversion]]
[[Category:Template documentation pages|Documentation/doc]]
[[Category:Templates Vigyan Ready]]
[[Category:Templates generating microformats]]
[[Category:Templates that add a tracking category]]
[[Category:Templates that are not mobile friendly]]
[[Category:Templates that generate short descriptions]]
[[Category:Templates using TemplateData]]
[[Category:Templates using under-protected Lua modules]]
[[Category:Wikipedia fully protected templates|Div col]]
[[Category:Wikipedia metatemplates]]
[[Category:Windows commands]]
[[Category:क्रिप्टोग्राफिक प्रोटोकॉल]]
[[Category:क्रिप्टोग्राफिक सॉफ्टवेयर]]
[[Category:नेटवर्क फ़ाइल स्थानांतरण प्रोटोकॉल]]

Latest revision as of 18:40, 15 June 2023

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".