Comment installer le serveur VNC sur Rocky Linux

Virtual Network Computing (VNC) est un protocole de partage de bureau qui te permet de contrôler un ordinateur à distance à l’aide du logiciel client VNC. VNC fonctionne sur les environnements GUI (Graphical User Interface), il transmet les mouvements de ta souris et les entrées du clavier sur le réseau en utilisant le protocole RFB (Remote Frame Buffer).

Communément, VNC est utilisé par les techniciens pour contrôler les bureaux des clients ou par quelqu’un qui a besoin d’accéder à son bureau au bureau depuis son domicile. VNC peut être utilisé de manière sécurisée via le réseau VPN ou en utilisant la connexion par tunnel SSH.

Dans ce tutoriel, tu vas configurer le serveur VNC avec TigerVNC sur un serveur Rocky Linux. Tu apprendras aussi à te connecter de manière sécurisée au serveur VNC via le tunneling SSH.

Conditions préalables

Pour réaliser ce tutoriel, tu auras besoin d’un serveur présentant les conditions suivantes :

  • Un serveur Rocky Linux récent – Tu peux utiliser Rocky Linux v8.5 ou v9.
  • Un utilisateur non root avec des privilèges root ou administrateur.
  • Un firewalld activé sur le serveur.

Installation de l’environnement de bureau

L’installation par défaut du serveur Rocky Linux est livrée sans interface graphique. Pour configurer le serveur VNC, tu dois installer l’environnement de bureau sur ton serveur Rocky Linux. Pour VNC Server, il est recommandé d’utiliser l’Environnement de bureau léger, qui te donne plus de performances et de rapidité.

Sur Rocky Linux, il existe plusieurs groupes de paquets qui fournissent un Environnement de bureau. Dans cet exemple, tu vas installer et configurer XFCE comme environnement de bureau pour le serveur VNC sur le système Rocky Linux.

Avant de commencer à installer les paquets, exécute la commande dnf suivante pour mettre à niveau les paquets installés vers la dernière version.

sudo dnf update

Maintenant, ajoute le dépôt EPEL à ton système Rocky Linux via la commande dnf ci-dessous. Saisis Y pour ajouter le dépôt EPEL et appuie sur ENTRÉE.

sudo dnf epel-release

Ensuite, tu vas installer l’environnement de bureau XFCE via le paquet de groupe« Xfce » fourni par le référentiel Rocky Linux. Tu installeras aussi le paquet de groupe« base-x » qui contient les paquets Xorg.

sudo dnf groupinstall "Xfce" "base-x"

Saisis Y lorsque tu es invité à confirmer l’installation et appuie sur ENTRÉE pour continuer.

Une fois que le bureau XFCE et base-x sont installés, active l’environnement graphique via la commande systemctl ci-dessous. Cela permettra d’activer l’environnement graphique lorsque le serveur sera démarré.

sudo systemctl set-default graphical

activer les graphiques

Ajouter un utilisateur VNC

Pour des raisons de sécurité, il est recommandé d’utiliser un utilisateur non root pour exécuter le serveur VNC. Tu devrais créer des utilisateurs dédiés qui exécuteront le serveur VNC. Si l’utilisateur a besoin des privilèges sudo, tu peux ajouter ton utilisateur au groupe « wheel ».

Exécute la commande suivante pour créer un nouvel utilisateur. Ensuite, configure le mot de passe de l’utilisateur. Dans cet exemple, tu vas créer un nouvel utilisateur« jane« , et assure-toi d’utiliser un mot de passe fort.

sudo useradd -m -s /bin/bash jane
sudo passwd jane

Une fois le nouvel utilisateur créé, exécute la commande suivante pour ajouter le nouvel utilisateur au groupe« wheel« . Cela permet au nouvel utilisateur d’exécuter la commande sudo et d’obtenir les privilèges de root.

sudo usermod -aG wheel jane

