VNC (Virtual network computing) - tai prisijungimas prie grafinės aplinkos, kurios pagalba galima nuotoliniu būdu leidžia valdyti kitą kompiuterį ar serverį. Šioje pamokoje parodysime, kaip mūsų Ubuntu 16.04 operacinėje sistemoje galima įdiegti Gnome grafinę aplinką, bei prie jos prisijungti iš savo kompiuterio naudojant VNC.
1. Pradžia:
Pirmiausia prisijungę prie serverio atnaujinkite savo operacinę sistemą:
sudo apt-get update && sudo apt-get upgrade
2. Gnome ir VNC instaliavimas
Instaliuokite Ubuntu 16.04 grafinę aplinką:
apt-get install ubuntu-desktop gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal
Instaliavimo metu pasirodys grafinė lentelė, kurioje nustatymus galite pasirinkti pagal save:
Instaliuokite VNC serverį:
sudo apt-get install tightvncserver
3. Prisijungimo per VNC saugumo stiprinimas
Tai galima atlikti su
PuTTY programėle, kuria jungiamasi prie serverio. Atsidarius šią programėlę:
* pasirinkite "SSH" -> "Tunnels";
* laukelyje "Source port" nurodykite 5901, "Destination" - savo serverio IP adresą/ pavadinimą (hostname) ir prievadą 5901. bei spauskite "Add";
* tuomet grįžkite atgal į "Sessions" pasirinkimą. Laukelyje "Host Name (or IP address)" įveskite savo serverio IP adresą ar pavadinimą;
* Laukelyje "Saved Sessions" sugalvokite ir nurodykite šio prisijungimo pavadinimą, spauskite "Save", bei prisijunkite prie serverio su mygtuku "Open".
* Prisijungus, pirmą kartą paleiskite VNC tarnybą:
vncserver :1
Jūsų bus paprašyta sugalvoti prisijungimo slaptažodį.
Pastaba: atkreipkite dėmesį, kad slaptažodyje bus naudojami tik pirmi 8 simboliai.
4. Prisijungimas per VNC prie serverio
Parsisiųskite programą su kuria jungsitės prie serverio, Tai gali būti
TigerVNC,
RealVNC Viewer ar kita. Jungiantis prie serverio reikės nurodyti Jūsų serverio/IP adresą su prievadu, pavyzdžiui 127.0.0.1:5091 bei slaptažodį, kurį sugalvojote ankstesniame žingsnyje.
Jungiantis greičiausiai bus pateikiamas pranešimas, kad prisijungimas nėra saugus, tačiau jei atlikote serverio tuneliavimo veiksmus, kaip aprašyta anksčiau, šį pranešimą galite ignoruoti.
Prisijungus turėtų būti matomas pilkas langas - tai yra normalu, kadangi tarnybos serveryje dar nėra iki galo sukonfigūruotos.
Prisijungus prie serverio nutraukime VNC susijungimą:
vncserver -kill :1
Atsidarykite failą /root/.vnc/xstartup ir failo pabaigoje įterpkite eilutes:
gnome-panel &
gnome-settings-daemon &
metacity &
nautilus &
bei išsaugokite pakeitimus. Pradėkite naują VNC sesiją:
vncserver :1
Dabar galite vėl atsidaryti savo VNC programą ir pakartotinai jungtis prie serverio. Jei viską atlikote korektiškai, turi atsidaryti Ubuntu operacinės sistemos grafinė aplinka:
5. Automatinis VNC startavimas po serverio perkrovimo
Tam, kad perkrovus serverį VNC tarnyba startuotų automatiškai (t.y. jos nereikėtų paleisti rankiniu būdu su komanda
vncserver :1) atlikite šiuos veiksmus:
* Sukurkite failą
/etc/init.d/vncserver, tai galima atlikti su komanda:
vi /etc/init.d/vncserver
ir jame įrašyti šį kodą:
#!/bin/sh -e
### BEGIN INIT INFO
# Provides: vncserver
# Required-Start: networking
# Default-Start: S
# Default-Stop: 0 6
### END INIT INFO
PATH="$PATH:/usr/X11R6/bin/"
# The Username:Group that will run VNC
export USER="root"
#${RUNAS}
# The display that VNC will use
DISPLAY="1"
# Color depth (between 8 and 32)
DEPTH="16"
# The Desktop geometry to use.
#GEOMETRY="<WIDTH>x<HEIGHT>"
#GEOMETRY="800x600"
GEOMETRY="1024x768"
#GEOMETRY="1280x1024"
# The name that the VNC Desktop will have.
NAME="vnc"
OPTIONS="-name ${NAME} -depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY}"
. /lib/lsb/init-functions
case "$1" in
start)
log_action_begin_msg "Starting vncserver for user '${USER}' on localhost:${DISPLAY}"
su ${USER} -c "/usr/bin/vncserver ${OPTIONS}"
;;
stop)
log_action_begin_msg "Stoping vncserver for user '${USER}' on localhost:${DISPLAY}"
su ${USER} -c "/usr/bin/vncserver -kill :${DISPLAY}"
;;
restart)
$0 stop
$0 start
;;
esac
exit 0
Pastaba: Pasirinkimus "NAME", "GEOMETRY", "USER" galite pakeisti pagal savo poreikius.
Paleiskite komandas:
chmod +x /etc/init.d/vncserver
sudo update-rc.d vncserver defaults
Jei viską atlikote teisingai, VNC tarnyba startuos automatiškai po serverio perkrovimo.