एसएसएच-फॉरवर्ड एक्स 11 डिस्प्ले लिनक्स से मैक तक कुछ समय बाद खो गया


10

जब मैं एक मैक (10.7.2) से लिनक्स (उबंटू 8.04) में लॉग इन करता हूं, तो मुझे अपने एक्स 11 कनेक्शन को अग्रेषित करने के साथ एक नई और घबराहट की समस्या है। मुझे दूरस्थ मशीन में लॉग इन करने और उस शेल से X11- आधारित एप्लिकेशन शुरू करने के लिए ssh -X का उपयोग करने में कोई परेशानी नहीं है।

हाल ही में जो होना शुरू हुआ है, वह यह है कि उसी शेल से X11 एप्लिकेशन का अतिरिक्त इनवॉइस, कुछ समय (घंटों के आदेश पर) के बाद शुरू नहीं हो पा रहा है, क्योंकि फॉरवर्ड किए गए डिस्प्ले को ब्लॉक किया जा रहा है (मैं अनुमान लगाता हूं)। उदाहरण के लिए, xterm शुरू करने का प्रयास करते समय, मुझे एक खराब DISPLAY सेटिंग के बारे में सामान्य संदेश मिलता है, जैसे:

xterm Xt एरर: डिस्प्ले नहीं खोल सकता: लोकलहोस्ट: 10.0

लेकिन जब मैंने लॉग इन किया तो X11 एप्लिकेशन सही शुरू हो गया था, अभी भी ठीक उसी तरह से चल रहा है, उसी सटीक डिस्प्ले (लोकलहोस्ट: 10.0) का उपयोग करके, बस यह पहले शुरू किया गया था।

मैंने sshd_config में वर्बोज़ लॉगिंग चालू की और मैं असफल xterm स्टार्टअप प्रयास के जवाब में /var/log/auth.log फ़ाइल में इसे देखता हूं:

sshd [22104]: चैनल 8: ओपन फेल: प्रशासनिक रूप से निषिद्ध: ओपन फेल

अगर मैं सर्वर पर फिर से ssh -X करता हूं, तो एक नया शेल शुरू करके एक नया डिस्प्ले (लोकलहोस्ट: 11.0) सौंपा जा रहा है, वही प्रक्रिया दोहराई जाती है: X11 एप्लिकेशन जल्दी शुरू हो जाते हैं, जब तक मैं उन्हें खुला रखता हूं (दिन) ), लेकिन कुछ घंटों के बाद मैं उस शेल से कोई नया शुरू नहीं कर सकता।

विवरण: उबंटू 8.04 पर चलने वाला ओपनएसएसएच sshd सर्वर, डिफॉल्ट Apple X सर्वर के साथ एक मैक रनिंग लायन (10.7.2) को फॉरवर्ड करता है। सिस्टम ईथरनेट ईथरनेट पर उनके बीच एकल स्विच के साथ जुड़ा हुआ है। न तो मशीन से फायरवॉल चल रहा है। कुछ समय पहले तक (कुछ दिन पहले) इस सेटअप ने पूरी तरह से काम किया, इसलिए मुझे इस बात का अहसास हुआ कि मैं आगे कहां देखूंगा। मैं X11 या SSH विशेषज्ञ नहीं है, लेकिन अच्छा UNIX / लिनक्स अनुभव है। स्पष्ट रूप से क्लाइंट या सर्वर कॉन्फ़िगरेशन में कुछ भी नहीं बदला है, हालांकि मैंने इसे डिबग करने के लिए कुछ विकल्पों को बदलने की कोशिश की है, जैसे sshd_config की TCPKeepAlive को सेट करना, और "होस्ट + लोकलहोस्ट" सेट करना (आप बता सकते हैं कि मैं Googling है)।

जब लिनक्स 11.10 लैपटॉप से ​​समान नेटवर्क और स्विच पर समान रिमोट होस्ट में लॉग इन किया जाता है, तो यह समस्या उत्पन्न नहीं होती है - एक xterm को उसी ssh लॉगइन शेल से सफलतापूर्वक घंटों बाद में आमंत्रित किया जा सकता है जबकि मैक से एक ही प्रयोग विफल होता है ( यह सुनिश्चित करने के लिए आज सुबह परीक्षण किया गया), इसलिए यह एक मैक-विशिष्ट मुद्दा प्रतीत होगा।

दूरस्थ मशीन (sshd सर्वर) पर "LogLevel DEBUG3" सेट के साथ, और मेरे द्वारा क्लाइंट कनेक्शन में किए गए कोई परिवर्तन नहीं, /var/log/auth.log रात भर में कनेक्शन की स्थिति रिपोर्ट में एक मामूली परिवर्तन दिखाता है, जो पोर्ट नंबर का उपयोग किया जाता है लिनक्स मशीन से एक सफल ssh सत्र (मुझे लगता है), कनेक्शन # 7 नीचे:

