Watumiaji wengine hukodisha VPS ya bei ya chini na Windows ili kuendesha huduma za kompyuta za mbali. Vile vile vinaweza kufanywa kwenye Linux bila kupangisha maunzi yako mwenyewe katika kituo cha data au kukodisha seva iliyojitolea. Baadhi ya watu wanahitaji mazingira ya kielelezo yanayofahamika kwa ajili ya majaribio na uundaji, au kompyuta ya mezani ya mbali iliyo na chaneli pana kwa ajili ya kufanya kazi kutoka kwa vifaa vya mkononi. Kuna chaguo nyingi za kutumia mfumo wa Remote FrameBuffer (RFB) unaotegemea itifaki ya Virtual Network Computing (VNC). Katika nakala hii fupi tutakuambia jinsi ya kuisanidi kwenye mashine ya kawaida na hypervisor yoyote.
Jedwali la Yaliyomo:
Kuchagua Seva ya VNC
Huduma ya VNC inaweza kujengwa katika mfumo wa virtualization, na hypervisor itaunganisha na vifaa vilivyoigwa na hakuna usanidi wa ziada utahitajika. Chaguo hili linahusisha uendeshaji muhimu na halitumiki na watoa huduma wote - hata katika utekelezaji usiohitaji rasilimali nyingi, wakati badala ya kuiga kifaa halisi cha michoro, kifupisho kilichorahisishwa (framebuffer) kinahamishiwa kwenye mashine pepe. Wakati mwingine seva ya VNC imefungwa kwa seva ya X inayoendesha, lakini njia hii inafaa zaidi kwa kupata mashine ya kimwili, na kwa moja ya kawaida inajenga matatizo kadhaa ya kiufundi. Njia rahisi zaidi ya kusakinisha seva ya VNC ni kutumia seva iliyojengewa ndani ya X. Haihitaji vifaa vya kimwili (adapta ya video, kibodi na panya) au uigaji wao kwa kutumia hypervisor, na kwa hiyo inafaa kwa aina yoyote ya VPS.
Ufungaji na usanidi
Tutahitaji mashine pepe yenye Ubuntu Server 18.04 LTS katika usanidi wake chaguomsingi. Kuna seva kadhaa za VNC kwenye hazina za kawaida za usambazaji huu:
Kufunga mazingira ya eneo-kazi na utegemezi wote hufanywa kwa amri ifuatayo:
sudo apt-get install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
Ifuatayo unahitaji kusakinisha seva ya VNC:
sudo apt-get install tigervnc-standalone-server tigervnc-common
Kuiendesha kama mtumiaji mkuu ni wazo mbaya. Unda mtumiaji na kikundi:
sudo adduser vnc
Wacha tuongeze mtumiaji kwenye kikundi cha sudo ili aweze kufanya kazi zinazohusiana na utawala. Ikiwa hakuna hitaji kama hilo, unaweza kuruka hatua hii:
sudo gpasswd -a vnc sudo
Hatua inayofuata ni kuendesha seva ya VNC na upendeleo wa mtumiaji wa vnc ili kuunda nenosiri salama na faili za usanidi katika saraka ya ~/.vnc/. Urefu wa nenosiri unaweza kuwa kutoka kwa wahusika 6 hadi 8 (herufi za ziada zimekatwa). Ikiwa ni lazima, nenosiri pia limewekwa kwa kutazama tu, i.e. bila ufikiaji wa kibodi na kipanya. Amri zifuatazo zinatekelezwa kama mtumiaji wa vnc:
su - vnc
vncserver -localhost no
Kwa msingi, itifaki ya RFB hutumia safu ya bandari ya TCP kutoka 5900 hadi 5906 - hii ndiyo inayoitwa. onyesha bandari, kila moja inalingana na skrini ya seva ya X. Katika kesi hii, bandari zinahusishwa na skrini kutoka :0 hadi :6. Mfano wa seva ya VNC tuliyozindua husikiliza bandari 5901 (skrini: 1). Matukio mengine yanaweza kufanya kazi kwenye milango mingine iliyo na skrini :2, :3, n.k. Kabla ya usanidi zaidi, unahitaji kusimamisha seva:
vncserver -kill :1
Amri inapaswa kuonyesha kitu kama hiki: "Kuua kitambulisho cha mchakato wa Xtigervnc 18105... mafanikio!"
TigerVNC inapoanza, huendesha hati ~/.vnc/xstartup ili kusanidi mipangilio ya usanidi. Wacha tuunde hati yetu wenyewe, kwanza tuhifadhi nakala rudufu ya ile iliyopo, ikiwa iko:
mv ~/.vnc/xstartup ~/.vnc/xstartup.b
nano ~/.vnc/xstartup
Kikao cha mazingira cha eneo-kazi cha XFCE kimeanza na hati ifuatayo ya xstartup:
#!/bin/bash
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
xrdb $HOME/.Xresources
exec /usr/bin/startxfce4 &
Amri ya xrdb inahitajika ili VNC isome faili ya .Xresources katika saraka ya nyumbani. Hapo mtumiaji anaweza kufafanua mipangilio mbalimbali ya eneo-kazi la picha: utoaji wa fonti, rangi za wastaafu, mandhari ya mshale, n.k. Hati lazima itekelezwe:
chmod 755 ~/.vnc/xstartup
Hii inakamilisha usanidi wa seva ya VNC. Ikiwa utaiendesha na amri vncserver -localhost no (kama mtumiaji wa vnc), unaweza kuunganisha na nenosiri lililotajwa hapo awali na kuona picha ifuatayo:
Kuanzisha huduma kupitia systemd
Kuanzisha seva ya VNC kwa mikono hakufai kwa matumizi ya mapigano, kwa hivyo tutasanidi huduma ya mfumo. Amri zinatekelezwa kama mzizi (tunatumia sudo). Kwanza, hebu tuunde faili mpya ya kitengo kwa seva yetu:
sudo nano /etc/systemd/system/[email protected]
Alama ya @ katika jina hukuruhusu kupitisha hoja ili kusanidi huduma. Kwa upande wetu, inabainisha bandari ya kuonyesha VNC. Faili ya kitengo ina sehemu kadhaa:
[Unit]
Description=TigerVNC server
After=syslog.target network.target
[Service]
Type=simple
User=vnc
Group=vnc
WorkingDirectory=/home/vnc
PIDFile=/home/vnc/.vnc/%H:%i.pid
ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x960 :%i
ExecStop=/usr/bin/vncserver -kill :%i
[Install]
WantedBy=multi-user.target
Kisha unahitaji kuarifu systemd kuhusu faili mpya na kuiwasha:
sudo systemctl daemon-reload
sudo systemctl enable [email protected]
Nambari ya 1 katika jina inabainisha nambari ya skrini.
Acha seva ya VNC, ianze kama huduma na angalia hali:
# ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ vnc
vncserver -kill :1
# Ρ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΌΠΈ ΡΡΠΏΠ΅ΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
sudo systemctl start vncserver@1
sudo systemctl status vncserver@1
Ikiwa huduma inaendelea, tunapaswa kupata kitu kama hiki.
Muunganisho wa Kompyuta ya Mezani
Mipangilio yetu haitumii usimbaji fiche, kwa hivyo pakiti za mtandao zinaweza kunaswa na washambuliaji. Kwa kuongeza, katika seva za VNC mara nyingi kabisa
sudo netstat -ap |more
Katika Linux, FreeBSD, OS X na OS zingine kama UNIX, handaki kutoka kwa kompyuta ya mteja hufanywa kwa kutumia matumizi ya ssh (sshd lazima iwe inaendesha kwenye seva ya VNC):
ssh -L 5901:127.0.0.1:5901 -C -N -l vnc vnc_server_ip
Chaguo la -L hufunga mlango 5901 wa muunganisho wa mbali hadi mlango 5901 kwenye localhost. Chaguo -C huwezesha mgandamizo, na -N chaguo huambia ssh isitekeleze amri ya mbali. Chaguo la -l linabainisha kuingia kwa kuingia kwa mbali.
Baada ya kuanzisha handaki kwenye kompyuta ya ndani, unahitaji kuzindua mteja wa VNC na kuanzisha uunganisho kwa mwenyeji 127.0.0.1:5901 (localhost:5901), kwa kutumia nenosiri lililotajwa hapo awali ili kufikia seva ya VNC. Sasa tunaweza kuwasiliana kwa usalama kupitia handaki iliyosimbwa kwa njia fiche yenye mazingira ya eneo-kazi ya picha ya XFCE kwenye VPS. Katika picha ya skrini, matumizi ya juu yanaendeshwa katika kiigaji cha terminal ili kuonyesha matumizi ya chini ya rasilimali za kompyuta kwenye mashine pepe. Kisha kila kitu kitategemea maombi ya mtumiaji.
Unaweza kusakinisha na kusanidi seva ya VNC kwenye Linux karibu na VPS yoyote. Hii haihitaji usanidi wa gharama kubwa na unaotumia rasilimali nyingi kwa kuiga adapta ya video au ununuzi wa leseni za programu za kibiashara. Mbali na chaguo la huduma ya mfumo tulilozingatia, kuna wengine: uzinduzi katika hali ya daemon (kupitia /etc/rc.local) mfumo unapoanza au unapohitaji kupitia inetd. Mwisho ni wa kuvutia kwa kuunda usanidi wa watumiaji wengi. Mtandao wa Superserver utaanzisha seva ya VNC na kuunganisha mteja kwake, na seva ya VNC itaunda skrini mpya na kuanza kipindi. Ili kuthibitisha ndani yake, unaweza kutumia kidhibiti onyesho la picha (kwa mfano,
Chanzo: mapenzi.com