सवाल मैं चेतावनी नो xauth डेटा को कैसे रोक सकता हूं; X11 अग्रेषण के लिए नकली प्रमाणीकरण डेटा का उपयोग कर?


हर बार जब मैं अपने मैक से लिनक्स (डेबियन) में एक एसएसएच कनेक्शन शुरू करता हूं तो मुझे यह चेतावनी मिलती है:

No xauth data; using fake authentication data for X11 forwarding.

यह उन उपकरणों के लिए भी होता है जो एसएसएच का उपयोग कर रहे हैं, जैसे कि गिट या मर्कुरियल।

मैं इसे देखने से रोकने के लिए बस अपने सिस्टम में एक स्थानीय परिवर्तन करना चाहता हूं।

नोट: मेरे पास एक्स 11 सर्वर (XQuartz 2.7.3 (xorg-server 1.12.4) है) मेरे मैक ओएस एक्स (10.8.1) पर और यह ठीक से काम कर रहा है, मैं सफलतापूर्वक स्थानीय रूप से या दूरस्थ रूप से घड़ी शुरू कर सकता हूं।


50
2017-08-30 14:42


मूल


एसएसएच के लिए आप किस कमांड का उपयोग कर रहे हैं? - DerfK
@DerfK बस ssh hostname लेकिन मेरे में ~/.ssh/config मैंने कहा ForwardX11 yes कुछ समय पहले। फिर भी यह ऐसा कुछ है जिसे मैं वहां रखना चाहता हूं। - sorin
उबंटू 16.04 एलटीएस (अगस्त 2017) का उपयोग करके मैं हार मानता हूं। निचली पंक्ति यह है कि भले ही यह त्रुटि देता है, यह काम करता है। मैं उपयोग करता हूं ssh -Y hostname लिनक्स से, और ssh -x hostname विंडोज़ पर ओपनएसएसएच का उपयोग करते समय। - SDsolar


जवाब:


पोस्ट किए गए समाधानों में से कोई भी मेरे लिए काम नहीं करता है। मेरा क्लाइंट (डेस्कटॉप) सिस्टम मैकोज़ 10.12.5 (सिएरा) चला रहा है। मैंने कहा -v के विकल्पों के लिए ssh आदेश और यह मुझे बताया,

debug1: No xauth program.

जिसका मतलब है कि इसका सही मार्ग नहीं है xauth कार्यक्रम। (मैकोज़ के इस संस्करण पर पथ xauth गैर मानक है।) समाधान इस लाइन को जोड़ने के लिए था /etc/ssh/ssh_config (शायद /etc/ssh/config कुछ सेटअप में) या अंदर ~/.ssh/config (यदि आपके पास व्यवस्थापकीय अधिकार नहीं हैं):

XAuthLocation /opt/X11/bin/xauth

अब चेतावनी संदेश चला गया है।


47
2017-07-04 22:19



हे भगवान। साल मैं एक समाधान खोजने की कोशिश कर रहा हूं, और यह काम किया। साल मैं कहता हूँ! ध्यान दें कि मैंने उस पंक्ति को जोड़कर ऐसा किया है Host * मेरे अंदर प्रवेश ~/.ssh/config संपादन के बजाय फ़ाइल /etc/ssh/ssh_config। इसके लिए मैंने पाया एकमात्र दस्तावेज था man sshd_config। - Demitri
यह मेरे लिए भी काम किया। मैं समझता हूं कि फिलहाल XQuartz को वित्त पोषण की कमी के कारण अच्छी तरह से बनाए रखा नहीं जा रहा है। तो मुझे लगता है कि इस तरह के मुद्दों को पोर्ट करना वास्तव में अपेक्षा से कम है। - AlanObject
अंत में काम किया !!! - thuzhf
उच्च सिएरा पर; यह वह है जो मेरे लिए भी काम करता है। - mklein9
ध्यान दें कि आप इस मुद्दे का अनुभव कर सकते हैं यहां तक ​​कि जब आपका खोल xauth पा सकता है अपने पाथ में! मुझे लगता है कि एसएसएच ग्राहक सुरक्षा कारणों से आपके पैथ को स्वच्छ कर रहा है? - MarcH


कारण मिला, मेरा ~/.ssh/config अपूर्ण था, आपको दोनों की जरूरत है:

Host *
    ForwardAgent yes
    ForwardX11 yes

मेरी गलती यह थी कि मैंने केवल फॉरवर्डएक्स 11 विकल्प शामिल किया था।


17
2017-08-30 14:49



