এক্স 11 ফরোয়ার্ডিংয়ের জন্য এসএসএসের মাধ্যমে কাজ করার জন্য, আপনার জায়গায় 3 টি জিনিস প্রয়োজন।
- আপনার ক্লায়েন্ট অবশ্যই এক্স 11 ফরওয়ার্ড করার জন্য সেট আপ করতে হবে।
- এক্স 11 ফরোয়ার্ডিংয়ের অনুমতি দেওয়ার জন্য আপনার সার্ভারটি সেট আপ করতে হবে।
- আপনার সার্ভার অবশ্যই X11 প্রমাণীকরণ সেট আপ করতে সক্ষম হবে।
আপনার যদি # 1 এবং # 2 উভয় জায়গায় থাকে তবে # 3 অনুপস্থিত থাকে, তবে আপনি একটি খালি DISPLAY পরিবেশ পরিবর্তনশীল দিয়ে শেষ করবেন with
স্যুপ-টু-বাদাম, এক্স 11 ফরোয়ার্ডিং কীভাবে কাজ করবেন তা এখানে রয়েছে।
আপনার সার্ভারে, নিশ্চিত করুন / etc / ssh / sshd_config এতে রয়েছে:
X11Forwarding yes
X11DisplayOffset 10
আপনাকে সাইন আপ করতে হবে sshd যাতে এটি এই পরিবর্তনগুলি গ্রহণ করে।
cat /var/run/sshd.pid | xargs kill -1
আপনার সার্ভারে, নিশ্চিত হয়ে নিন যে আপনি xauth ইনস্টল করেছেন।
belden@skretting:~$ which xauth
/usr/bin/xauth
যদি আপনার কাছে xauth ইনস্টল না করা থাকে তবে আপনি "খালি DISPLAY পরিবেশ পরিবর্তনশীল" সমস্যার মধ্যে চলে যাবেন।
আপনার ক্লায়েন্টে, আপনার সার্ভারের সাথে সংযুক্ত হন। এক্স 11 ফরোয়ার্ডিংয়ের অনুমতি দেওয়ার জন্য এসএসএসকে নির্দিষ্ট করে বলুন। আমি পছন্দ করি
belden@skretting:~$ ssh -X blyman@the-server
তবে আপনি পছন্দ করতে পারেন
belden@skretting:~$ ssh -o ForwardX11=yes blyman@the-server
অথবা আপনি এটি আপনার ~ / .ssh / কনফিগারেশনে সেট আপ করতে পারেন।
আমি প্রশাসনিক নয় এমন একটি নতুন সার্ভারে শেশ করার সময় আমি আজ শুরুর দিকে এই খালি DISPLAY পরিবেশের পরিবর্তনশীলটিতে চলে আসছিলাম। অনুপস্থিত xauth অংশটি সন্ধান করা কিছু মজার ছিল। এখানে আমি কী করেছি এবং আপনি কী করতে পারেন তা এখানে।
আমার স্থানীয় ওয়ার্কস্টেশনে, যেখানে আমি একজন প্রশাসক, আমি যাচাই করেছি যে / 11 / ফরমান / এসএসডি / এসএসডি_কনফিগটি এক্স 11 ফরোয়ার্ড করার জন্য সেট আপ করা হয়েছিল। আমি যখন লোকালহোস্টে ফিরে এস-এক্স করি তখন আমি আমার ডায়ালসটি সঠিকভাবে সেট করি।
ডিজিটালটিকে আনসেট করতে বাধ্য করা খুব কঠিন ছিল না। এটিকে সঠিকভাবে সেট করার জন্য আমার কেবল এসএসডিডি এবং এসএসআই কী করছে তা দেখার দরকার ছিল। আমি পথে যা কিছু করেছি তার সম্পূর্ণ আউটপুট এখানে।
blyman@skretting:~$ mkdir ~/dummy-sshd
blyman@skretting:~$ cp -r /etc/ssh/* ~/dummy-sshd/
cp: cannot open `/etc/ssh/ssh_host_dsa_key' for reading: Permission denied
cp: cannot open `/etc/ssh/ssh_host_rsa_key' for reading: Permission denied
আমার ssh_host_ {dsa, rsa} _key ফাইলগুলিকে জায়গায় নকল করতে sudo ব্যবহার করার পরিবর্তে আমি নিজের জন্য ডামি তৈরি করতে ssh-keygen ব্যবহার করেছি।
blyman@skretting:~$ ssh-keygen -t rsa -f ~/dummy-sshd/ssh_host_rsa_key
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/blyman/dummy-sshd/ssh_host_rsa_key.
Your public key has been saved in /home/blyman/dummy-sshd/ssh_host_rsa_key.pub.
-T dsa দিয়ে ধুয়ে ফেলুন এবং পুনরাবৃত্তি করুন:
blyman@skretting:~$ ssh-keygen -t dsa -f ~/dummy-sshd/ssh_host_dsa_key
# I bet you can visually copy-paste the above output down here
সঠিক নতুন ssh_host কী ফাইলগুলিকে নির্দেশ করতে ~ / dummy-sshd / sshd_config সম্পাদনা করুন।
# before
blyman@skretting:~$ grep ssh_host /home/blyman/dummy-sshd/sshd_config
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
# after
blyman@skretting:~$ grep ssh_host /home/blyman/dummy-sshd/sshd_config
HostKey /home/blyman/dummy-sshd/ssh_host_rsa_key
HostKey /home/blyman/dummy-sshd/ssh_host_dsa_key
অ-বিচ্ছিন্ন মোডে নতুন বন্দরে এসএসডি ফায়ার করুন:
blyman@skretting:~$ sshd -p 50505 -f ~/dummy-sshd/sshd_config -d
sshd re-exec requires execution with an absolute path
ওফস, সেই পথটি আরও ভাল করে সংশোধন করুন:
blyman@skretting:~$ /usr/sbin/sshd -p 50505 -f ~/dummy-sshd/sshd_config -d
debug1: sshd version OpenSSH_5.5p1 Debian-4ubuntu6
debug1: read PEM private key done: type RSA
debug1: Checking blacklist file /usr/share/ssh/blacklist.RSA-2048
debug1: Checking blacklist file /etc/ssh/blacklist.RSA-2048
debug1: private host key: #0 type 1 RSA
debug1: read PEM private key done: type DSA
debug1: Checking blacklist file /usr/share/ssh/blacklist.DSA-1024
debug1: Checking blacklist file /etc/ssh/blacklist.DSA-1024
debug1: private host key: #1 type 2 DSA
debug1: setgroups() failed: Operation not permitted
debug1: rexec_argv[0]='/usr/sbin/sshd'
debug1: rexec_argv[1]='-p'
debug1: rexec_argv[2]='50505'
debug1: rexec_argv[3]='-f'
debug1: rexec_argv[4]='/home/blyman/dummy-sshd/sshd_config'
debug1: rexec_argv[5]='-d'
Set /proc/self/oom_adj from 0 to -17
debug1: Bind to port 50505 on 0.0.0.0.
Server listening on 0.0.0.0 port 50505.
debug1: Bind to port 50505 on ::.
Server listening on :: port 50505.
একটি নতুন টার্মিনাল পপ করুন এবং পোর্ট 50505 এ লোকালহোস্টে এসএসএস করুন:
blyman@skretting:~$ ssh -p 50505 localhost
The authenticity of host '[localhost]:50505 ([::1]:50505)' can't be established.
RSA key fingerprint is 81:36:a5:ff:a3:5a:45:a6:90:d3:cc:54:6b:52:d0:61.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[localhost]:50505' (RSA) to the list of known hosts.
Linux skretting 2.6.35-32-generic #67-Ubuntu SMP Mon Mar 5 19:39:49 UTC 2012 x86_64 GNU/Linux
Ubuntu 10.10
Welcome to Ubuntu!
* Documentation: https://help.ubuntu.com/
1 package can be updated.
0 updates are security updates.
Last login: Thu Aug 16 15:41:58 2012 from 10.0.65.153
Environment:
LANG=en_US.UTF-8
USER=blyman
LOGNAME=blyman
HOME=/home/blyman
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
MAIL=/var/mail/blyman
SHELL=/bin/bash
SSH_CLIENT=::1 43599 50505
SSH_CONNECTION=::1 43599 ::1 50505
SSH_TTY=/dev/pts/16
TERM=xterm
DISPLAY=localhost:10.0
Running /usr/bin/xauth remove unix:10.0
/usr/bin/xauth add unix:10.0 MIT-MAGIC-COOKIE-1 79aa9275ced418dd445d9798b115d393
সেখানে শেষ তিনটি লাইন দেখুন। আমার ভাগ্যক্রমে ডায়লস সেট ছিল এবং আমার কাছে / ইউএসআর / বিন / কৌঠ থেকে দুটি দুর্দান্ত চেহারা ছিল।
সেখান থেকে আমার / usr / bin / xauth /usr/bin/xauth.old এ সরানো, ssh থেকে সংযোগ বিচ্ছিন্ন করা এবং sshd বন্ধ করা, তারপর sshd এবং ssh পুনরায় লোকালহোস্টে চালু করা বাচ্চার খেলা ছিল।
/ Usr / bin / xauth চলে যাওয়ার পরে আমি DIY কে আমার পরিবেশে প্রতিবিম্বিত হতে দেখিনি।
এখানে তেমন কিছু চলছে না। বেশিরভাগ ক্ষেত্রে আমি আমার স্থানীয় মেশিনে এটিকে পুনরুত্পাদন করার চেষ্টা করার জন্য একটি বুদ্ধিমান পন্থা বেছে নেওয়ার ক্ষেত্রে ভাগ্যবান হয়েছি।