GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer et configurer VNC sur Ubuntu 20.04

Virtual Network Computing (VNC) est un système de partage de bureau graphique qui vous permet d'utiliser votre clavier et votre souris pour contrôler un autre ordinateur à distance. Il s'agit d'une alternative open source au protocole de bureau à distance Microsoft (RDP).

Cet article explique comment installer et configurer un serveur VNC sur Ubuntu 20.04. Nous vous montrerons également comment vous connecter en toute sécurité au serveur VNC via un tunnel SSH.

Installation de l'environnement de bureau #

Les serveurs Ubuntu sont gérés à partir de la ligne de commande et n'ont pas d'environnement de bureau installé par défaut. Si vous exécutez la version de bureau d'Ubuntu, ignorez cette étape.

Il existe différents environnements de bureau disponibles dans les référentiels Ubuntu. Une option consiste à installer Gnome, qui est l'environnement de bureau par défaut dans Ubuntu 20.04. Une autre option consiste à installer Xfce. Il s'agit d'un environnement de bureau rapide, stable et léger, ce qui le rend idéal pour une utilisation sur un serveur distant.

Dans ce guide, nous allons installer Xfce. Saisissez les commandes suivantes en tant qu'utilisateur disposant des privilèges sudo :

sudo apt updatesudo apt install xfce4 xfce4-goodies

Selon votre système, le téléchargement et l'installation des packages Xfce peuvent prendre un certain temps.

Installation du serveur VNC #

Il existe plusieurs serveurs VNC différents disponibles dans les référentiels Ubuntu, tels que TightVNC, TigerVNC et x11vnc. Chaque serveur VNC présente des forces et des faiblesses différentes en termes de vitesse et de sécurité.

Nous allons installer TigerVNC. Il s'agit d'un serveur VNC hautes performances activement maintenu. Tapez la commande suivante pour installer le package :

sudo apt install tigervnc-standalone-server

Configuration de l'accès VNC #

Une fois le serveur VNC installé, l'étape suivante consiste à créer la configuration utilisateur initiale et à définir le mot de passe.

Définissez le mot de passe de l'utilisateur à l'aide de vncpasswd commande. N'utilisez pas sudo lors de l'exécution de la commande ci-dessous :

vncpasswd

Vous serez invité à entrer et à confirmer le mot de passe et à le définir comme mot de passe en lecture seule. Si vous choisissez de configurer un mot de passe en lecture seule, l'utilisateur ne pourra pas interagir avec l'instance VNC avec la souris et le clavier.

Password:
Verify:
Would you like to enter a view-only password (y/n)? n

Le fichier de mot de passe est stocké dans le ~/.vnc répertoire, qui est créé s'il n'est pas présent.

Ensuite, nous devons configurer TigerVNC pour utiliser Xfce. Pour cela, créez le fichier suivant :

~/.vnc/xstartup
nano ~/.vnc/xstartup
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4 

Enregistrez et fermez le fichier. Les commandes ci-dessus sont automatiquement exécutées chaque fois que vous démarrez ou redémarrez le serveur TigerVNC.

Le ~/.vnc/xstartup Le fichier doit également avoir des autorisations d'exécution. Utilisez le chmod commande pour définir les autorisations de fichier :

chmod u+x ~/.vnc/xstartup

Si vous devez transmettre des options supplémentaires au serveur VNC, créez un fichier nommé config et ajoutez une option par ligne. Voici un exemple :

~/.vnc/config
geometry=1920x1080
dpi=96

Vous pouvez maintenant démarrer le serveur VNC en utilisant le vncserver commande :

vncserver
New 'server2.linuxize.com:1 (linuxize)' desktop at :1 on machine server2.linuxize.com

Starting applications specified in /home/linuxize/.vnc/xstartup
Log file is /home/linuxize/.vnc/server2.linuxize.com:1.log

Use xtigervncviewer -SecurityTypes VncAuth -passwd /home/linuxize/.vnc/passwd :1 to connect to the VNC server.

Notez le :1 après le nom d'hôte dans la sortie ci-dessus. Ceci indique le numéro du port d'affichage sur lequel le serveur vnc s'exécute. Dans cet exemple, le serveur tourne sur le port TCP 5901 (5900+1). Si vous créez une seconde instance avec vncserver il s'exécutera sur le prochain port libre, c'est-à-dire :2 , ce qui signifie que le serveur tourne sur le port 5902 (5900+2).

Ce qu'il est important de retenir, c'est que lorsque vous travaillez avec des serveurs VNC, :X est un port d'affichage qui fait référence à 5900+X .

Vous pouvez obtenir une liste de toutes les sessions VNC en cours d'exécution en tapant :

vncserver -list
TigerVNC server sessions:

X DISPLAY #	RFB PORT #	PROCESS ID
:1		      5901		    5710

Avant de passer à l'étape suivante, arrêtez l'instance VNC à l'aide de vncserver commande avec un -kill option et le numéro de serveur comme argument. Dans cet exemple, le serveur s'exécute sur le port 5901 (:1 ), nous allons donc l'arrêter avec :