मुझे यकीन नहीं है कि यह क्यों आवश्यक / प्रासंगिक है। ForwardAgent कुंजी कैश किए जाने की अनुमति देने के लिए प्रयोग किया जाता है ssh-agent कई नेस्टेड एसएसएच कनेक्शन से गुज़रने के लिए। यह एक्स 11 के लिए कोई प्रासंगिकता नहीं होनी चाहिए। और कुछ के मुताबिक, यह एक अच्छा विचार नहीं है सुरक्षा के अनुसार: heipei.github.io/2015/02/26/... - underscore_d
यह सही नहीं लगता है, वास्तव में एक्स 11 फॉरवर्डिंग को बंद करने या इसे सेट करने के लिए xauth कॉन्फ़िगरेशन को ठीक करने में क्या मदद करता है। यह एसएसएच एजेंटों से संबंधित नहीं है। - eckes


जैसा कि उल्लेख किया गया है, ऐसा लगता है xauth ओएस एक्स योसाइट पर एक पुराने संस्करण पर वापस आ गया है जो XQuartz के साथ काम नहीं करता है $DISPLAY सेटिंग:

% xauth -V
1.0.9
% xauth generate $DISPLAY .
xauth: (argv):1:  bad display name "/private/tmp/com.apple.launchd(...)/org.macosforge.xquartz:0" in "add" command

8
2018-01-07 23:47



मैंने ओएस एक्स 10.11 पर एक ही लाइन का परीक्षण किया, और मुझे कोई त्रुटि नहीं मिली। XQuartz के अभी भी वही संस्करण। - sorin
@guest आपका xauth generate $DISPLAY . कमांड ने मेरे मैक ओएस एक्स हाई सिएरा (10.13) पर काम किया, और यह मेरा हल हो गया No xauth data; using fake authentication data for X11 forwarding. पंजाब। - SebMa


विंडोज 10 रन पर उबंटू बैश देना ssh -X  एक दूरस्थ सर्वर पर एक जीयूआई पर्यावरण प्राप्त करने के लिए

  • प्रथम

निम्नलिखित सभी स्थापित करें। विंडो पर, स्थापित करें Xming। उबंटू बैश पर, उपयोग करें sudo apt install स्थापित करने के लिए ssh xauth xorg

sudo apt install ssh xauth xorg
  • दूसरा

फ़ोल्डर में जाओ ssh_config फाइल, मेरा है /etc/ssh

  • तीसरा

संपादित करें ssh_config प्रशासक के रूप में (उपयोग करें sudo)। के भीतर ssh_configहैश हटा दें # लाइनों में ForwardAgent, ForwardX11, ForwardX11Trusted, और इसी तर्क को सेट करें yes

# /etc/ssh/ssh_config

Host *
    ForwardAgent yes
    ForwardX11 yes
    ForwardX11Trusted yes
  • आगे

में ssh_config फ़ाइल, सामने हैश हटा दें # से पहले Port 22 तथा Protocol 2, और xauth फ़ाइल स्थान को बताने के लिए फ़ाइल के अंत में एक नई पंक्ति भी संलग्न करें, XauthLocation /usr/bin/xauth, xauth फ़ाइल का अपना रास्ता लिखना याद रखें।

# /etc/ssh/ssh_config

#   IdentifyFile ...
    Port 22
    Protocol 2
#   Cipher 3des
#   ...
#   ...
    ...
    ...
    GSSAPIDelegateCredentials no
    XauthLocation /usr/bin/xauth
  • पांचवां

अब से हम संपादन कर रहे हैं ssh_config फ़ाइल, जब हम संपादक छोड़ते हैं तो इसे सहेजें। अब फ़ोल्डर में जाओ ~ या $HOME, संलग्न करें export DISPLAY=localhost:0 आपके .bashrc फ़ाइल और इसे सेव करें।

# ~/.bashrc
...
...
export DISPLAY=localhost:0
  • अंतिम

हम लगभग कर चुके हैं। अपने बैश खोल को पुनरारंभ करें, अपना खोलें Xming कार्यक्रम और उपयोग करें ssh -X yourusername@yourhost। फिर जीयूआई पर्यावरण का आनंद लें।

ssh -X yourusername@yourhost

विंडोज़ पर उबंटू उपप्रणाली में समस्या भी है, और लिंक चालू है

https://gist.github.com/DestinyOne/f236f71b9cdecd349507dfe90ebae776

नोट: लिंक किए गए टेक्स्ट में 2 टाइपो शामिल हैं (XauthLocaion के बजाय XauthLocation)


8
2017-09-22 02:05



