"चेतावनी: अविश्वसनीय X11 अग्रेषण सेटअप विफल: xauth कुंजी डेटा उत्पन्न नहीं करता है" का क्या मतलब है जब ssh'ing साथ -X?


134

जब मैं ssh -Xअपने Ubuntu (11.04) बॉक्स से कनेक्ट करने के लिए अपने मैक (OS X 10.6.7 पर चलने) का उपयोग करता हूं, तो मुझे निम्न चेतावनी मिलती है:

चेतावनी: अविश्वसनीय X11 अग्रेषण सेटअप विफल: xauth कुंजी डेटा उत्पन्न नहीं हुआ चेतावनी: कोई xauth डेटा नहीं; X11 अग्रेषण के लिए नकली प्रमाणीकरण डेटा का उपयोग करना।

क्या इस चेतावनी को दूर करने के लिए मैं कुछ कर सकता हूं? यदि नहीं, तो क्या मैं इसे सुरक्षित रूप से अनदेखा कर सकता हूं?

X11 अग्रेषण ठीक काम करता है, हालांकि मुझे यह संदेश दिखाई देता है:

Xlib: प्रदर्शन "RANDR" "लोकलहोस्ट: 10.0" पर गायब है।

क्या यह चेतावनी से संबंधित है? (मैं अनुमान लगा रहा हूं। यदि यह नहीं है, तो मैं उस बारे में एक नया प्रश्न दर्ज करूंगा।)


1
Ubuntu सर्वर पर स्थापित xauth प्रोग्राम है?
स्लूबमैन

sudo apt-get install xauthमुझे बताता है "xauth पहले से ही सबसे नया संस्करण है"
डेरिल स्पिट्जर

जब ubuntu सर्वर पर लॉग इन किया जाता है, तो 'कौन सा xauth' का आउटपुट होता है?
slubman

वास्तव में मुझे लगता है कि आपको यह स्पष्टीकरण पढ़ना चाहिए: mail-archive.com/cygwin-xfree@cygwin.com/msg17927.html ... आप इस चेतावनी को अनदेखा कर सकते हैं
slubman

2
कभी-कभी यह w / आपकी ~ / .Xauthority फ़ाइल के मुद्दों के कारण हो सकता है। यदि आप इसे हटाते हैं, तो अगली बार जब आप लॉगिन करने का प्रयास करेंगे तो इसे फिर से बनाया जाएगा।
michael

जवाबों:


145

किसी भी कारण से आप -X ध्वज के बजाय -Y ध्वज का उपयोग नहीं करना चाहते हैं?

काफी बस, -X और -Y के बीच का अंतर यह है कि यह विश्वसनीय X11 अग्रेषण को सक्षम करता है।


4
नहीं, जब मैं प्रश्न लिखता था, तब मुझे -Y ध्वज के बारे में पता नहीं था। मेरा मानना ​​है कि समाधान निकला। अपना उत्तर बदलें ताकि यह एक सवाल न हो (और यह अच्छा होगा यदि आपने संक्षेप में -Y और -C के बीच अंतर समझाया) और मैं इसे स्वीकार करूँगा।
डेरिल स्पिट्जर

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

बहुत पुराने सिस्टम के लिए @ रोस्टर जहां-जहां यह समर्थित नहीं है मैं कहूंगा
पेट्र

समस्या निवारण टिप: "ssh -vv ..." चलाएँ और xauth लाइन और किसी भी त्रुटि संदेश के लिए देखें। आप xauth लाइन को चलाने की कोशिश कर सकते हैं जो इसे सीधे दिखाता है। मेरे लिए मुझे "xauth सूची: 0" (विश्वसनीय) नहीं "xauth -f / tmp / ssh ... सूची: 0" (अविश्वसनीय) जैसी कुछ होना चाहिए। जिसे सुदूर मेजबान / etc / ssh / ssh_config (या ~ /। Ssh / config) में भी तय किया गया और "ForwardX11Trusted Yes" भी तय किया गया।
कर्टिस यलोप

इस समाधान ने Cygwin / X के साथ भी काम किया।
linux64kb

25

यदि आप 2015 में यहां आ रहे हैं: यहां तक ​​कि अगर सब कुछ ठीक से सेट किया गया है, तो यह मैक ओएस एक्स 10.10 योसेमाइट पर भी हो सकता है, जब ssh -XXQuartz संस्करण <= 2.7.7 का उपयोग और चल रहा हो। मूल कारण X11 डिस्प्ले सॉकेट के बाहर लिखा जा रहा X11 डिस्प्ले सॉकेट है: XQuartz ट्रैकर में समस्या # 2068

