Ssh -X সহ রিমোট এক্স-সার্ভার


12

আমি এটি ব্যবহার করে একটি রিমোট জিনোম সেশন শুরু করার চেষ্টা করছি: ssh -X username@192.168.1.107 gnome-session

ক্লায়েন্ট এবং সার্ভার উভয়ই উবুন্টু সংস্করণ 12.04

আমি নিম্নলিখিতগুলি পাই (এবং খুব বেশি ঘটে না) ...

GNOME_KEYRING_CONTROL=/tmp/keyring-3aeNAh
GPG_AGENT_INFO=/tmp/keyring-3aeNAh/gpg:0:1
GNOME_KEYRING_PID=3573
GNOME_KEYRING_CONTROL=/tmp/keyring-3aeNAh
GPG_AGENT_INFO=/tmp/keyring-3aeNAh/gpg:0:1
GNOME_KEYRING_CONTROL=/tmp/keyring-3aeNAh
GPG_AGENT_INFO=/tmp/keyring-3aeNAh/gpg:0:1
SSH_AUTH_SOCK=/tmp/keyring-3aeNAh/ssh
GNOME_KEYRING_CONTROL=/tmp/keyring-3aeNAh
GPG_AGENT_INFO=/tmp/keyring-3aeNAh/gpg:0:1
SSH_AUTH_SOCK=/tmp/keyring-3aeNAh/ssh

(gnome-settings-daemon:3572): color-plugin-WARNING **: failed to get contents of /sys/class/dmi/id/board_version: Failed to open file '/sys/class/dmi/id/board_version': No such file or directory

** (gnome-settings-daemon:3572): WARNING **: You can only run one xsettings manager at a time; exiting

** (gnome-settings-daemon:3572): WARNING **: Unable to start xsettings manager: Could not initialize xsettings manager.
compiz (core) - Error: Screen 0 on display "localhost:10.0" already has a window manager; try using the --replace option to replace the current window manager.
Initializing nautilus-gdu extension
Created new window in existing browser session.
** Message: applet now removed from the notification area
** Message: using fallback from indicator to GtkStatusIcon

(gnome-settings-daemon:3572): keyboard-plugin-WARNING **: Failed to set the keyboard layouts: GDBus.Error:org.freedesktop.Accounts.Error.PermissionDenied: Not authorized

** (gnome-settings-daemon:3572): WARNING **: Failed to connect context: Connection refused

(gnome-settings-daemon:3572): clipboard-plugin-WARNING **: Clipboard manager is already running.

(gnome-settings-daemon:3572): color-plugin-WARNING **: failed to create device: GDBus.Error:org.freedesktop.ColorManager.Failed: failed to obtain org.freedesktop.color-manager.create-device auth

(gnome-settings-daemon:3572): color-plugin-WARNING **: GDBus.Error:org.freedesktop.ColorManager.Failed: failed to obtain org.freedesktop.color-manager.create-profile auth

(gnome-settings-daemon:3572): color-plugin-WARNING **: no xrandr-Samsung Electric Company-SAMSUNG device found: Failed to find output xrandr-Samsung Electric Company-SAMSUNG
Shutting down nautilus-gdu extension

** (gnome-settings-daemon:3572): WARNING **: Failed to connect context: Connection refused
Connection failure: Connection refused
pa_context_connect() failed: Connection refused

আমি রিমোট মেশিনের ডিসপ্লেতে যা ঘটে তা পরিবর্তন না করেই দূরবর্তীভাবে মিডিয়া সার্ভার / প্লেয়ার হিসাবে ব্যবহৃত একটি উবুন্টু মেশিনটি অ্যাক্সেস করতে চেয়েছিলাম। এছাড়াও আমি এই স্টাফটি দিয়ে কী করতে পারে তা দেখার জন্য কেবল খেলতে চেয়েছিলাম। :-)
benlad