Une fois l’environnement de bureau XFCE installé et l’utilisateur VNC créé, tu vas ensuite lancer l’installation et les configurations de TigerVNC.

L'utilisateur configuré

Installation du serveur TigerVNC

Pour configurer un serveur VNC, tu dois installer le logiciel du serveur VNC. Dans cet exemple, tu vas installer et utiliser « TigerVNC Server », qui est disponible par défaut sur le référentiel Rocky Linux.

Tu vas également générer les configurations du serveur VNC, configurer l’environnement de bureau par défaut et ajouter l’utilisateur VNC à la liste des utilisateurs de TigerVNC Server.

Exécute la commande dnf ci-dessous pour installer le paquet « tigervnc-server » sur le système Rocky Linux. Saisis Y lorsque tu es invité à confirmer l’installation et appuie sur ENTER pour continuer.

sudo dnf install tigervnc-server

installe tigervnc

Une fois l’installation terminée, tu vas ensuite configurer le serveur VNC pour chaque utilisateur (utilisateurs VNC).

Connecte-toi à ton utilisateur à l’aide de la commande suivante.

su - jane

Maintenant, exécute la commande suivante pour initialiser le serveur VNC pour l’utilisateur« jane« . Pendant l’initialisation du serveur VNC, il te sera demandé de créer le mot de passe pour ton serveur VNC, alors saisis le mot de passe fort et répète. Et pour le« mot de passe de visualisation seulement« , entre« n » pour le désactiver.

vncserver

Cette commande va générer des configurations de serveur VNC qui seront situées dans« ~/.vnc« . Les configurations du serveur VNC comprennent le script xstartup, la configuration de l’environnement de bureau et les journaux du processus VNC.

Tu peux aussi voir que le nouveau processus VNC fonctionne avec un nom tel que« HOSTNAME:N » – ce qui signifie le nom d’hôte du système et le bureau/affichage :N en chiffre.

initialiser le serveur vnc

Vérifie la liste des processus VNC à l’aide de la commande vncserver ci-dessous. Tu devrais voir que le processus VNC de l’affichage « :1 » est en cours d’exécution.

vncserver -list

Maintenant, tu dois mettre fin au processus VNC actuel « :1 » pour configurer l’environnement de bureau XFCE. Exécute la commande vncserver ci-dessous pour arrêter le processus VNC de l’écran « :1« .

vncserver -kill :1

Une fois le processus VNC terminé, tu devrais obtenir un message de sortie tel que« Killing Xvnc process ID PID« .

tuer le processus du serveur vnc

Maintenant que tu as généré les configurations du serveur VNC, ouvre le fichier« ~/.vnc/config » à l’aide de l’éditeur nano.

nano ~/.vnc/config

Change la configuration par défaut comme ci-dessous. Dans cet exemple, tu utiliseras le XFCE comme environnement de bureau par défaut pour le serveur VNC, et lorsque l’utilisateur se connectera au serveur VNC, l’écran d’affichage par défaut sera« 1920×1200« . Le serveur VNC ne fonctionnera que sur localhost et permettra les bureaux partagés.

session=xfce
geometry=1920x1200
localhost
alwaysshared

Enregistre le fichier et quitte l’éditeur lorsque tu as terminé.

configure vnc server

Ensuite, appuie sur ‘Ctrl+d’ et retourne à la session de l’utilisateur root. Ensuite, ouvre le fichier‘/etc/tigervnc/vncserver.users‘ en utilisant l’éditeur nano.

sudo nano /etc/tigervnc/vncserver.users

Ajoute le numéro d’affichage et l’utilisateur VNC comme dans la configuration suivante. Dans cet exemple, l’écran « :1 » sera utilisé pour exécuter le serveur VNC pour l’utilisateur« jane« .

:1=jane

Sauvegarde le fichier et quitte l’éditeur quand tu as terminé.

Avec les configurations du serveur VNC générées, l’environnement de bureau par défaut configuré et l’utilisateur VNC ajouté à la liste des utilisateurs TigerVNC, tu es maintenant prêt à démarrer le serveur TigerVNC et à l’exécuter en tant que service.

