11.3. Visionneur VNC
vncviewer
est un programme qui affiche les interfaces utilisateur graphique et contrôle vncserver
à distance.
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
vncviewer
, veuillez exécuter la commande suivante en tant qu'utilisateur root
: ~]#
yum install tigervnc
11.3.2. Connexion au serveur 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.
- Sélectionnez l'onglet Divers.
- Sélectionnez le bouton.
- 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
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
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
--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
firewall-cmd --zone=zone --remove-port=number/protocol
.
--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
-via
. Cela créera un tunnel SSH
entre le serveur VNC et le client.
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
-localhost
dans le fichier systemd.service
, la ligne ExecStart :
ExecStart=/usr/sbin/runuser -l user -c "/usr/bin/vncserver -localhost %i"
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
.
SSH
, veuillez consulter le Chapitre 10, OpenSSH.