1
আপনি যদি চারপাশে খেলতে চান তবে আমি একটি কমান্ডলাইন থেকে বুনিয়াদি এসএস ব্যবহার করার জন্য কিছু টিপস সহ একটি কী তৈরি করা এবং এটির দূরবর্তী হোস্টে অনুলিপি সহ একটি উত্তর প্রবেশ করিয়েছি। আপনি একবার ssh ব্যবহার করতে শিখলে, আপনি এটি ব্যবহার করে কতটা করা যায় তা অবাক করে দিতে পারেন।
মার্টি ফ্রাইড

উত্তর:


12

আমি ধরে নিয়েছি যে আপনি যা করার চেষ্টা করছেন তা হ'ল আপনার স্থানীয় মেশিনে প্রদর্শিত একটি সম্পূর্ণ দূরবর্তী জিনোম সেশন। এটি ব্যর্থ হয়েছে কারণ আপনার ইতোমধ্যে আপনার স্থানীয় X সেশন ম্যানেজার আপনার এক্স সার্ভার প্রদর্শন নিয়ন্ত্রণ করছে।

আপনার বিকল্পগুলি হ'ল:

  1. ব্যবহার করে স্বতন্ত্র দূরবর্তী অ্যাপ্লিকেশনগুলি কেবল শুরু করুন ssh -X user@192.168.1.107 xclock

  2. ধরে নিচ্ছি এক্সডিএমসিপি রিমোট মেশিনে সক্ষম করা আছে ...

    2A। Xnest -query 192.168.1.107 -geometry 1024x768 :1স্থানীয় উইন্ডোতে রিমোট লগইন সেশন শুরু করতে ব্যবহার করুন ।

    2b। ব্যবহারের Xephyr :1 -screen 1024x768 -query 192.168.1.107যা চেয়ে ভাল এক্স সার্ভারXnest

  3. দূরবর্তী মেশিনে এক্সডিএমসিপি ধরেও, আপনার স্থানীয় মেশিনটি প্রারম্ভকালে স্ট্যান্ডার্ড গ্রিটারের পরিবর্তে এক্সডিএমসিপি চয়নকারীটি ব্যবহার করতে কনফিগার করুন।

এক্সডিএমসিপি সক্ষম করা সহজভাবে রাখার ক্ষেত্রে

[xdmcp]
Enable=true

মধ্যে /etc/gdm/custom.confএবং পুনরায় চালু gdmবা পুনরায় বুট করার (অভিমানী আপনি দৌড়াচ্ছে gdm)।

যদি আপনি কেবল কয়েকটি অ্যাপ্লিকেশনকে দূর থেকে চালানোর ইচ্ছা করেন তবে 1 বিকল্পটি সবচেয়ে সহজ এবং এসএসএইচ এনক্রিপ্ট হওয়া ট্র্যাফিক ব্যবহার অব্যাহত রাখে, যা অন্যরা কেউই করেনি (তাই এগুলি কেবলমাত্র বিশ্বস্ত স্থানীয় নেটওয়ার্কে ব্যবহৃত হয়)।

আপনার যদি আরও জটিল কিছু করার দরকার হয় তবে 2 বি (জেফার) আরও ভাল হতে পারে তবে আমি সাধারণত ssh -X ... &একাধিক দূরবর্তী অ্যাপ্লিকেশন পর্যাপ্ত হওয়ার জন্য ব্যবহার করেছি ।

আপনি যদি দূর থেকে সমস্ত কিছু করছেন, যেমন স্থানীয় মেশিনটি কেবল একটি ডিসপ্লে সার্ভার এবং নিজেই কিছু না করে, তবে আপনাকে স্ট্যান্ডার্ড লগইনের পরিবর্তে এক্সডিএমসিপি চয়নকারী শুরু করে 3 বিকল্পটি ব্যবহার করা উচিত।


