Introductie
Met VNC kun je op afstand een grafische desktopomgeving gebruiken. Dit artikel helpt je bij het installeren en configureren van de grafische desktopomgeving en VNC op jouw server.
Vereisten
- Een Cloud VPS of Dedicated Server met Ubuntu 16.04 installatie. Je kunt ons artikel lezen: Initiële serverconfiguratie met Ubuntu 16.04
- Een administrative non-root gebruiker die je hebt aangemaakt in dit artikel:
Initiële serverconfiguratie met Ubuntu 16.04 - Een VNC client, voor Windows is het raadzaam om gebruik te maken van TightVNC. Linux gebruikers kunnen de builtin “Screen Sharing” app gebruiken van MacOS waaronder ook TightVNC.
Stap 1: Log in op jouw server
Log in als een administrative non-root user.
Saep 2: Pakketten updaten
sudo apt-get update && sudo apt-get -y dist-upgrade
Stap 3: Installeer de grafische desktopomgeving en VNC-server
Ubuntu wordt standaard geïnstalleerd zonder grafische bureaubladomgeving. Er zijn veel desktopomgevingen beschikbaar, we gaan in dit artikel Gnome installeren:
sudo apt-get install ubuntu-desktop gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal tightvncserver
Hiermee wordt een complete desktopomgeving geïnstalleerd, inclusief een office suit en webbrowser. Mocht je een minimale installatie willen dan kun je het onderstaande commando uitvoeren:
sudo apt-get install --no-install-recommends ubuntu-desktop gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal tightvncserver
Stap 4: Configureer VNC server
We beginnen met het instellen van een wachtwoord voor de VNC-server. Voer hiervoor het onderstaande commando uit:
vncserver
Je wordt gevraagd een wachtwoord in te voeren en te verifiëren. We raden je aan hetzelfde wachtwoord te gebruiken voor je gebruikerer. Het view-only wachtwoord is optioneel en kan worden gebruikt om iemand toegang tot jouw scherm te geven zonder dat hij jouw muis of toestenbord kan gebruiken. Bij het starten van de VNC server worden er standaardconfiguraties gemaakt. Wij gaan onze configuratie bijwerken, daarom stoppen we eerst de VNC server met het volgende commando:
vncserver -kill :1
Nu is het tijd om de oude opstartconfiguratie naar een veilige plek te verplaatsen en een lege opstartconfiguratie te maken. Voer hiervoor het onderstaande commando uit:
mv ~/.vnc/xstartup ~/.vnc/xstartup.old; touch ~/.vnc/xstartup
Open het opstartconfiguratiebestand met je favoriete teksteditor:
nano ~/.vnc/xstartup
Kopieer en plak de regels zodat de inhoud van dat bestand overeenkomt met het volgende:
#!/bin/sh [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources xsetroot -solid grey x-window-manager & gnome-session & gnome-panel & gnome-settings-daemon & metacity & nautilus &
We gaan nu dit bestand de juiste rechten verlenen zodat alles correct werkt.
chmod +x ~/.vnc/xstartup
Nadat je klaar bent met het bewerken van het opstartconfiguratiebestand, kun je het opslaan en afsluiten (CTRL + W voor nano). We gaan nu het VNC-serverconfiguratiebestand configureren. Hiervoor openen we dit configuratiebestand:
nano ~/.vnc/tightvncserver.conf
Kopieer en plak de regels zodat de inhoud van dat bestand overeenkomt met het volgende:
$geometry = "1280x720"; $depth = 24;
Vervang 1280×720 met de resolutie die je wenst, bijvoorbeeld 1920×1080.
Stap 5: VNC server instellen
We maken een servicebestand aan zodat de VNC server tijdens het booten kan opstarten. Voer hiervoor het onderstaande commando uit:
sudo nano /etc/systemd/system/[email protected]
De inhoud moet overeenkomen met het volgende. Vergeet niet dat je ook de gebruikersnaam moet bewerken:
[Unit] Description=Remote desktop service (VNC) After=syslog.target network.target [Service] Type=simple User=johnny PAMName=login PIDFile=/home/johnny/.vnc/%H:%i.pid ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill :%i > /dev/null 2>&1 || :' ExecStart=/usr/bin/vncserver :%i ExecStop=/usr/bin/vncserver -kill :%i [Install] WantedBy=multi-user.target
Save and exit (CTRL+W).
Laad met onder onderstaande commando de servicedefinities opnieuw:
sudo systemctl daemon-reload
Start nu de VNC server met het onderstaande commando.
sudo systemctl start vncserver@1
Voer het onderstaande commando zodat de VNC server opstart wanneer de server wordt gestart.
sudo systemctl enable vncserver@1
Stap 6: Maak verbinding met Windows
Maak eerst een beveiligde tunnel aan via SSH voordat je verbinding maakt met de VNC server. Je kunt een tunnel maken door als volgt verbinding te maken met Putty:
Stel eerst de tunnel in via “Connection” -> “SSH” -> “Tunnels”. Vul in het veld “Source port” dit getal in “5901” en “x.x.x.x:5901” (vervang x.x.x.x met het IP-adres van jouw server) in het veld “Destination” (1) klik vervolegns op “Add” (2):
Klik vervolgens op “Connection” -> “Data” en vul jouw gebruikersnaam in (vervang johnny met de daadwerkelijke gebruikersnaam). Dit vul je in bij “Auto-login username”:
Klik nu op “Session” en vult het IP-adres van jouw server in bij het vakje “Host Name (of IP address)” (1), geef een omschrijving bij “Saved Sessions” (2) en klik vervolgens op “Save” (3).
Wanneer je verbinding wilt maken met VNC op jouw computer, dan raden we je aan om PuTTY te starten en te klikken op “x.x.x.x VNC” via het hoofdscherm (de lijst met opgeslagen sessies onder “Standaardinstellingen”). Je wordt gevraagd om jouw SSH-wachtwoord in te voeren, klik hierna op “Enter”. Je ziet als het goed is dat de PuTTY-prompt op jouw server wordt weergegeven:
Zorg ervoor dat je de PuTTY niet sluit, je kunt wel het scherm minimaliseren als je dit wilt. Het is nu tijd om de VNC client te starten. Start TightVNC en vul in het veld Remote host het volgende in: “localhost::5901”. Klik vervolgens op “Connect”.
You will be asked for a password, enter your VNC password and click on “OK”:
You are connected:
Als je de verbinding wilt verbreken dan kun je de VNC client sluiten. De SSH kun je sluiten door exit te typen in de PuTTY.
Stap 7: Maak verbinding met macOS en Linux
We gaan nu de SSH tunnel instellen. Open de terminal en maak verbinding met: ssh -L 5901:127.0.0.1:5901 [email protected]
Vervang johnny met jouw gebruikersnaam en vervang x.x.x.x met het IP-adres van jouw server. Nadat je op “Enter” hebt gedrukt, wordt je om je wachtwoord gevraagd, voer je SSH-wachtwoord in en druk op “Enter”, je wordt verbonden met SSH. Start vervolgens jouw VNC-client (we starten de native Screen Sharing-app van macOS) en voer “localhost: 5901” in als de host en klik vervolgens op “Connect”:
Je wordt om een wachtwoord gevraagd, typ jouw VNC-wachtwoord in, vink dit vakje aan als je wilt “Remember this password in my keychain”en klik op “Connect”:
Je bent nu verbonden!
Als je de verbinding wilt verbreken dan kun je de VNC client sluiten. De SSH kun je sluiten door exit te typen in de PuTTY.
Conclusie
Gefeliciteerd! Je hebt met succes VNC geïnstalleerd op Ubuntu 16.04.
Geef een reactie