Démarrage du serveur VNC

Le serveur TigerVNC fournit des fichiers de service systemd dynamiques, ce qui signifie que chaque écran ou utilisateur a son service systemd. Dans cet exemple, l’utilisateur« jane » exécute le serveur VNC avec l’affichage « :1« , le fichier de service serait donc« [email protected]:1.service ».

Maintenant, chaque fois que tu as ajouté un nouvel utilisateur VNC, tu dois recharger le gestionnaire systemd pour appliquer les nouvelles modifications. Tu peux recharger le gestionnaire systemd via la commande systemctl comme ci-dessous.

sudo systemctl daemon-reload

Ensuite, démarre et active le site« [email protected]:1.service » pour l’écran « :1 » à l’aide de la commande systemctl suivante. Cela permettra au processus de serveur VNC de l’affichage « :1 » de s’exécuter automatiquement au démarrage.

sudo systemctl start [email protected]:1.service
sudo systemctl enable [email protected]:1.service

démarrer activer le serveur vnc

Enfin, vérifie le « [email protected]:1.service » pour t’assurer que le service fonctionne.

sudo systemctl status [email protected]:1.service

Si« [email protected]:1.service » est en cours d’exécution, tu devrais voir une sortie similaire à la capture d’écran suivante.

Vérifier l'état du service vnc

À ce stade, tu as terminé l’installation et la configuration du serveur VNC via « Tiger-VNC » sur le serveur Rocky Linux. Tu as également configuré le XFCE comme environnement de bureau par défaut pour le serveur VNC. Ensuite, tu vas configurer le Firewalld pour sécuriser le serveur VNC.

Configuration de Firewalld

Sur le serveur Linux Rocky par défaut, le firewalld est installé et activé. Tu vas ajouter un nouveau service« vnc-server » au firewalld.

Ajoute le service « vnc-server » au firewalld via la commande firewall-cmd ci-dessous. Ensuite, recharge les règles du firewalld pour appliquer les nouvelles modifications.

sudo firewall-cmd --add-service=vnc-server --permanent
sudo firewall-cmd --reload

Enfin, vérifie la liste des règles firewalld à l’aide de la commande ci-dessous. Si tu vois le service« vnc-server » dans la liste des services, alors la règle de service est ajoutée et activée.

sudo firewall-cmd --list-services

configurer firewalld

Connexion au serveur VNC via un tunnel SSH sécurisé

Pour lancer le tunnel SSH, exécute la commande ssh ci-dessous. Dans cet exemple, tu vas créer un nouveau tunnel vers l’adresse IP du serveur VNC« 192.168.5.100 » avec l’utilisateur« jane » vers le localhost sur le port TCP« 5901« , qui est le même port que le serveur VNC.

ssh -L 5901:127.0.0.1:5901 -N -f -l jane 192.168.5.100

Saisis le mot de passe de ton utilisateur. Une fois que tu es connecté, tu peux te connecter au serveur VNC via localhost avec le port 5901.

tunneling ssh

Ouvre ton visualiseur VNC sur ton ordinateur local. Dans cet exemple, nous allons utiliser le « TigerVNC Viewer ».

Sur l’adresse « Serveur VNC », entre l’hôte comme localhost ou 127.0.0.1 avec le port 5901. Ensuite, clique sur« Connecter » pour continuer.

Connexion au serveur vnc

Maintenant, saisis le mot de passe du serveur VNC pour ton utilisateur et clique sur« OK« .

mot de passe serveur vnc

Si tes connexions sont réussies, tu verras le bureau XFCE sur ton écran dans la capture d’écran suivante.

Tu peux aussi ouvrir ton terminal et exécuter la commande suivante pour vérifier ton utilisateur.

id
whoami
sudo su

serveur vnc rocky linxu xfce

Vous aimerez aussi...