آموزش نصب و کانفیگ VNC روی لینوکس اوبونتو
VNC و یا “Virtual Network Computing”، یک سیستم اتصال است که به شما اجازه می دهد با استفاده از صفحه کلید و ماوس با محیط گرافیکی دسکتاپ بر روی یک سرور، از راه دور در تعامل باشید. VNC فایل ها و نرم افزارها را مدیریت کرده و تنظیمات سرور از راه دور را برای کاربرانی که هنوز با کار کردن با خط فرمان راحت نیست آسان تر میکند.
در این راهنما، راه اندازی VNC بر روی سرور لینوکس اوبونتو ۱۴٫۰۴ و اتصال با امنیت بالا از طریق یک تونل SSH آموزش داده خواهد شد. سروری که در این آموزش استفاده میکنیم TightVNC میباشد که به عنوان یک پکیج کنترل از راه دور سبک و سریع شناخته شده است.
پیش نیازها
قبل از شروع راه اندازی VNC ، سرور لینوکس اوبونتو ۱۴٫۰۴ باید بر روی سیستم نصب و پیکربندی شود. در این آموزش به کاربر غیر روت با دسترسی sudo نیز نیاز خواهید داشت. اگر این کاربر تعریف نشده باشد، می توانید با توجه به مراحل ۱-۴ مقاله راهنمای راه اندازی اولیه سرور اوبونتو ۱۴٫۰۴ این اکانت را ایجاد کنید.
مرحله اول – نصب محیط دسکتاپ و VNC server
به طور پیش فرض، در هنگام نصب اکثر سرورهای لینوکس ، محیط گرافیکی دسکتاپ نصب نخواهد شد. در این مثال، از XFCE4 استفاده شده است که در عین سبک و سریع بودن ، کاربران زیادی با آن آشنایی دارند.
شما می توانید پکیج های XFCE را به همراه پکیج TightVNC با استفاده از apt به طور مستقیم از مخازن اوبونتو دریافت کنید.
1
2
|
sudo apt–get update
sudo apt–get install xfce4 xfce4–goodies tightvncserver
|
برای تکمیل تنظیمات اولیه VNC server ، از دستور vncserver برای تعیین یک پسورد امن استفاده کنید:
1
|
vncserver
|
(پس از تنظیم رمز عبور ، از شما خواسته میشود که اگر می خواهید یک پسورد view-only نیز وارد کنید. کاربرانی که با این پسورد وارد میشوند قادر به کنترل VNC با ماوس یا صفحه کلید خود نیستند. این گزینه زمانی مفید خواهد بود که بخواهید با استفاده از VNC server چیزی به افراد دیگر نشان دهید.)
دستورvncserver فرایند نصب VNC را با ایجاد یک فایل پیکربندی پیش فرض و اطلاعات مربوط به اتصال به سرور تکمیل می کند. اکنون با این پکیج های نصب شده، برای پیکربندی سرور VNC و دسکتاپ گرافیکی خود آماده هستید.
مرحله دوم – پیکربندی VNC
ابتدا باید مشخص کنیم که سرور VNC برای اجرا به چه دستوراتی نیاز دارد . این دستورات در یک فایل پیکربندی به نام xstartup واقع شده است که به منظور استفاده از برخی از دستورات برای دسکتاپ XFCE باید تغییراتی در آن صورت گیرد.
هنگامی که VNC برای اولین بار راه اندازی شود، به طور پیش فرض بر روی پورت ۵۹۰۱ اجرا خواهد شد. این پورت یک display port است که در VNC به عنوان ۱: معرفی شده و میتواند بر روی پورت های دیگری مانند :۲ و :۳ و … هم اجرا شود. به یاد داشته باشید که :X display port است و به پورت ۵۹۰۰ + X اشاره دارد.
از آنجا که میخواهیم در پیکربندی سرور VNC تغییراتی ایجاد کنیم، به عنوان اولین تغییر باید از اجرا شدن VNC بر روی پورت ۵۹۰۱ جلوگیری کنیم:
1
|
vncserver –kill :1
|
قبل از شروع پیکربندی فایل xstartup جدید ، از نسخه اصلی یک بک آپ تهیه کنید :
1
|
mv ~/.vnc/xstartup ~/.vnc/xstartup.bak
|
سپس میتوانید فایل xstartup جدید را با nano باز کنید :
1
|
nano ~/.vnc/xstartup
|
این دستورات را در فایل وارد کنید به طوری که در هنگام شروع به کار یا راه اندازی مجدد، سرور VNC به طور خودکار اجرا شوند:
1
2
3
|
#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &
|
برای اطمینان از اینکه VNC قادر است از این فایل راه اندازی جدید به درستی استفاده کند ، باید دسترسی اجرایی به آن داده شود :
1
|
sudo chmod +x ~/.vnc/xstartup
|
آموزش نصب و کانفیگ VNC روی لینوکس اوبونتو
مرحله سوم – ایجاد یک فایل VNC Service
برای کنترل راحت تر VNC ، باید آن را به صورت یک سرویس اوبونتو تنظیم کنیم. این کار اجازه خواهد داد که این سرویس در صورت نیاز اجرا، متوقف، و یا مجددا راه اندازی شود.
ابتدا یک فایل سرویس جدید در /etc/init.d، با استفاده از nano باز کنید:
1
|
sudo nano /etc/init.d/vncserver
|
بلوک اول جایی است که برخی تنظیمات رایج VNC نظیر نام کاربری شما و رزولوشن صفحه نمایش و … اعلام میشود.
1
2
3
4
5
6
7
8
|
#!/bin/bash
PATH=“$PATH:/usr/bin/”
export USER=“user”
DISPLAY=“1”
DEPTH=“16”
GEOMETRY=“1024×768”
OPTIONS=“-depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY} -localhost”
. /lib/lsb/init–functions
|
به جای user نام کاربر غیر روتی که ایجاد کرده اید و به جای ۱۰۲۴×۷۶۸ رزولوشن مورد نظرتان را وارد کنید .
سپس، می توانید دستوراتی را قرار دهید که به شما اجازه مدیریت کردن سرویس جدید را میدهد. بلوک زیر فرمان مورد نیاز برای شروع یک سرور VNC را به کلمه کلیدی start متصل می کند.
1
2
3
4
5
|
case “$1” in
start)
log_action_begin_msg “Starting vncserver for user ‘${USER}’ on localhost:${DISPLAY}”
su ${USER} –c “/usr/bin/vncserver ${OPTIONS}”
;;
|
بلوک بعدی کلمه کلیدی stop را ایجاد میکند که بلافاصله باعث توقف اجرای سرور VNC خواهد شد.
1
2
3
4
|
stop)
log_action_begin_msg “Stopping vncserver for user ‘${USER}’ on localhost:${DISPLAY}”
su ${USER} –c “/usr/bin/vncserver -kill :${DISPLAY}”
;;
|
بلوک نهایی دستور راه اندازی مجدد را به کلمه کلیدی restart متصل میکند.
1
2
3
4
5
6
|
restart)
$0 stop
$0 start
;;
esac
exit 0
|
هنگامی که تمامی این بلوک ها در اسکریپت سرویس جدید قرار بگیرند، می توانید با ذخیره و بستن این فایل، این سرویس را اجرا کرده و از دستوراتی که ایجاد کرده اید استفاده کنید .
1
|
sudo chmod +x /etc/init.d/vncserver
|
برای شروع vnc server جدید دستور زیر را اجرا کنید :
1
|
sudo service vncserver start
|
مرحله چهارم – اتصال به دسکتاپ VNC
برای تست سرور VNC خود به یک کلاینت که از کانکشن VNC روی تونل SSH پشتیبانی می کند نیاز دارید. در ویندوز می توانید از TightVNC، RealVNC، یا UltraVNC استفاده کنید. کاربران سیستم عامل Mac OS X می توانند از یک برنامه کراس پلتفرم مانند RealVNC استفاده کنند.
ابتدا باید یک کانکشن SSH بر روی کامپیوتر محلی خود ایجاد کنید. دستور زیر را از طریق ترمینال در لینوکس یا OS X اجرا کنید:
(به یاد داشته باشید که به جای user و server_ip_address باید IPو نامی که برای اتصال به سرور خود از طریق SSH از آن استفاده میکنید وارد نمایید.)
1
|
ssh –L 5901:127.0.0.1:5901 –N –f –l user server_ip_address
|
سپس می توانید با استفاده از VNC viewer به سرور VNC در localhost:5901 متصل شوید. مطابق عکس زیر به طور پیش فرض دسکتاپ XFCE را مشاهده خواهید کرد که برای تنظیم کردن و استفاده شما آماده است:
پس از تایید اتصال VNC ، سرویس VNC خود را به سرویس پیش فرض اضافه کنید ، به طوری که پس از بوت شدت سرور، به طور خودکار اجرا شود:
1
|
sudo update–rc.d vncserver defaults
|
نتیجه
شما هم اکنون یک VNC server امن بر روی سرور اوبونتو ۱۴٫۰۴ خود راه اندازی کردید و قادر خواهید بود فایل ها ، نرم افزار و تنظیمات سرور را با یک رابط گرافیکی آسان مدیریت کنید.