L'une des méthodes les plus pratiques dont nous disposons aujourd'hui pour les tâches de support, de gestion ou de contrôle est la possibilité de se connecter à distance à l'ordinateur client car cela minimise les temps d'attente et nous permet d'avoir accès à toute la configuration et aux fichiers de n'importe où dans le monde.
L'une des applications les plus utiles pour cela est les connexions VNC, rappelez-vous que VNC (Virtual Network Computing) est un protocole serveur-client qui permet aux comptes d'utilisateurs de se connecter et de contrôler à distance un système, dans un autre emplacement, en utilisant les ressources fournies par le interface utilisateur graphique.
Parmi les différentes options au niveau VNC que nous avons pour les différents systèmes d'exploitation, tiger-vnc se distingue par ses performances, sa polyvalence et sa sécurité lors de l'établissement des connexions.
Qu'est-ce que tiger-vncTigerVNC est une implémentation du protocole VNC qui offre des performances élevées et une plate-forme neutre, développée en tant qu'application client/serveur qui permet aux utilisateurs de démarrer et d'interagir avec des applications graphiques sur des machines distantes.
TigerVNC fournit les niveaux de performances requis pour exécuter des applications 3D et vidéo, et s'efforce de maintenir une apparence commune et de réutiliser les composants, dans la mesure du possible, sur les différentes plates-formes qu'il prend en charge. TigerVNC fournit également des extensions pour les méthodes avancées de cryptage et d'authentification TLS pour la sécurité des données à transférer.
1. Installation et configuration du serveur VNC sur CentOS 7
Étape 1
Tigervnc-server est un programme qui exécute un serveur Xvnc qui lance des sessions parallèles de Gnome ou d'un autre environnement de bureau sur le bureau VNC. Une session utilisateur VNC initiée est accessible par le même utilisateur à partir de plusieurs clients VNC.
Pour installer le serveur TigerVNC sur CentOS 7, nous allons ouvrir une session de terminal et exécuter la commande suivante :
sudo yum installer tigervnc-serverNoterSi nous nous sommes connectés en tant qu'utilisateurs root, nous pouvons omettre la valeur sudo.
Lors de l'exécution de cette ligne, nous devons accepter le téléchargement et l'installation des packages tiger-vnc :
AGRANDIR
Étape 2
Une fois installé, nous verrons ce qui suit :
AGRANDIR
Étape 3
Une fois l'installation réussie, nous allons nous connecter avec l'utilisateur que nous voulons exécuter dans le programme VNC et exécuter la commande suivante dans le terminal pour configurer un mot de passe pour le serveur VNC : su - (Utilisateur) # (Si nous souhaitez configurer le serveur VNC pour qu'il s'exécute sous cet utilisateur directement à partir du terminal CLI sans changer les utilisateurs de l'interface graphique)
vncpasswd(Ici, nous devons entrer et confirmer le mot de passe)
AGRANDIR
2. Configuration Linux VNC
Étape 1
Maintenant, il sera nécessaire d'ajouter un fichier de configuration de service VNC pour l'utilisateur via un fichier de configuration de démon situé dans l'arborescence de répertoires systemd.
Pour copier le fichier modèle VNC, la commande suivante avec les privilèges root sera requise :
sudo cp /lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service
AGRANDIR
Étape 2
L'étape suivante consiste à éditer le fichier de configuration du modèle VNC qui se trouve dans le répertoire /etc/systemd/system/ et pour cela nous utiliserons l'éditeur souhaité :
nano /etc/systemd/system/vncserver@\:1.serviceNoterLa valeur 1 après le signe @ représente le numéro d'affichage (port 5900 + affichage). De plus, pour chaque serveur VNC démarré, le port 5900 sera incrémenté de 1.
Lors de l'exécution de cette ligne, nous verrons ce qui suit :
AGRANDIR
Étape 3
Là, il faudra changer la ligne USER au nom de notre utilisateur et ce seront les lignes
[Unité] Description = Service de bureau à distance (VNC) Après = syslog.target network.target [Service] Type = forking ExecStartPre = / bin / sh -c '/ usr / bin / vncserver -kill% i> / dev / null 2 > & 1 || : 'ExecStart = / sbin / runuser -l (Utilisateur) -c "/ usr / bin / vncserver% i -geometry 1280x1024" PIDFile = / home / (Utilisateur) /. Vnc /% H% i.pid ExecStop = / bin / sh -c '/ usr / bin / vncserver -kill% i> / dev / null 2> & 1 || : '[Installer] WantedBy = multi-user.target
AGRANDIR
Étape 4
Nous sauvegardons les modifications à l'aide de la combinaison de touches Carl + O et nous sortons de l'éditeur à l'aide de Carl + X. Nous devons maintenant redémarrer le service pour appliquer les modifications que nous avons exécutées et pour cela, nous utiliserons les lignes suivantes dans leur ordre :
systemctl daemon-reload systemctl start vncserver @: 1 systemctl status vncserver @: 1 systemctl enable vncserver @: 1
AGRANDIR
Là, nous pouvons voir que son statut est Actif.
Étape 5
Liste des ports d'écoutePour lister les ports ouverts dans l'état d'écoute du serveur VNC, nous allons exécuter la commande ss comme suit :
ss -tulpn | grep vnc
AGRANDIR
Comme une seule instance du serveur VNC a été démarrée, le premier port ouvert est 5901 / TCP.
Paramètres du pare-feuL'étape suivante consiste à permettre aux clients VNC externes de se connecter au serveur VNC sur CentOS 7 sans problème, et pour cela, nous devons nous assurer que les ports ouverts VNC sont activés via le pare-feu.
Dans le cas où une seule instance du serveur VNC est démarrée, il vous suffit d'ouvrir le premier port VNC attribué : 5901 / TCP en exécutant les commandes suivantes dans leur ordre :
firewall-cmd --add-port = 5901 / tcp firewall-cmd --add-port = 5901 / tcp -permanent
AGRANDIR
3. Connexion à l'ordinateur CentOS 7 à l'aide du client VNC
Étant un protocole indépendant de la plate-forme, les connexions VNC à interface graphique à distance peuvent être utilisées à partir de presque n'importe quel système d'exploitation avec une interface graphique et un client VNC spécialisé.
L'un des clients les plus VNC des systèmes d'exploitation Microsoft, compatible avec le serveur Linux TigerVNC, est RealVNC VNC que nous pouvons télécharger gratuitement sur le lien suivant :
Étape 1
Pour se connecter à distance au bureau CentOS 7 à partir d'un système d'exploitation Microsoft, dans ce cas Windows 10, via le protocole VNC, nous exécuterons le programme VNC Viewer, nous entrerons l'adresse IP et le numéro de port du serveur CentOS VNC du forme suivante :
adresse_IP : 5901
AGRANDIR
Étape 2
Nous appuyons sur Entrée et le message de sécurité suivant s'affichera :
Étape 3
Nous activons la case Ne plus afficher cet avertissement sur cet ordinateur et cliquez sur Continuer. Ensuite, il faudra ajouter le mot de passe d'accès respectif que nous avons configuré :
Étape 4
Cliquez sur OK et ainsi nous nous connecterons à distance au serveur CentOS 7 :
4. Configuration de plusieurs sessions VNC sur CentOS 7
Étape 1
S'il est nécessaire d'exécuter une nouvelle session VNC parallèle sous le même utilisateur, nous allons ouvrir une console de terminal dans CentOS 7, démarrer la session avec l'utilisateur qui souhaite démarrer la nouvelle session VNC et exécuter la commande suivante :
serveur vnc
AGRANDIR
Étape 2
Les nouvelles sessions VNC ouvriront les prochains ports VNC disponibles. Pour voir les ports disponibles pour cette nouvelle session, nous allons exécuter les opérations suivantes :
ss-tlpn | grep Xvnc
AGRANDIR
Maintenant, à partir du client VNC, nous pouvons utiliser n'importe lequel de ces ports. Pour arrêter les instances de serveur VNC démarrées avec les autorisations des utilisateurs enregistrés, nous exécuterons les commandes suivantes :
su - utilisateur killall XvncNous avons vu comment nous pouvons nous connecter à distance à CentOS 7 en utilisant VNC avec ses options d'accès et de sécurité.