`Ssh -Y` (भरोसेमंद X11 अग्रेषण) और` ssh -X` (अविश्वसनीय X11 अग्रेषण) के बीच अंतर क्या है?


114

ssh -Y(विश्वसनीय X11 अग्रेषण) और ssh -X(अविश्वसनीय X11 अग्रेषण) के बीच क्या अंतर है ? जहां तक ​​मैंने इसे समझा है, इसका सुरक्षा से कुछ लेना-देना है, लेकिन मुझे यह फर्क समझ नहीं आया कि कब और किसका इस्तेमाल करना है।

जवाबों:


89

दोनों विकल्पों में X11 अग्रेषण के साथ कुछ करना है। इसका मतलब है कि यदि आप इसे सक्षम करते हैं, तो आप अपने SSH सत्र के माध्यम से एक ग्राफिकल क्लाइंट का उपयोग कर सकते हैं (जैसे, फ़ायरफ़ॉक्स या कुछ और का उपयोग करें)।

यदि आप ssh -X remotemachineदूरस्थ मशीन का उपयोग करते हैं तो एक अविश्वसनीय ग्राहक के रूप में व्यवहार किया जाता है। तो आपका स्थानीय क्लाइंट रिमोट मशीन को कमांड भेजता है और ग्राफिकल आउटपुट प्राप्त करता है। यदि आपका आदेश कुछ सुरक्षा सेटिंग्स का उल्लंघन करता है, तो आपको इसके बजाय एक त्रुटि प्राप्त होगी।

लेकिन अगर आप ssh -Y remotemachineरिमोट मशीन का उपयोग करते हैं तो एक विश्वसनीय ग्राहक के रूप में व्यवहार किया जाता है। यह अंतिम विकल्प सुरक्षा समस्याओं को खोल सकता है। क्योंकि अन्य ग्राफिकल (X11) क्लाइंट दूरस्थ मशीन से डेटा को सूँघ सकते हैं (स्क्रीनशॉट बनाते हैं, की-क्लोज़िंग और अन्य गंदा सामान करते हैं) और उन डेटा को बदलना भी संभव है।

यदि आप उन चीजों के बारे में अधिक जानना चाहते हैं, तो मैं Xsecurity manpage या X Security extension युक्ति पढ़ने का सुझाव देता हूं । इसके अलावा, आप विकल्पों की जांच कर सकते हैं ForwardX11और ForwardX11Trustedअपने में /etc/ssh/ssh_config


6
Ssh मैनपेज दुर्भाग्यपूर्ण शब्दों का उपयोग करता है, यह सुझाव देता है (कम से कम मेरे लिए) कि -X उपयोग करने के लिए असुरक्षित है और यह बेहतर है। तो इस जवाब के लिए धन्यवाद।
टॉरस्टेन ब्रॉन्जर

तो, -Xअन्य ग्राहकों के लिए डेटा को सूँघना या बदलना असंभव है?
मुसीफिल

6
तो सामान्य के -Yबजाय कोई क्यों उपयोग करना चाहेगा -X?
13

मेरे पास एक ही सवाल है (उपयोग करने के लिए -Y) और एकमात्र मामला जो मुझे समझ में आया कि यह उपयोगी हो सकता है जब सर्वर साइड पर सुरक्षा नियंत्रण किसी भी तरह लागू नहीं होता है / संगत नहीं होता है। मैंने यह भी पढ़ा है कि X11 को अग्रेषित करना आमतौर पर एक शक्तिशाली और खतरनाक उपकरण है जिसे इस तरह से व्यवहार किया जाना चाहिए।
मकिश

5
"क्यों -X के बजाय -Y का उपयोग करें?" सवाल, -एक्स एक टाइमआउट के बाद अग्रेषण छोड़ देता है, जबकि यह नहीं है। यद्यपि आप -X विकल्प के लिए फॉरवर्डएक्स 11 टाइमआउट का उपयोग करके उस कॉन्फिगर को ओवरराइड कर सकते हैं।
सेब

23

