আমি কীভাবে "ভুল প্রমাণীকরণের কারণে এক্স 11 সংযোগ প্রত্যাখ্যান করেছি" ডিবাগ করব?


10

এসএসএইচ মাধ্যমে এক্স ফরওয়ার্ডিং নিয়ে আমার সমস্যা আছে। আমি যুগে যুগে লড়াই করেছি, তবে কেউ সাহায্য করবে বলে মনে হচ্ছে না।

আমি এখন অন্যরকম কৌশল নিচ্ছি। আমি কীভাবে ত্রুটিগুলি ডিবাগ করব তা জানতে চাই?

আমার কোন লগগুলি সন্ধান করা উচিত, আমার কোন অতিরিক্ত পতাকা লাগানো উচিত (-v ইত্যাদি) এবং আমার কী সন্ধান করা উচিত?

আরও সম্পাদনা:

যদি আমি পুট্টিতে সার্ভারে লগইন করে চেষ্টা xeyesকরি তবে আমি পেয়ে যাব:

পুটি X11 প্রক্সি: ভুল অনুমোদন প্রোটোকল চেষ্টা করা হয়েছে ত্রুটি: প্রদর্শন খুলতে পারবেন না: লোকালহোস্ট: 10.0

যদি আমি xauth generate $DISPLAYপাই:

পুটি এক্স 11 প্রক্সি: ভুল অনুমোদন প্রোটোকল ট্রায়েন্টসোথ: (আরজিভি): 1: "লোকালহোস্ট: 10.0" প্রদর্শন খুলতে অক্ষম।


ইন অন্যান্য দিন থেকে আপনার প্রশ্নের আপনি বিভিন্ন উপসর্গ বর্ণনা করে। আপনি কি এখনও "প্রদর্শন খুলতে পারবেন না" থেকে ভুগছেন, বা আপনি এটি সমাধান করেছেন? যদি আপনি এটি সমাধান করে থাকেন এবং সেই প্রশ্নের উত্তরগুলির মধ্যে একটি যদি সহায়ক হয় তবে আপনাকে যিনি আপনাকে সহায়তা করেছেন তাকে পুরস্কৃত করার জন্য উত্তর হিসাবে এটি নির্বাচন করা উচিত।
ক্যানস্টার

সম্মত হন, এটি এখন অন্যরকম ত্রুটি, আমি এই প্রশ্নটি বন্ধ করে দিয়েছি।
wkdmarty

এই উত্তরটি আপনার সার্ভারে প্রযোজ্য কিনা তা দেখুন ।
কেনস্টার 14

কেনস্টার, সার্ভারে আমার কাছে আরসি ফাইল নেই, তাই আমি একটি তৈরি করে কোডটি আটকালাম। কোনও পার্থক্য নেই।
wkdmarty

পুটিওয়াই লগগুলিতে, আমি এক্স প্রোগ্রাম চালানোর চেষ্টা করার পরে এটি এসএসএইচ লগইন করার পরে আসে। 2014-09-01 15:16:38 127.0.0.1:59566 থেকে এক্স 11 সংযোগের অনুরোধ পেয়েছে 2014-09-01 15:16:38 এক্স 11 ফরোয়ার্ড সংযোগ খোলার সফল হয়েছে 2014-09-01 15:16:38 পাঠানোর জন্য কিছুই অবশিষ্ট নেই, সমাপনী চ্যানেল 2014-09-01 15:16:38 ফরোয়ার্ড করা X11 সংযোগ সমাপ্ত
wkdmarty

উত্তর:


13

ধাপে ধাপে আমার সমাধান:

1) বিকল্প -X দূরবর্তী হোস্ট লগইন রুট দিয়ে লগইন করুন

sh ssh -X root@192.168.1.39

2) বিদ্যমান .Xauthority ফাইল কিনা তা পরীক্ষা করুন

[রুট @ লোকালহোস্ট ~] # এলএস -আল
[রুট @ লোকালহোস্ট ~] # ভিম .অ্যাক্টিভিটি

3) অনুলিপি ফাইল অন্য ব্যবহারকারী ডিরেক্টরিতে

[রুট @ লোকালহোস্ট ~] # সিপি .অ্যাক্টিভিটি / হোম / ওরাকল /
সিপি: overw / home/oracle/.Aauthority 'ওভাররাইট? Y

4) এই ফাইলের জন্য অনুমতি সেট করুন

