সামগ্রিকভাবে, আমি সুপারিশ করবx11vnc
।
টি এল; ডিআর
apt-get -y install x11vnc
x11vnc -storepasswd
আপনার পাসওয়ার্ড লিখুন, এটি ডিফল্টরূপে সংরক্ষণ করা হয় ~/.vnc/passwd
ইনসেক্যারে এনক্রিপ্ট করা ফর্মটি করা হয়েছে। এটি ডিক্রিপ্ট করা যেতে পারে কারণ কীটি জানা যায়। .. এটি ফাইল সিস্টেমের অনুমতি সহ সুরক্ষিত করুন)
chmod 600 ~/.vnc/passwd
স্থানীয়ভাবে আমার সহায়ক স্ক্রিপ্ট সংরক্ষণ করুন:
mkdir ~/bin/
curl https://gist.githubusercontent.com/trinitronx/76d2bf98489e5e3e84fa/raw/53885d87f91320b574ca4f7d609e4bb268274f68/start_x11vnc.sh > ~/bin/start_x11vnc.sh && chmod +x ~/bin/start_x11vnc.sh
আপনার ভিএনসি ক্লায়েন্ট হোস্ট থেকে:
ssh -f -L 5900:127.0.0.1:5900 -p 22 youruser@your-ubuntu-host.example.com '~/bin/start_x11vnc.sh && sleep 10'
অথবা, আপনার ভিএনসি সার্ভার হোস্ট থেকে চালান:
~/bin/start_x11vnc.sh
টার্মিনালের মাধ্যমে (অথবা এটি একটি ডিমন -forever
হিসাবে একটি ডি.ডি. সার্ভিস , আপস্টার্ট পরিষেবা হিসাবে শুরু করুন , সিস্টেমড ইউনিট , অথবা আপনি ইচ্ছুক হিসাবে শুরু করুন)
এখন আপনার ক্লায়েন্ট হোস্ট থেকে আপনার পছন্দের ভিএনসি ক্লায়েন্ট চালান, এটি চিহ্নিত করুন 127.0.0.1:5900
:, উপরে সংরক্ষিত পাসওয়ার্ড দিয়ে লগইন করুন।
এক্স 11 "ম্যাজিক কুকি" ব্যবহার করুন
সর্বাধিক এক্স প্রদর্শন পরিচালকদের (যেমন জিডিএম , XDM , এম ) ইনিশিয়াল X11 সার্ভারের শুরু এটা এ প্রমাণীকরণ একটি সঙ্গে MIT- র ম্যাজিক কুকি । আপনার ডিসপ্লে ম্যানেজারের উপর নির্ভর করে ম্যাজিক কুকি বিভিন্ন জায়গার একটিতে পাওয়া যাবে ।
উবুন্টু জিডিএম লগইন স্ক্রিনে * ভিএনসি সেশনটি উন্মুক্ত করার জন্য আমার ভাগ্য ভালো হয়েছে * এই স্ক্রিপ্টটির মাধ্যমে ম্যাজিক কুকিটি আবিষ্কার করে নোট 1 :
#!/bin/bash
DEFAULT_DISPLAY=:0
X11VNC_DISPLAY="$DEFAULT_DISPLAY"
if [ -x /usr/bin/x11vnc ]; then
[ "$1" == '-nocache' ] && CACHE_FLAG='-noncache' || CACHE_FLAG='-noncache'
[ "$2" == '-guess' ] && GUESS_FLAG='-auth guess' || GUESS_FLAG=''
[ -f /root/.vnc/passwd ] && PASSWORD="/root/.vnc/passwd"
[ -f $HOME/.vnc/passwd ] && PASSWORD="$HOME/.vnc/passwd"
[ ! -z "$PASSWORD" ] && x11vnc -display $X11VNC_DISPLAY -xkb -rfbauth $PASSWORD -rfbport 5900 -shared -forever -nowf -norc -notruecolor -bg $GUESS_FLAG $CACHE_FLAG -noxdamage
EXIT_CODE=$?
if [ $EXIT_CODE -ne 0 ]; then
echo "\n*********************************************************************"
echo "*** Could not start x11vnc! Trying again with gdm MAGIC_COOKIE! ***"
echo "*********************************************************************\n"
# Old GDM location for Ubuntu <= 17.10
MAGIC_COOKIE_FILE=`sudo find /var/run/gdm/ -iname database | grep for-gdm`
# New GDM location for Ubuntu >= 17.10
[ -z "$MAGIC_COOKIE_FILE" ] && NUM_MAGIC_COOKIE_FILE_SESSIONS=`sudo find /run/user/ -iwholename '*/gdm/*' -iname '*Xauthority' 2>/dev/null | wc -l`
if [ -z "$MAGIC_COOKIE_FILE" -a "$NUM_MAGIC_COOKIE_FILE_SESSIONS" -gt 1 ]; then
# Find the current user's session
MAGIC_COOKIE_FILE=`sudo find /run/user/$(id -u) -iwholename '*/gdm/*' -iname '*Xauthority'`
X11VNC_DISPLAY=":1"
else
# Find the GDM user's session (or whichever shows up first in ps list)
# This should pick up the original gdm session which grabs :0
# If you login after gdm login screen, your Xorg server may end up on another display!
# Workaround for now is to restart x11vnc on that display number
[ -z "$MAGIC_COOKIE_FILE" ] && MAGIC_COOKIE_FILE=`sudo find /run/user/ -iwholename '*/gdm/*' -iname '*Xauthority' | head -n1`
fi
# Old lightdm location for Ubuntu <= 17.10
[ -z "$MAGIC_COOKIE_FILE" ] && MAGIC_COOKIE_FILE=`sudo find /var/lib -name '.Xauthority' -o -wholename '/var/run/lightdm/root/:0' | head -n1`
#sudo bash -c "[ -z \"$MAGIC_COOKIE_FILE\" -a -e /var/run/lightdm/root/:0 ]" && MAGIC_COOKIE_FILE='/var/run/lightdm/root/:0'
[ -n "$MAGIC_COOKIE_FILE" -a -z "$GUESS_FLAG" ] && AUTH_COOKIE_FLAG="-auth $MAGIC_COOKIE_FILE"
[ ! -z "$PASSWORD" ] && sudo x11vnc -display $X11VNC_DISPLAY -xkb -rfbauth $PASSWORD -rfbport 5900 -shared -forever -nowf -norc -notruecolor -bg $GUESS_FLAG $CACHE_FLAG -noxdamage ${AUTH_COOKIE_FLAG}
fi
fi
আমি start_x11vnc.sh
এসএসএইচ এর মাধ্যমে যেকোন সময় এই স্ক্রিপ্টটি শুরু করতে পারি ... এমনকি gdm
লগইন স্ক্রিনের মাধ্যমে লগইন করার আগে । এটি এমন একটি x11vnc
সার্ভার চালু করে যা আমি তারপরে এসএসএইচ টানেলের সাথে সংযুক্ত করতে পারি । ( আপনার হোস্টের প্রবেশের জন্য ব্যবহার ssh -L 5900:127.0.0.1:5900
বা যুক্ত করুন )।LocalForward 5900 127.0.0.1:5900
~/.ssh/config
দ্রষ্টব্য : উবুন্টু> = 17.10 এর মতো কিছু নতুন ডিস্ট্রো রিলিজে, জিডিএম লগইন এক্স সেশন ডিসপ্লে লগ ইন করা ব্যবহারকারীর এক্স সেশন ডিসপ্লে থেকে সম্পূর্ণ পৃথক। অতএব, প্রথমে জিডিএম এক্স সেশনে সংযুক্ত হওয়া, লগইন করা ... এবং অবশেষে সংযোগ বিচ্ছিন্ন করা এবং সদ্য শুরু হওয়া এক্স সেশনে পুনরায় সংযোগ স্থাপন করা প্রয়োজন। তারা এখন এটি কেন এইভাবে করে তা একটি রহস্য, তবে এটি এই স্ক্রিপ্টের পুরানো সংস্করণটিকে ভেঙে দেয়।