जब आपको X11 प्रोग्राम दूरस्थ रूप से चलाने की आवश्यकता हो तो तो उपयोग करें ; -Xजब आप का उपयोग करें; और काल्पनिक रूप से उपयोग करते हैं, -Yतो एक X11 प्रोग्राम जिसकी आप परवाह करते हैं, वह -X के साथ -Y से बेहतर काम करता है। लेकिन वर्तमान में (Ubuntu 15.10), -X के समान है, जब तक आप ssh_configकहने के लिए संपादित नहीं करते ForwardX11Trusted no। -X को मूल रूप से 1990 के एक्स सुरक्षा विस्तार को सक्षम करने का इरादा था, लेकिन यह पुराना और अनम्य है, और कुछ कार्यक्रमों को क्रैश करता है, और इसलिए इसे डिफ़ॉल्ट रूप से अनदेखा किया जाता है।

दोनों ssh -Yऔर -Xआप एक X11 प्रोग्राम को रिमोट मशीन पर चलाते हैं, जिसकी विंडो स्थानीय X मॉनिटर पर दिखाई देती है। मुद्दा यह है कि कार्यक्रम को अन्य कार्यक्रमों की खिड़कियों और एक्स सर्वर पर ही करने की अनुमति है।

local$ ssh -X remote
remote$ xlogo
# Runs xlogo on remote, but the logo pops up on the local screen.

विश्वसनीय X11 अग्रेषण द्वारा सक्षम किया गया है -Y। यह ऐतिहासिक व्यवहार है। प्रदर्शन तक पहुंच के साथ एक कार्यक्रम, पूरे प्रदर्शन तक पहुंच के साथ विश्वसनीय है । यह अन्य कार्यक्रमों की सभी विंडो में इनपुट, स्क्रीनशॉट, कीलॉग और इंजेक्ट कर सकता है । और यह सभी एक्स सर्वर एक्सटेंशन का उपयोग कर सकता है, जिसमें त्वरित ग्राफिक्स जैसे सुरक्षा एक्सपोज़र हैं। जो सुचारू रूप से चलने के लिए अच्छा है, लेकिन सुरक्षा के लिए बुरा है। आप दूरस्थ कार्यक्रमों को अपने स्थानीय कार्यक्रमों के समान सुरक्षित होने का भरोसा दे रहे हैं।

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

-Xवर्तमान का अर्थ आपके ssh कॉन्फ़िगरेशन पर निर्भर करता है।

उबंटू 14.04 एलटीएस पर, जब तक आप अपना संपादन नहीं करते, तब तक और इसके ssh_configबीच कोई अंतर नहीं है । "[B] बहुत सारे कार्यक्रम वर्तमान में [अविश्वसनीय] मोड में दुर्घटनाग्रस्त हो जाते हैं।"-X-Y

ubuntu1404$ man ssh
...
 -X      Enables X11 forwarding.  This can also be specified on a per-host
         basis in a configuration file.
         ...
         (Debian-specific: X11 forwarding is not subjected to X11 SECURITY
         extension restrictions by default, because too many programs cur‐
         rently crash in this mode.  Set the ForwardX11Trusted option to
         “no” to restore the upstream behavior.  This may change in
         future depending on client-side improvements.)

ubuntu1404$ grep ForwardX11Trusted /etc/ssh/ssh_config
#   ForwardX11Trusted yes

यदि ForwardX11Trusted no, तो अविश्वास अग्रेषित करने में -Xसक्षम बनाता है । अन्यथा, उसी के साथ व्यवहार किया जाता है , यह विश्वास करते हुए कि प्रदर्शन पहुंच वाले दूरस्थ कार्यक्रम अनुकूल हैं।-X-Y


1

-Xविकल्प X11 अग्रेषण सक्षम बनाता है:

-X   Enables X11 forwarding.  This can also be specified on a per-host
     basis in a configuration file.

     X11 forwarding should be enabled with caution.  Users with the
     ability to bypass file permissions on the remote host (for the
     user's X authorization database) can access the local X11 display
     through the forwarded connection.  An attacker may then be able
     to perform activities such as keystroke monitoring.

     For this reason, X11 forwarding is subjected to X11 SECURITY
     extension restrictions by default.  Please refer to the ssh -Y
     option and the ForwardX11Trusted directive in ssh_config(5) for
     more information.

-YSsh_config (5) में ForwardX11Trusted निर्देश के अनुरूप विकल्प , कम सुरक्षित है क्योंकि, यह X11 सुरक्षा एक्सटेंशन नियंत्रणों को हटा देता है।

-Y      Enables trusted X11 forwarding.  Trusted X11 forwardings are not
        subjected to the X11 SECURITY extension controls.

यह उपयोग करने के लिए अधिक सुरक्षित है -x

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