[রুট @ লোকালহোস্ট ~] # ক্লাউন ওরাকল: অইনস্টল। অনুমোদন
[রুট @ লোকালহোস্ট ~] # চিমড 0600 .অনুষ্ঠানিকতা

5) ওরাকল ব্যবহারকারী লগইন করুন

[রুট @ লোকালহোস্ট ~] # স - ওরাকল

6) লোকালহোস্টে প্রদর্শন সেটিং: 10.0

[ওরাকল @ লোকালহোস্ট ~] cho প্রতিধ্বনি $ প্রদর্শন
স্থানীয় হোস্ট: 10.0
[ওরাকল @ লোকালহোস্ট ~] s এলএস -আল

7) Xauth কুকিজ বিদ্যমান তালিকা

[ওরাকল @ লোকালহোস্ট ~] a xauth তালিকা
লোকালহোস্ট.লোকালডোমাইন / ইউনিক্স: 11 এমআইটি-ম্যাজিক-কুকি -1 310f1b02c1080e73059391c193a1881b
লোকালহোস্ট.লোক্যালডমাইন / ইউনিক্স: 10 এমআইটি-ম্যাজিক-কুকি -1 41843db100830a2aa352641ac47bb759

8) অ্যাড

[ওরাকল @ লোকালহোস্ট ~] $ xauth যোগ করুন লোকালহস্ট.লোকাল্ডোমাইন / ইউনিক্স: 10 এমআইটি-ম্যাজিক-কুকি -1 41843db100830a2aa352641ac47bb75

9) পরীক্ষা

[ওরাকল @ লোকালহোস্ট ~] clock এক্সক্লক

তারা পরিবেশন আশা করি! @wcaraza


2
অংশ xauth যোগ .... কৌশলটি
ওয়েই

পদক্ষেপ 3. এবং 4. আমার জন্য কৌতুকটি করেছিল
কিলটেক

6

নিশ্চিত করুন যে এসএসএইচ সার্ভারে xauthসরঞ্জামটি ইনস্টল করা আছে এবং আপনার ~/.Xauthorityফাইলটি লেখার যোগ্য। (অস্তিত্বহীনও যতক্ষণ xauthনা এটি তৈরি করতে পারে ঠিক আছে ))

Xauth ডেটা আপডেট হচ্ছে কিনা তা পরীক্ষা করুন:

server$ xauth list

ম্যানুয়ালি ডামি xauth ডেটা যোগ করার চেষ্টা করুন (আবার, এসএসএইচ সার্ভারে), এবং দেখুন xauthকোনও সমস্যা আছে কিনা তা দেখুন (যেমন লকফিল তৈরি করতে অক্ষম হওয়া বা Xauthority ফাইলটি নিজেই সংশোধন করতে):

server$ xauth add localhost:123 MIT-MAGIC-COOKIE-1 d7e2e4a8c5aa4430bfcc2abb436940d2

প্রয়োজনে পুনরায় চালান strace

LogLevel DEBUG2সার্ভার কনফিগারেশন ( /etc/ssh/sshd_config) এ সেট করে অথবা সরাসরি ডিবাগ মোডে sshd শুরু করে: এসএসএইচ পরিষেবাটি ডিবাগ মোডে চালান :

server$ sshd -rddp 12234

(এই উদাহরণস্বরূপ, 12234আপনার যে সংযোগের দরকার সেই অস্থায়ী এসএসএইচ বন্দরটি Any কোনও নিখর পোর্ট এটি করবে))


ধন্যবাদ. সার্ভারে জাওথ। Xauthority ফাইলে লিখতে পারে। তবে এটি কি সেট করা উচিত? সার্ভার = এন 40 এল, ক্লায়েন্ট = লিন 1001। এন 40 এল-এ থাকা xauth তালিকার লোকালহোস্টের জন্য একটি এন্ট্রি প্রদর্শন করা উচিত: 10 এমআইটি-ম্যাজিক-কুকি -1 {লিন 1001 এর হেক্সকি}?
wkdmarty

@Wkdmarty: হ্যাঁ, আপনার এসএসডি একটি টিসিপি পোর্টটি শোনের সাথে সম্পর্কিত: 10 (বা: 11,: 12 ...) দেখাবে এবং এটি "লোকালহোস্ট: 10" হিসাবে প্রদর্শিত হবে। হেক্স কী হিসাবে, তবে, আমি সত্যই জানি না যে এটি একই কী ব্যবহার করা হয়েছে কিনা - আমি মনে করি ssh আসলে একটি নতুন উত্পন্ন করে এবং প্রক্সি হিসাবে কাজ করে ...
ব্যবহারকারীর6868

