VNC (Informatique en réseau virtuel ) est un progiciel qui sert de support de connexion entre un client utilisateur et un ordinateur distant. Il crée une session avec le serveur distant, ce qui nous permet de traiter le serveur distant comme s'il s'agissait de notre machine, d'accéder à l'interface graphique du serveur distant et d'interagir avec lui à l'aide de la souris et du clavier en tant qu'utilisateur normal.
Il s'agit d'un outil très pratique pour les utilisateurs qui ne sont pas à l'aise avec l'utilisation du terminal et qui présente les avantages d'être très facile à utiliser et disponible sur presque tous les systèmes d'exploitation clients, avec une configuration minimale.
Voyons comment nous pourrions nous connecter à notre serveur distant Ubuntu 18.04 à partir de notre client, qui peut être n'importe quoi de Windows, MacOS ou Linux.
REMARQUE :Nous ne sommes pas va regarder la configuration du Client TightVNC puisqu'il s'agit d'une configuration très simple sur le site Web de TightVNC. Ce tutoriel vise donc à configurer un serveur VNC sur Ubuntu 18.04 et à s'y connecter depuis un client distant.
Installer un environnement de bureau sur le serveur Ubuntu
Par défaut, un serveur Ubuntu 18.04 n'est pas livré avec un environnement de bureau graphique ou un serveur VNC installé, nous devons donc l'installer en premier.
Il existe différents types de gestionnaires de bureau disponibles, comme KDE, Gnome, etc. Mais nous nous en tiendrons à l'environnement de bureau Xfce minimal.
Sur le serveur Ubuntu, commencez par mettre à jour les packages critiques du système.
sudo apt update
Maintenant, installez le Xfce DE, en utilisant
sudo apt install xfce4 xfce4-goodies
Nous sommes prêts à installer le serveur TigerVNC et ses dépendances.
sudo apt install tigervnc-standalone-server tigervnc-common
Maintenant que nous avons les exigences de base prêtes, configurons-le maintenant pour qu'il fonctionne correctement.
Créer des fichiers de configuration
Pour terminer la configuration initiale du serveur VNC après l'installation, utilisez le vncserver
pour configurer un mot de passe sécurisé et créer les fichiers de configuration initiaux.
vncserver
Cela nous invitera à créer un nouveau mot de passe pour un accès sécurisé au serveur à distance.
REMARQUE :Le mot de passe DOIT être entre 6-8 Longs caractères. Tout ce qui dépasse ce nombre sera automatiquement tronqué et réduit à 8 caractères, c'est donc très important de choisir un mot de passe correct dans les 8 caractères.
Après avoir configuré votre mot de passe, cela crée maintenant des fichiers de configuration par défaut pour notre serveur Ubuntu TigerVNC.
Configurer le serveur VNC
Lorsque le VNCServer démarre, il peut avoir besoin d'exécuter certaines commandes, telles que la connexion à un environnement graphique. Comme cela n'est pas fourni automatiquement, nous devons modifier les fichiers de configuration appropriés.
Mais avant cela, terminons d'abord notre session VNC existante, puisque nous avons créé notre mot de passe maintenant.
Quand VNC est d'abord configuré, il lance une instance de serveur par défaut sur le port 5901
. C'est le port que VNC utilise pour afficher l'écran du serveur au client connecté. En fonction du numéro de connexion, un suffixe de référence approprié lui est associé. Par exemple, :1
, :2
, désigne les première et deuxième instances de connexion du serveur VNC sur le port 5901
. Ainsi, nous pouvons directement nous connecter ou fermer des instances de VNC Server en utilisant ce nombre de références.
Par exemple, dans notre système, puisque nous avons exécuté vncserver
, une instance est maintenant en cours d'exécution avec un nombre de références de :1
. Si nous souhaitons tuer ce processus, nous tapons simplement :
vncserver -kill :1
Pour tuer toutes ces instances, nous utilisons le caractère générique *
:
vncserver -kill :*
Vous obtiendrez une sortie comme celle-ci :
root@ubuntu:~# vncserver -kill :1 Killing Xtigervnc process ID 6268... success!
Nous devons créer un script de démarrage pour exécuter automatiquement notre environnement de bureau Xfce4, afin que nous puissions nous connecter au serveur à distance à partir d'un client même après le redémarrage du serveur, alors faisons-le maintenant.
Créer un script de démarrage
Les commandes de démarrage se trouvent dans un fichier de configuration appelé xstartup dans le $HOME/.vnc répertoire pour n'importe quel utilisateur (où $HOME est la variable d'environnement de votre répertoire personnel)
Si ce fichier n'existe pas, ce n'est pas un problème. Nous allons créer un nouveau fichier.
touch $HOME/.vnc/xstartup
Modifiez maintenant ce fichier à l'aide d'un éditeur de texte et ajoutez-y le script ci-dessous :
vi $HOME/.vnc/xstartup
#!/bin/sh xrdb $HOME/.Xresources startxfce4 &
Cela examine les Xresources
de l'utilisateur fichier et démarre l'environnement de bureau Xfce4 en arrière-plan.
Quittez l'éditeur après avoir enregistré les modifications.
Nous devons également rendre ce script exécutable, afin que notre serveur puisse l'exécuter. Faisons cela en utilisant chmod .
sudo chmod +x ~/.vnc/xstartup
Maintenant, redémarrons notre serveur VNC :
vncserver
Vous obtiendrez une sortie similaire à celle-ci, indiquant que nous avons chargé le DE à partir de notre script de démarrage.
Connectons-nous maintenant au serveur depuis notre ordinateur client local.
Se connecter au serveur VNC
Étant donné que VNC n'utilise aucun protocole sécurisé pour établir la connexion, nous devons en configurer un manuellement, par exemple, ssh .
Créons un tunnel SSH pour se connecter en toute sécurité au serveur, puis disons au client VNC d'utiliser également le tunnel SSH pour établir la connexion, plutôt qu'une connexion directe non sécurisée.
Créer le tunnel SSH
Nous allons établir une connexion SSH sur notre machine cliente locale qui transmet au localhost
connexion pour VNC.
Nous utiliserons le terminal pour cela (si vous utilisez Windows, assurez-vous d'utiliser PuTTY)
ssh -L 5901:127.0.0.1:5901 SERVER_USER_NAME@SERVER_IP
Nous utilisons ssh
pour se lier au port 5901 de la connexion distante au port 5901 sur la machine cliente. Le -L
l'option le fait, en utilisant une redirection de port vers localhost (127.0.0.1)
Par conséquent, nous pouvons nous connecter au serveur en établissant une connexion depuis localhost :5901 .
Une fois que nous sommes connectés au ssh
tunnel, laissons cela fonctionner et laissez cette session de terminal tranquille.
Connectez-vous maintenant au serveur VNC à l'aide de notre client VNC.
Pour moi, j'utilise vncviewer
sous Linux pour se connecter au Tunnel SSH sécurisé et enfin contrôler notre serveur distant !
Entrez le mot de passe VNCServer que vous avez utilisé pour le configurer, et vous êtes prêt à partir !
Une fois connecté, vous verrez le bureau Xfce par défaut. Cela devrait ressembler à ceci :
Pour arrêter la session, appuyez sur Ctrl + C ou fermez la fenêtre.
REMARQUE :La fermeture de la session de tunnel SSH fermera également votre connexion VNC.
Ainsi, nous avons réussi à connecter notre client distant au serveur Ubuntu en utilisant TigerVNC
.
Conclusion
Dans ce didacticiel, nous vous avons montré comment configurer une connexion VNC à l'aide de TigerVNC sur le serveur Ubuntu 18.04.