sshd [20173]: debug3: चैनल 7: स्थिति: निम्नलिखित कनेक्शन खुले हैं: \ r \ n # 0 सर्वर-सत्र (t4 r0 i0 / 0 o0 / 0 fd 14/13 cfd -1) और A \ n # 3 127.0.0.1 पोर्ट 57564 से x11 कनेक्शन (t4 r1 i0 / 0 o0 / 0 fd 16/16 cfd -1) \ r \ n # 4 X11 कनेक्शन 127.0.0.1 पोर्ट 57565 (t4 r2 00/0 o0 / 0 fd 17) से 127.0.0.1 पोर्ट 57566 (t4 r3 i0 / 0 o0 / 0 fd 18/18 cfd -1) \ r \ n # 6 X11 कनेक्शन 127.0.0.1 पोर्ट से / 17 cfd -1) \ r \ n # 5 X11 कनेक्शन 57567 (t4 r4 i0 / 0 o0 / 0 fd 19/19 cfd -1) \ r \ n # 7 X11 कनेक्शन 127.0.0.1 पोर्ट 59007 से

इस रिपोर्ट में, कनेक्शन रिपोर्ट्स के बीच सब कुछ वैसा ही है, जैसा कि कनेक्शन नंबर 7 द्वारा उपयोग किए गए पोर्ट नंबर को छोड़कर जो मुझे लगता है कि लिनक्स क्लाइंट है - केवल एक ही अभी भी डिस्प्ले कनेक्शन को बनाए रखता है। यह समय के साथ बढ़ रहा है, रात भर इन रिपोर्टों के एक क्रम को देखते हुए।

किसी भी मदद के लिए धन्यवाद,

-माइक


मैं उसी समस्या का सामना कर रहा हूं।
१nd

मैंने ssh कमांड पर -vvv को मैक के क्लाइंट साइड ssh सत्र से डीबग जानकारी प्राप्त करने के लिए चालू किया। मुझे यह मिला: codeफॉरवर्डएक्स 11 टाइमआउट समाप्त होने के बाद एक्स 11 कनेक्शन को खारिज कर दिया गया फॉरवर्डएक्स 11 टाइमआउट मैक के ssh क्लाइंट में एक विकल्प है जो एक अविश्वसनीय कनेक्शन से अग्रेषण को सीमित करता है। -X के बजाय संभावित -Y का उपयोग करना होगा। फॉरवर्डएक्स 11 टाइमआउट को शेर के ssh मैन पेज में प्रलेखित नहीं किया गया है। इसका डिफ़ॉल्ट 20 मिनट का प्रतीत होता है। इसे उच्चतर ssh_config में सेट करना संभव है, लेकिन Lion का X सर्वर क्रैश होने पर> 596 घंटे ... पर सेट हो जाता है, जो मिलीसेकंड में, 31 बिट्स से अधिक हो जाता है। अरे। आशा है कि यह इसे ठीक करता है।
mklein9

जवाबों:


13

मैक क्लाइंट / etc / ssh_config को लाइन में शामिल करने के लिए बदलने के बाद ssh सत्र शुरू हुआ:

फॉरवर्डएक्स 11 टाइमआउट 596 एच

सभी ठीक काम कर रहे हैं और पूरे दिन रहे हैं। अब तक वे सभी नए xterms शुरू करने से इनकार कर रहे थे। तो मेरा मानना ​​है कि यह उत्तर है, और सौभाग्य से एक सरल समाधान है, लेकिन समय समाप्त अभी भी 3-1 / 2 सप्ताह से अभी भी होगा।


3

man ssh_config

ForwardX11Trusted

यदि यह विकल्प "हाँ" पर सेट है, तो दूरस्थ X11 क्लाइंट के पास मूल X11 डिस्प्ले तक पूर्ण पहुंच होगी। यदि यह विकल्प "नहीं" पर सेट है तो दूरस्थ X11 क्लाइंट को अविश्वसनीय माना जाएगा और विश्वसनीय X11 क्लाइंट से संबंधित डेटा के साथ चोरी या छेड़छाड़ करने से रोका जाएगा। इसके अलावा, सत्र के लिए उपयोग किए जाने वाले xauth (1) टोकन को 20 मिनट के बाद समाप्त करने के लिए सेट किया जाएगा। दूरदराज के ग्राहकों को इस समय के बाद पहुंच से वंचित कर दिया जाएगा। डिफ़ॉल्ट "नहीं" है X11 सुरक्षा विस्तार विनिर्देश देखें, जो अविश्वसनीय ग्राहकों पर लगाए गए प्रतिबंधों पर पूर्ण विवरण के लिए है।


1
यह उपयोगी हो सकता है यदि आप इस पर विस्तार करते हैं कि आपको क्यों लगता है कि यह कॉन्फ़िगरेशन विकल्प मूल समस्या को हल करेगा।
pjmorse

यह बताता है कि समस्या क्यों होती है, लेकिन कुछ तर्क मददगार होंगे।
स्टीफन लासवर्स्की

1

जोड़ने के लिए "उत्तर 7 जनवरी 12 'को 0:11 mklein9 28129 पर" "ssh सत्र तब शुरू हुआ जब मैंने मैक क्लाइंट / etc / ssh_config को लाइन में शामिल करने के लिए बदल दिया:

ForwardX11Timeout 596h

... लेकिन टाइमआउट अभी भी 3-1 / 2 सप्ताह बाद से होगा। "

जाहिरा तौर पर आप 0 का उपयोग कर सकते हैं और यह अनन्तता के लिए मध्यांतर सेट करता है (जब तक कनेक्शन चालू है)।

ForwardX11Timeout 0

...

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