26.05.2023

Comment établir une connexion VNC sur SSH tunnel dans Ubuntu 20.04

Nous avons récemment couvert le processus de installer et configurer un serveur TightVNC sur Ubuntu 20.04. En plus de cela, le processus de mise en place d'un SSH tunnel pour une connexion VNC va maintenant être décrit. C'est parce que VNC lui-même n'est pas sécurisé. À l'aide d'un SSH tunnel corrige la situation.

Préparation

Dans le la première partie, nous avons ouvert firewall port 5901. La connexion sera maintenant dirigée via le SSH tunnel, vous devez donc fermer les ports ouverts pour VNC.

ufw refuse 5901/tcp

Vous devez également fermer toutes les sessions TightVNC en cours d'exécution.

serveur vnc -kill :1

Et démarrez une session en écoutant uniquement les connexions internes. Après avoir ouvert le SSH tunnel, ce sera notre connexion.

vncserver -localhost

Si vous avez configuré le service TightVNC, ouvrez sa configuration.

nano /etc/systemd/system/vncserver.service

Trouvez le ExécuterDébut parameter et faites-le ressembler à ceci:

ExecStart=/usr/bin/vncserver -localhost

Recharger systemd :

démon systemctl-recharger

Et démarrez (ou redémarrez) le service :

systemctl activer --now vncserver

Création d'un SSH Tunnel

La commande suivante doit être exécutée sur le cliordinateur à partir duquel vous vous connectez au serveur VNC. Il connecte le port 61000 sur la machine locale au port 5901 sur le serveur via un SSH tunnel.

ssh -L 61000:localhost:5901 -N -l nom d'utilisateur VNC_server_IP

Les options suivantes sont utilisées pour créer un tunnel :

  • -L - transmission des informations du port local 61000 au port distant 5901 via SSH tunnel;
  • -N - spécifie de transférer uniquement les ports, de ne pas exécuter la commande ;
  • -l - spécifie le nom d'utilisateur pour créer le tunnel.

remplacer Nom d'utilisateur ainsi que IP_serveur_VNC avec ton propre pèrerameters. Si vous vous connectez à l'aide d'un SSH clé, n'oubliez pas d'ajouter la -i parameter, comme d'habitude SSH connexion.

Utilisation de Putty pour créer un SSH tunnel

Utilisez une connexion normale parameters dans Putty. En plus de cela, vous devez ajouter quelques paramètres. A savoir, aller à Lien - SSH - Les tunnels, Entrer 61000 dans l' Port source ainsi que localhost: 5901 dans l' dentaire.

Click Ajouter et appliquer.

Connexion à un poste de travail distant

Le tunnel est maintenant créé. Pour vous connecter au poste de travail distant, utilisez le même client comme dans la première partie du tutoriel - n'importe quel VNC client que vous aimez. Entrer localhost: 61000 en tant que serveur VNC.