सवाल विंडोज के बारे में नहीं है। - kasperd
मैकोज़ पर यह लगभग समान है, इसके बजाय मतभेद हैं Xming, हमें मिलना चाहिए XQuartz, और यह ssh_config फ़ाइल एक अलग स्थान पर है, मेरा है /private/etc/ssh। - DestinyOne
और भी, के लिए आखिरी पंक्ति ssh_config होगा: XAuthLocation /opt/X11/bin/xauth - DestinyOne
आवश्यक संपादित करें: XauthLocaion-> XauthLocation (वह संपादन मेरे लिए बहुत छोटा है)। - echristopherson
स्थापित करने के अलावा xming, ssh,xauth, तथा xorg (चरण 1), मेरे लिए आवश्यक एकमात्र चीज थी export DISPLAY=localhost:0 - Eponymous


इस समय मैकोज़ में एक बग है। मैं भी इस पर आया था। मेरे लिए फिक्स मेरे .bash_profile में निम्नलिखित जोड़ना शामिल था

dispdir=`dirname $DISPLAY`
dispfile=`basename $DISPLAY`
dispnew="$dispdir/:0"
if [ -e $DISPLAY -a "$dispfile" = "org.x:0" ]; then
  mv $DISPLAY $dispnew
fi
export DISPLAY=$dispnew

अनिवार्य रूप से आपके एक्स रूट से जुड़े फ़ाइल पाइप का नाम सही ढंग से संभाला नहीं जा सकता है, और इस प्रकार सुधार की आवश्यकता है। :-)


2
2017-09-08 05:29



मुझे संदेह है कि यह SourceTree की तरह जीयूआई ओएस एक्स ऐप्स में त्रुटि को हल करेगा। - sorin
इसकी पुष्टि करना एक्स का उपयोग करके emacs चलाने के लिए सिएरा पर काम करता है - क्योंकि मैक सर्वर है। यह उन मामलों में व्यापक रूप से काम करना चाहिए जहां ग्राहक रिमोट मशीन पर है - Mark Mullin


समेत

XAuthLocation / ऑप्ट / स्थानीय / बिन / xauth ~ / .ssh / config में

मेरे मैकोज़ सिएरा 10.12.6 में मेरे लिए काम किया। उत्तर 7 से एक छोटा सा परिवर्तन)।


2
2017-08-01 14:45





मैंने बस अपने रूट फ़ोल्डर से ~ / .X प्राधिकरण (गंतव्य मशीन) हटा दी और ssh -X 192.168.123.1 फिर से और ik काम किया।


1
2018-04-02 10:01



मैं पुष्टि कर सकता हूं कि यह मैक ओएस सिएरा 10.12.4 पर एक उत्तर है। ~ /। प्राधिकरण को हटा रहा है एसएसएच सर्वर पर चाल है: ~$ mv ~/.Xauthority ~/.Xauthority.bak  एक बार फिर से लॉग इन करने के बाद एक नई जादू कुकी स्वचालित रूप से ~ /। प्राधिकरण में वापस रखी गई थी। कोई भी बैश स्क्रिप्टिंग आवश्यक नहीं है। - Kenneth Pegasus


मेरे मामले में यह मैजिक कुकी युक्त एक्सक्वायरिटी की समस्या थी अग्रेषित नहीं किया, फैबी पर http://askubuntu.com/questions/571116/ की सिफारिश की 2014-11-14 को .bashrc के अंत में इस लाइन को जोड़ने के लिए या। प्रोफ़ाइल su को कॉल करते समय उपयोगकर्ताओं के बीच xauth कुंजी को अग्रेषित करने की अनुमति देने के लिए:

export $(dbus-launch)

मैंने पहले भी जोड़ा था:

export XAUTHORITY=~/.Xauthority 

ssh -X ̍ @ के साथ दूरस्थ रिमोट सुनिश्चित करने के लिए यह मिल जाएगा।

मेरे मामले में .XAuthority मूल उपयोगकर्ता / home// के लिए एक सिम्लिंक है। प्राधिकरण I से ...

  cd /home/<child_user>;ln -sf /home/<parent_user>/.Xauthority .xAuthority

सही अधिकारों के साथ:

  sudo chown <parent_user> /home/<parent_user>/.profile
  chmod a+rw /home/<parent_user>/.profile 

इसलिए यह और उसके लिए सुलभ है। ऐप्पल ट्रिगर करने और एक्स-विंडो वाले परिणाम को अपनी स्थानीय स्क्रीन पर प्रॉक्सी खाते में प्रदर्शित करने में सक्षम होंगे!

टीआईपी: xauth सूची की जांच करें ... अगर जादू कुकी को प्रतिबिंबित करता है।


1
2018-06-09 14:44