संपादित करें: एक निश्चित XQuartz के बाद से नए मुखपृष्ठ पर जारी किया गया है, xquartz.org , और वहां से नवीनतम संस्करण स्थापित करना (वर्तमान में 2.7.9) इस मुद्दे के आसपास काम करेगा।


1
धन्यवाद! मुझे इस बात का अंदाजा नहीं था कि XQuartz पेज के ऊपर से जो XQuartz I अभी डाउनलोड किया गया है, वह वास्तव में नवीनतम रिलीज नहीं है।
craigds

वर्थ नोटिंग जो brew install xquartzवर्तमान में 2.7.7 संस्करण से बाहर स्थापित है।
मार्टिन क्लीवर

brew install Caskroom/cask/xquartzआपको HomeBrew के साथ नवीनतम XQuartz
निक

या कम है brew cask install xquartz
फ्रैंकलिन यू

17

यदि आपको उपयोग करते समय भी यही संदेश मिलता है -Y, तो xauthप्रोग्राम सर्वर पर गायब हो सकता है। डेबियन जैसी प्रणालियों पर, आपको xauthपैकेज की आवश्यकता होती है । RedHat जैसी प्रणालियों पर, आपको xorg-x11-xauthपैकेज की आवश्यकता होती है ।


15

इस संदर्भ में "अविश्वसनीय" का अर्थ है कि आप कनेक्शन पर भरोसा नहीं करते हैं। X11 अग्रेषण को सुरक्षित बनाने के लिए SSH अतिरिक्त सुरक्षा उपायों का उपयोग करेगा। "विश्वसनीय" का अर्थ है कि आप पूरी तरह से आश्वस्त हैं कि दूरस्थ होस्ट पर कोई भी आपके Xauth डेटा तक पहुंच नहीं पाएगा और उदाहरण के लिए अपने कीस्ट्रोक्स की निगरानी के लिए इसका उपयोग करेगा।

इस शब्दावली ने मुझे वास्तव में वर्षों तक भ्रमित किया। मुझे लगा कि "विश्वसनीय" कनेक्शन सुरक्षित थे। लेकिन वास्तव में यह एक ऐसा विकल्प है जिसे आप उन स्थितियों में उपयोग करने वाले हैं जहां कनेक्शन भरोसेमंद है और आप अपने रास्ते में अतिरिक्त सुरक्षा उपायों के बिना सामान चलाना चाहते हैं। "अविश्वास" वह है जो इसे (कुछ हद तक) एक अविश्वसनीय दूरस्थ मेजबान से निपटने के लिए सुरक्षित बनाता है।

एक "अनट्रस्टेड" कनेक्शन यह सीमित करने का प्रयास करता है कि एक काली टोपी एक्स 11 सुरक्षा एक्सटेंशन को उलझाकर आपके साथ क्या कर सकती है और अन्य एक्सटेंशनों को अक्षम कर सकती है जिनकी आपको (उम्मीद) की आवश्यकता नहीं है। शायद यही कारण है कि RandR -X के साथ अक्षम है। क्या आपको दूरस्थ होस्ट से अपने एक्स डिस्प्ले को घुमाने में सक्षम होना चाहिए?

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


9

मेरे पास एक सेटअप नहीं है जो इस व्यवहार को प्रदर्शित कर सकता है, इसलिए यह अंधेरे में एक शॉट है:

यदि आप यह चेतावनी देने वाले मेजबानों के लिए सेट ForwardX11Trustedकरते हैं तो चेतावनी को दबाया जा सकता है "no"। आप इसे ~/.ssh/configया तो जगह पर रख सकते हैं /etc/ssh/ssh_config, और Host <hostname>ऊपर दिए गए लाइन पर शामिल करके किसी विशेष होस्ट के लिए विकल्प को विशिष्ट बना सकते हैं । <hostname>घटक क्या आप कमांड लाइन (हल नहीं होस्टनाम) पर मिलान करता है, और यह वाइल्डकार्ड शामिल कर सकते हैं।


एक ssh -Yविश्वसनीय X11 अग्रेषण करने के लिए उपयोग कर सकता है लेकिन एक अविश्वास को कैसे ठीक कर सकता है?
पावेल Paमरदा

मुझे Redhat में वही त्रुटि मिली और अब मैं /etc/ssh/ssh_configक्लाइंट फाइल पर कॉन्फिग फाइल को एडिट करके इसे हल करने में सक्षम हूं । धन्यवाद
गंगाधर jannu

7

BEWARE (सुरक्षा के दोष के कारण अधूरे उत्तरों को पढ़कर थक गया)

1 / ssh -Y का उपयोग करने का मतलब यहाँ नकली नकली जानकारी है जो खराब है!

2 / ssh-X को XQuartz से काम करना चाहिए, एक बार सक्षम होने पर, xauth का उपयोग करता है। एकमात्र समस्या यह है कि ssh xauth / usr / X11R6 / bin में देख रहा है और XQuartz के साथ macos पर यह / ऑप्ट / X11 / bin में है