PS: মন্তব্যে উল্লিখিত হিসাবে, উভয়ই Xnestএবং Xephyrঅ্যাপ্লিকেশন যা এক্স সার্ভার প্রোটোকল পরিচালনা করে এবং পুরো সেশনটিকে একটি উইন্ডোতে রেখে দেয়। Xnestস্থানীয় এক্স সার্ভারের সরবরাহিত ফাংশনগুলি ব্যবহার করে যখন Xephyrসার্ভার প্রোটোকলকে হ্যান্ডল করে তাই আরও শক্তিশালী। এগুলি ডিফল্টরূপে ইনস্টল করা নাও হতে পারে কারণ গড় ব্যবহারকারী তাদের ব্যবহার করবেন না।


পিপিএস: কিছুটা চিন্তা করার পরে কীভাবে একটি সেশন Xephyrবা এনক্রিপ্ট করা যায় তা স্পষ্ট Xnest...

ssh -X username@192.168.1.107 Xephyr :1 -query localhost -screen 1280x1024

1
Xnest / Xephyr কী করে এবং কেন তা নির্দেশ করতে কার্যকর হতে পারে, যেহেতু সেগুলি ডিফল্টরূপে ইনস্টল করা হয়নি, তাই আমি ভাবি না। আমি কখনই xdmcp ব্যবহার করার প্রয়োজন খুঁজে পাই নি, তাই আমার নিজের কোনও ধারণা নেই। আমি ssh -Yটার্মিনাল থেকে সহজ ব্যবহার করি , তারপরে সেখান থেকে আমার যা প্রয়োজন তা চালাই।
মার্টি ফ্রাইড

@ মার্টিফ্রিড: দেখে মনে হচ্ছে উভয়ই এক্স সার্ভার যা একটি উইন্ডোতে চলতে পারে। দেখে মনে হচ্ছে ব্যবহারকারী পুরো সেশন / ডিসপ্লেটি এক্স-ফরওয়ার্ড করতে চায়। ব্যক্তিগতভাবে আমি কেবল ভিএনসি ব্যবহার করেছি, যা বিদ্যমান এক্স সার্ভারে একটি নতুন ডিসপ্লে তৈরি করে এবং নিজেকে মাথা ব্যথা বাঁচায়।
পর

@ আইজএক্স: আমি অতীতে উইন্ডোজ সিস্টেমগুলির জন্য ভিএনসি ব্যবহার করেছি, তবে দুটি উবুন্টু সিস্টেমের সাথে আমি সাধারণত বিল্ট-ইন এসএস পছন্দ করি, যদিও জিইআইআই অ্যাপ্লিকেশনগুলি চালানোর সময় কখনও কখনও আমি বিভ্রান্ত হয়ে পড়ে থাকি, কারণ স্থানীয় বনাম দূরবর্তী অ্যাপ্লিকেশনগুলির মধ্যে পার্থক্য করা শক্ত। তবে আমি যা করি (বেশিরভাগই কোনও সার্ভার থেকে সম্পাদনা করা বা পরিচালনা করা) এর জন্য এটি সেরা কাজ করে বলে মনে হয়।
মার্টি ফ্রাইড

1
@ মার্টিফ্রিড ভিএনসির খারাপ দিকটি হ'ল আপনি কেবল রিমোট মেশিনের প্রদর্শন নিয়ন্ত্রণ করছেন। সুতরাং আপনার কাছে একজন ব্যবহারকারী দূরবর্তীভাবে সংযুক্ত অন্য ব্যবহারকারীর সাথে সেই দর্শনে লগ ইন করতে পারবেন না। এক্সডিএমসিপি সলিউশনগুলি ক্র্যাট সম্পূর্ণ পৃথক সেশনগুলিতে ২ বা আরও বেশি ব্যবহারকারীকে একই মেশিন ব্যবহার করতে দেয়।
স্টারনামার