vncserver -kill :1
Killing Xtigervnc process ID 5710... success!

Création d'un fichier d'unité Systemd #

Au lieu de démarrer manuellement la session VNC, créons un fichier d'unité systemd afin que vous démarriez, arrêtiez et redémarriez le service VNC selon vos besoins.

Ouvrez votre éditeur de texte et copiez-collez-y la configuration suivante. Assurez-vous de changer le nom d'utilisateur à la ligne 7 pour qu'il corresponde à votre nom d'utilisateur.

sudo nano /etc/systemd/system/[email protected]
/etc/systemd/system/[email protected]
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=simple
User=linuxize
PAMName=login
PIDFile=/home/%u/.vnc/%H%i.pid
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill :%i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver :%i -geometry 1440x900 -alwaysshared -fg
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target

Enregistrez et fermez le fichier.

Avertissez systemd qu'un nouveau fichier d'unité est créé :

sudo systemctl daemon-reload

Activez le service pour qu'il démarre au démarrage :

sudo systemctl enable [email protected]

Le nombre 1 après le @ Le signe définit le port d'affichage sur lequel le service VNC s'exécutera. Cela signifie que le serveur VNC écoutera sur le port 5901 , comme nous l'avons vu dans la section précédente.

Démarrez le service VNC en exécutant :

sudo systemctl start [email protected]

Vérifiez que le service a bien démarré avec :

sudo systemctl status [email protected]
[email protected] - Remote desktop service (VNC)
     Loaded: loaded (/etc/systemd/system/[email protected]; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2021-03-26 20:00:59 UTC; 3s ago
...

Connexion au serveur VNC #

VNC n'est pas un protocole crypté et peut faire l'objet d'un reniflage de paquets. L'approche recommandée consiste à créer un tunnel SSH et à transférer en toute sécurité le trafic de votre ordinateur local sur le port 5901 vers le serveur sur le même port.

Configurer le tunnel SSH sur Linux et macOS #

Si vous exécutez Linux, macOS ou tout autre système d'exploitation basé sur Unix sur votre machine, vous pouvez facilement créer un tunnel SSH avec la commande suivante :

ssh -L 5901:127.0.0.1:5901 -N -f -l vagrant 192.168.33.10

Vous serez invité à entrer le mot de passe de l'utilisateur.

Assurez-vous de remplacer username et server_ip_address avec votre nom d'utilisateur et l'adresse IP de votre serveur.

Configurer le tunnel SSH sous Windows #

Si vous exécutez Windows, vous pouvez configurer le tunnel SSH à l'aide du client PuTTY SSH.

Ouvrez Putty et entrez l'adresse IP de votre serveur dans le champ Host name or IP address champ.

Sous la Connection menu, boîte, développez SSH , et sélectionnez Tunnels . Entrez le port du serveur VNC (5901 ) dans le Source Port et saisissez server_ip_address:5901 dans la Destination champ et cliquez sur le Add bouton comme indiqué dans l'image ci-dessous :

Revenir à la Session pour enregistrer les paramètres, vous n'avez donc pas besoin de les saisir à chaque fois. Sur le serveur distant, sélectionnez la session enregistrée et cliquez sur Open bouton.

Connexion à l'aide de Vncviewer #

Maintenant que le tunnel SSH est créé, il est temps d'ouvrir votre Vncviewer et de vous connecter au serveur VNC à localhost:5901 .

Vous pouvez utiliser n'importe quel visualiseur VNC tel que TigerVNC, TightVNC, RealVNC, UltraVNC, Vinagre et VNC Viewer pour Google Chrome.

Nous utiliserons TigerVNC. Ouvrez la visionneuse, entrez localhost:5901 , et cliquez sur Connect bouton.

Entrez votre mot de passe utilisateur lorsque vous y êtes invité et vous devriez voir le bureau Xfce par défaut. Cela ressemblera à ceci :

Vous pouvez commencer à interagir avec le bureau XFCE distant depuis votre ordinateur local à l'aide de votre clavier et de votre souris.


Ubuntu
  1. Comment installer et configurer un serveur NFS sur Ubuntu 20.04

  2. Comment installer et configurer VNC sur Ubuntu 18.04

  3. Comment installer et configurer un serveur NFS sur Ubuntu 18.04

  4. Comment installer et configurer le serveur DHCP sur Ubuntu 20.04

  5. Comment installer et configurer le serveur Redis dans Ubuntu

Comment installer et configurer le serveur VNC sur Ubuntu 20.04 LTS

Comment installer et configurer le serveur OpenLDAP sur Ubuntu 16.04

Comment installer et configurer le serveur VNC sur Ubuntu 20.04

Comment installer et configurer VNC sur Ubuntu Server 20.04

Comment installer et configurer VNC sur Ubuntu 20.04 ?

Comment installer le serveur VNC sur Ubuntu 14.04