सुरक्षित हल:

1 / प्राथमिकताओं के सुरक्षा टैब में पहला विकल्प सक्षम करें (Cmd-), जो प्रमाणित कनेक्शन को सक्षम करता है

2 / जोड़ें

XAuthLocation /opt/X11/bin/xauth

$ HOME / .ssh / config में

3 / ssh -X you_serverएक सुरक्षित काम में काम करता है


6

यदि स्थापित xauthकरना सही काम नहीं करता है, तो एक विशेष रूप से कष्टप्रद मामला एक दूषित .Xauthorityफ़ाइल हो सकती है । इस विशेष मामले ने कुछ एक्स क्लाइंट को काम करने की अनुमति दी, लेकिन नए प्रदर्शनों के साथ असफल होने की अधिक प्रवृत्ति वाले अन्य नहीं। .Xauthorityफ़ाइल को निकालना और पुनः बनाना उस समस्या को हल कर सकता है।


6

सर्वर-साइड समस्याओं से छुटकारा

सबसे पहले, आपको किसी भी सर्वर-साइड समस्याओं से इंकार करना चाहिए। क्या आप ssh -Xकिसी अन्य होस्ट से सफलतापूर्वक सक्षम हैं ? क्या ssh -Yकाम ssh -Xनहीं करता है? किसी भी स्थिति में, मान लें कि ssh + X11 आपके सर्वर पर सही ढंग से सेट है और अगले भाग पर जाता है।

यदि आप यह जांचने की स्थिति में नहीं हैं कि (आपके पास लेकिन आपका एक लैपटॉप X11 चल रहा है, तो कहें), आप sshसर्वर से स्वयं के लिए एक नकली सत्र का उपयोग कर सकते हैं :

  1. export DISPLAY=:44# (बॉर्न शेल) या
    setenv DISPLAY :44# (csh / tcsh)
  2. xauth add $DISPLAY MIT-MAGIC-COOKIE-1 1234 # बोगस कुकी सिर्फ इस टेस्ट के लिए
  3. ssh -X localhost env |grep DISPLAY

अपेक्षित परिणाम: ssh-to-self सत्र के दूरस्थ छोर पर एक DISPLAY चर सेट होना चाहिए। यदि आपको कोई परिणाम नहीं मिलता है, तो आपका सर्वर गलत तरीके से कॉन्फ़िगर किया गया है (जैसे X11 लाइब्रेरी और / या xauthकमांड गायब हो सकता है; या sshd कॉन्फ़िगरेशन को X11 एक्सेस से इनकार करने के लिए सेट किया जा सकता है)

मैक पर: जांचें कि Xquartz अप-टू-डेट है

के अनुसार विल Angley के जवाब

ssh -vv -Xआउटपुट की जांच करें

आपके द्वारा उद्धृत त्रुटि संदेश एक लक्षण है जिसके कई कारण हो सकते हैं। के साथ फिर से प्रयास करें , जो आपको अतिरिक्त सुराग देना चाहिए कि X11 सुरंग सेटअप विफल क्यों हुआ।ssh -X -vv remotehost

क्या आपको निम्नलिखित संदेश दिखाई दे रहा है?

debug1: कोई xauth प्रोग्राम नहीं।
यदि ऐसा है तो,

  1. ध्यान दें कि आपके क्लाइंट सिस्टम पर xauthकमांड कहां रहती है:
    कौन सी xauth
  2. अपने ~ / .ssh / config के बहुत अंत में निम्नलिखित जोड़ें (और भविष्य में इसे वहां रखने के लिए खुद को याद दिलाने के लिए एक टिप्पणी जोड़ें):
    मेज़बान *
        XAuthLocation / ऑप्ट / X11 / बिन / xauth
    
    चरण 1 के निष्कर्षों के अनुसार इस पथ को समायोजित करें - जन-विलेम अर्नोल्ड को श्रेय

3

जैसा कि पहले ही ऊपर बताया जा चुका है, निम्नलिखित मेरे लिए काम करते हैं:

लाइनों को जोड़ने के लिए ~ / .ssh / config संपादित करें

Host *
    XAuthLocation /opt/X11/bin/xauth

और अब ssh -X होस्टनाम काम करता है (XQuartz 2.7.11, macOS 10.4 Mojave)


0

मेरे पास पहले से ही नवीनतम XQuartz 2.7.11 स्थापित था, लेकिन मुझे लगता है कि मैंने तब से कुछ समय के लिए ओएस को अपडेट किया है। मैंने XQuartz 2.7.11 को फिर से इंस्टॉल किया, और अब यह ठीक काम कर रहा है।


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