ঠিক আছে নিখুঁত, আমি দেখতে পাচ্ছি যে 0.0.0.0:6011 শুনছে। আমার ডিসপ্লে ভেরিয়েবল N40L: 11.0 কে বলেছে যেটি আমি ভুল বলে মনে করি, তাই আমি এটিকে DISPLAY = লোকাল হোস্ট: 10.0 এ পরিবর্তন করব। নাহ, এখনও ত্রুটিযুক্ত। আমি এসএসএইচ সংযোগটিতে এই লাইনটি লক্ষ্য করেছি: ডিবাগ 2: x11_get_proto / usr / bin / xauth তালিকা: 0.0 2> / dev / নাল যেখানেই আমি এসএসএইচ সংযোগ লগিং দেখেছি, এই লাইনটি আলাদা ... একটি মূল প্রজন্ম দেখানো, কখনও নয় : 0.0।?
wkdmarty

@Wkdmarty: সাধারণত sshd $ সঠিক মান $ DISPLAY সেট করা উচিত ... এবং পোর্ট 6011 যাইহোক, 10 নয়, 11 প্রদর্শনের সাথে মিল রাখে।
ব্যবহারকারী1686

1
"আমার ডিসপ্লে ভেরিয়েবল N40L: 11.0 বলেছে ... তাই আমি এটি পরিবর্তন করব"। ভোঁতা হতে, DISPLAY একা ছেড়ে যান। যদি ssh X11 ফরোয়ার্ডিং সেট আপ করে তবে এটি DISPLAY কে এমন কোনও মানকে সেট করবে যা কাজ করবে। Ssh সেট মানটি ওভাররাইড করা সমস্যা সমাধানের প্রক্রিয়াটিকে আরও জটিল করে তুলবে।
কেনসটার

3

এটা কাজ করছে, কাজ করছে হা হা।

অবশেষে।

এটি কোনও পরীক্ষার ব্যবহারকারীকে যোগ করে (যেটি এক্স ফরোয়ার্ডিং "বাক্সটি" বের করে "কাজ করেছিল) যোগ করে, এটি সিস্টেমটি নয় তা আবিষ্কার করার পরে, আমি ভেবেছিলাম যে" ভাঙ্গা "ব্যবহারকারীর কুমারীকরণের জন্য আমি .বাশ * স্টার্টআপ ফাইলগুলি অনুলিপি করা শুরু করব।

ফাইলগুলির মধ্যে কোনও আলাদা ছিল না, তাই আমি পরে ব্যবহারকারীদের .ssh ডিরেক্টরি মুছলাম। আমি যখন প্রবেশ করলাম তখন এটি "সার্ভারটি আমাদের কী প্রত্যাখ্যান করেছিল" সম্পর্কে বিলাপ করেছিল, তবে আমি পাসওয়ার্ড ব্যবহার করে লগ ইন করতে পারি। একবার লগ ইন হয়ে গেলে আমি পুরোপুরি এক্স ফরোয়ার্ড করতে পারতাম।

আমি এখন আবার কীটি সেটআপ করার চেষ্টা করব এবং আমি এটির কাজও করতে পারি কিনা তা দেখুন। তারপরে এটি স্বাভাবিক অবস্থায় ফিরে আসবে।


এটি আমার জন্যও কাজ করেছিল। আমি অন্যান্য সমস্ত পদ্ধতি চেষ্টা করেছিলাম, তবে হ্যাঁ আপাতদৃষ্টিতে সমস্যাটি কীগুলিতে পড়ে আছে।
সহায়ক

1

এই সমস্যাটির কারণ হতে পারে এমন আরও একটি জিনিস হ'ল ~/.ssh/rcসার্ভারের কোনও ফাইলের অস্তিত্ব - আপনি যে মেশিনে সংযোগ করছেন। সমস্যাটি সমাধান করতে এটি মুছুন (বা নাম পরিবর্তন করুন)।


1
প্রতি man sshd, sshd কমান্ড রান ~/.ssh/rcপরিবর্তে xauth, @PimpJuiceIT।
কেন জ্যাকসন

ধন্যবাদ! আরও তথ্যের জন্য, দেখুন: docstore.mik.ua/orelly/networking_2ndEd/ssh/… । আরসি ফাইলের মধ্যে xauth শুরু করার জন্য উপযুক্ত কমান্ডগুলি যুক্ত করা সম্ভব হবে, তবে আমি এটি খুঁজে পাইনি।
ম্যাট বি।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.