Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
11.3. Visionneur VNC
vncviewer
est un programme qui affiche les interfaces utilisateur graphique et contrôle vncserver
à distance.
Pour opérer
vncviewer
, il existe un menu contextuel qui contient des entrées permettant d'effectuer diverses actions, comme basculer en et hors du mode plein écran, ou quitter le visionneur. Alternativement, il est possible d'opérer vncviewer
via le terminal. Saisissez vncviewer -h
sur la ligne de commande pour répertorier les paramètres de vncviewer
.
11.3.1. Installer le visionneur VNC Viewer
Pour installer le client TigerVNC
vncviewer
, veuillez exécuter la commande suivante en tant qu'utilisateur root
: ~]#
yum install tigervnc
11.3.2. Connexion au serveur VNC
Une fois que le serveur VNC est configuré, vous pouvez vous y connecter à partir de n'importe quel visionneur VNC.
Procédure 11.3. Connexion à un serveur VNC à l'aide d'une interface utilisateur graphique
- Saisissez la commande
vncviewer
sans le moindre argument, et l'utilitaire VNC Viewer: Connection Details s'affichera. Il demandera alors sur quel serveur VNC la connexion doit être établie. - Si nécessaire, pour empêcher de déconnecter toute connexion VNC sur le même affichage, sélectionnez l'option permettant de partager le bureau, comme suit :
- Sélectionnez le bouton Options.
- Sélectionnez l'onglet Divers.
- Sélectionnez le bouton Partagé.
- Appuyez sur Valider pour retourner au menu principal.
- Veuillez saisir une adresse et un numéro d'affichage auquel vous connecter :
address:display_number
- Veuillez appuyer sur Connecter pour vous connecter à l'affichage du serveur VNC.
- Il vous sera demandé de saisir le mot de passe VNC. Ce sera le mot de passe VNC pour l'utilisateur correspondant au numéro d'affichage, à moins qu'un mot de passe VNC global par défaut n'ait été paramétré.Une fenêtre apparaît affichant le bureau du serveur VNC. Remarquez qu'il ne s'agit pas du bureau qu'un utilisateur normal peut voir, il s'agit d'un bureau Xvnc.
Procédure 11.4. Connexion à un serveur VNC à l'aide de l'interface de ligne de commande
- Veuillez saisir la commande
viewer
avec l'adresse et le numéro d'affichage comme arguments :vncviewer address:display_number
, où address est une adresseIP
ou un nom d'hôte. - Authentifiez-vous en saisissant le mot de passe VNC. Ce sera le mot de passe VNC de l'utilisateur correspondant au numéro d'affichage, à moins qu'un mot de passe VNC global par défaut n'ait été paramétré.
- Une fenêtre apparaît affichant le bureau du serveur VNC. Remarquez qu'il ne s'agit pas du bureau qu'un utilisateur normal peut voir, il s'agit du bureau Xvnc.
11.3.2.1. Configurer le pare-feu pour VNC
Lors de l'utilisation d'une connexion non chiffrée,
firewalld
peut bloquer la connexion. Pour autoriser firewalld
à transférer les paquets VNC, vous pouvez ouvrir des ports spécifiques au trafic TCP
. Lors de l'utilisation de l'option -via
, le trafic est redirigé sur SSH
, qui est activé par défaut dans firewalld
.
Note
Le port par défaut du serveur VNC est le port 5900. Pour atteindre le port par lequel un bureau distant est accessible, faîtes la somme du port par défaut et du numéro d'affichage assigné à l'utilisateur. Par exemple, pour le second affichage : 2 + 5900 = 5902.
Pour les affichages
0
à 3
, utilisez la prise en charge firewalld
du service VNC par l'option service
comme décrit ci-dessous. Remarquez que pour les numéros d'affichage supérieurs à 3
, les ports correspondants devront être spécifiquement ouverts, comme expliqué dans Procédure 11.6, « Ouvrir des ports sur firewalld ».
Procédure 11.5. Activer le service VNC sur firewalld
- Veuillez exécuter la commande suivante pour afficher les informations concernant les paramètres
firewalld
:~]$
firewall-cmd --list-all - Pour autoriser toutes les connexions VNC en provenance d'une adresse particulière, veuillez utiliser une commande comme suit :
~]#
Veuillez noter que ces changements ne persisteront pas lors d'un nouveau démarrage. Pour rendre les changements au parefeu permanents, répétez la commande an ajoutant l'optionfirewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.122.116" service name=vnc-server accept'
success--permanent
. Veuillez consulter le Guide de sécurité Red Hat Enterprise Linux 7 pour obtenir davantage d'informations sur l'utilisation de commandes en langage riche pour pare-feux. - Pour vérifier les paramètres ci-dessus, veuillez utiliser une commande comme suit :
~]#
firewall-cmd --list-all
public (default, active) interfaces: bond0 bond0.192 sources: services: dhcpv6-client ssh ports: masquerade: no forward-ports: icmp-blocks: rich rules: rule family="ipv4" source address="192.168.122.116" service name="vnc-server" accept
Pour ouvrir un port spécifique ou une gamme de ports, utilisez l'option
--add-port
sur l'outil de ligne de commande firewall-cmd
. Par exemple, l'affichage VNC 4
requiert que le port 5904
soit ouvert au trafic TCP
.
Procédure 11.6. Ouvrir des ports sur firewalld
- Pour ouvrir un port au trafic
TCP
dans la zone publique, veuillez exécuter la commande suivante en tant qu'utilisateurroot
:~]#
firewall-cmd --zone=public --add-port=5904/tcp
success - Pour afficher les ports actuellement ouverts à la zone publique, veuillez exécuter une commande comme suit :
~]#
firewall-cmd --zone=public --list-ports
5904/tcp
Un port peut être supprimé en utilisant la commande
firewall-cmd --zone=zone --remove-port=number/protocol
.
Veuillez noter que ces changements ne persisteront pas lors d'un nouveau démarrage. Pour rendre les changements au parefeu permanents, répétez la commande an ajoutant l'option
--permanent
. Pour obtenir davantage d'informations sur l'ouverture et la fermeture des ports de firewalld
, veuillez consulter le Guide de sécurité Red Hat Enterprise Linux 7 .
11.3.3. Connexion à un serveur VNC à l'aide de SSH
VNC est un protocole réseau en texte clair sans la moindre sécurité contre des attaques possibles sur les communications. Pour rendre ces communications sécurisées, vous pouvez chiffrer votre connexion serveur-client en utilisant l'option
-via
. Cela créera un tunnel SSH
entre le serveur VNC et le client.
Le format de la commande pour chiffrer une connecion serveur-client VNC est comme suit :
vncviewer -via user@host:display_number
Exemple 11.1. En utilisant l'option -via
- Pour se connecter à un serveur VNC en utilisant
SSH
, veuillez saisir une commande comme suit :~]$
vncviewer -via USER_2@192.168.2.101:3
- Lorsque cela vous est demandé, saisissez le mot de passe, et confirmez en appuyant sur Entrée.
- Une fenêtre avec un bureau distant s'affichera sur votre écran.
Restreindre l'accès VNC
Si vous souhaitez uniquement avoir des connexions chiffrées, il est possible d'empêcher les connexions non chiffrées en utilisant l'option
-localhost
dans le fichier systemd.service
, la ligne ExecStart :
ExecStart=/usr/sbin/runuser -l user -c "/usr/bin/vncserver -localhost %i"
Cela empêchera
vncserver
d'accepter toute connexion, sauf les connexions de l'hôte local et les connexions transférées par port ayant été envoyées à l'aide de SSH
, conséquemment à l'utilisation de l'option -via
.
Pour obtenir davantage d'informations sur l'utilisation de
SSH
, veuillez consulter le Chapitre 10, OpenSSH.