আপনার 2 বি সমাধানটি একটি ট্রিট কাজ করেছে। আমি ssh সংস্করণ চেষ্টা করেছিলাম, তবে ssh কী সম্পর্কে একটি সমস্যা ছিল। বার্তাটি এখানে পোস্ট করার জন্য অনেক দীর্ঘ। আমি এখনের জন্য যে পদ্ধতিটি ব্যবহার করে তা ব্যবহার করব।
benlad

0

আপনি যদি কোনও টার্মিনাল থেকে স্ট্যান্ডার্ড এসএস ব্যবহার করতে শিখতে চান তবে আমি ভেবেছিলাম যে আমি আপনাকে দ্রুত চালনা করব, যেহেতু আপনাকে এসএস কী ব্যবহার করতে সমস্যা হয়েছে, তাই মনে হয়। সুবিধাটি হ'ল এটি আরও সর্বজনীন এবং খুব নমনীয়।

আপনার আরও একবার সুরক্ষিত, কখনও কখনও প্রয়োজনীয় এবং আরও সুবিধাজনক এমন এসএসএস কীগুলি ব্যবহার করতে যেহেতু আপনাকে কেবল একবার কীটি প্রবেশ করতে হবে, যে কোনও রিমোট এসএস সার্ভারের জন্য আপনাকে একবার এটি করতে হবে:

কী উত্পন্ন করুন (প্রয়োজনে আরএসএ পরিবর্তে ডিএসএ ব্যবহার করতে পারেন)

ssh-keygen -t rsa    

কীটি দূরবর্তী হোস্টে স্থানান্তর করুন

ssh-copy-id <username>@<host>

যদি মানক পোর্ট 22 না হয় তবে এটি ব্যবহার করুন: আর্গুমেন্টের চারপাশে টীকা টীকা

ssh-copy-id "<username>@<host> -p <port_nr>"

যদি ডিএসএ ব্যবহার করে থাকে তবে কিছুটা আলাদা কমান্ড রয়েছে -i <homedirectory>/.ssh/id_dsa

এর পরে কোথাও, আপনাকে একটি পাসওয়ার্ড প্রবেশ করতে হবে যা আপনার সাধারণ লগইন পাসওয়ার্ড থেকে পৃথক। এটি কিছুক্ষণ হয়ে গেছে, এবং আমি সঠিক ক্রমটি ভুলে গিয়েছি, তবে এটি স্পষ্ট হওয়া উচিত। তারপরে, আপনি প্রথমবার সংযুক্ত হওয়ার পরে একবার আপনাকে এই পাসওয়ার্ডের জন্য জিজ্ঞাসা করা হবে। আমি একই লগইন নামটি ব্যবহার করি, সুতরাং আমার ব্যবহারকারীর নামটি প্রবেশ করার দরকার নেই (এটি দূরবর্তী ব্যবহারকারীর নাম হিসাবে একই ধরে) এছাড়াও, আপনার লেনে সার্ভারগুলির জন্য, আপনি আইপি ঠিকানার পরিবর্তে ".local" লিখতে পারেন, আমি বিশ্বাস করি (আমার জন্য কাজ করে)।

এমনকি আপনি sshfs ব্যবহার করে একটি রিমোট ফাইল সিস্টেম মাউন্ট করতে পারেন (ধরে নিচ্ছেন যে sshfs ইনস্টল করা আছে); স্থানীয়-মাউন্ট-ডিরেক্টরিতে ডিরেক্টরি পথের বিকল্প করুন:

sshfs remote-host: local-mount-directory

(আনমাউন্ট ব্যবহার করে fusermount -u local-mount-directory)

আমি মনে করি আপনি স্থানীয়-মাউন্ট-ডিরেক্টরিটি ছেড়ে দিলে এটি ডিফল্টরূপে আপনার হোম ডিরেক্টরিটি ব্যবহার করবে। `

ফাইলগুলি অনুলিপি করা যায় scp দিয়ে।

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