GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Serveur VNC sur Ubuntu 20.04 Focal Fossa Linux

VNC est un système qui vous permet de contrôler à distance un autre ordinateur. Il vous permet de relayer les entrées de votre souris et de votre clavier comme si vous étiez physiquement assis devant le système, alors qu'en fait vous pourriez être à l'autre bout du monde.

Dans ce guide, nous passerons en revue les étapes de configuration d'un serveur VNC sur votre système Ubuntu 20.04. Lorsque nous aurons terminé, vous pourrez accéder à distance à votre système depuis n'importe où, à condition que votre système client et le serveur VNC disposent d'une connexion Internet.

Dans ce didacticiel, vous apprendrez :

  • Comment installer et configurer le serveur TightVNC
  • Comment installer et configurer le gestionnaire de bureau XFCE
  • Comment se connecter à notre serveur VNC avec TightVNC Viewer
  • Comment tunnelliser les connexions VNC via SSH
  • Comment gérer plusieurs bureaux VNC avec un script Systemd

Connexion à un serveur VNC
Configuration logicielle requise et conventions de ligne de commande Linux
Catégorie Exigences, conventions ou version du logiciel utilisée
Système A installé ou mis à jour Ubuntu 20.04 Focal Fossa
Logiciel Serveur TightVNC, gestionnaire de bureau XFCE, visualiseur TightVNC
Autre Accès privilégié à votre système Linux en tant que root ou via le sudo commande.
Conventions # - nécessite que les commandes linux données soient exécutées avec les privilèges root soit directement en tant qu'utilisateur root, soit en utilisant sudo commande
$ – nécessite que les commandes linux données soient exécutées en tant qu'utilisateur normal non privilégié

Installer le serveur VNC

Nous devrons d'abord installer quelques packages. Il existe plusieurs options pour le logiciel de serveur VNC, mais nous utiliserons TightVNC Server pour ce didacticiel. En plus de VNC, nous avons également besoin d'un bureau graphique. XFCE est un bon choix, c'est donc ce que nous allons couvrir ici.

  1. Commencez par ouvrir un terminal et saisissez la commande suivante pour installer le serveur TightVNC et les fichiers principaux du gestionnaire de bureau XFCE :
    $ sudo apt install tightvncserver XFCE4 XFCE4-goodies
    
  2. Une fois l'installation des packages terminée, nous devons configurer un nom d'utilisateur et un mot de passe qui seront utilisés pour se connecter au serveur VNC par un client. Créez un mot de passe avec cette commande :
    $ vncpasswd
    
  3. Ensuite, configurons VNC pour démarrer l'environnement de bureau XFCE lorsqu'un client se connecte. Utilisez nano ou l'éditeur de texte de votre choix (ex. Atom, Sublime) pour créer le fichier suivant :
    $ nano ~/.vnc/xstartup
    
  4. Insérez les quelques lignes suivantes, puis enregistrez vos modifications et quittez le fichier :
    #!/bin/sh
    unset SESSION_MANAGER
    unset DBUS_SESSION_BUS_ADDRESS
    startxfce4 &
    

    fichier de configuration xstartup
  5. Une fois ces modifications apportées, modifiez les autorisations du fichier pour le rendre exécutable :
    $ chmod +x ~/.vnc/xstartup
    

Démarrer le serveur VNC

VNC s'exécute en tant que service sur votre système. Pour que les clients se connectent, le serveur VNC doit évidemment être en cours d'exécution et écouter les tentatives de connexion entrantes. Une fois notre configuration terminée, nous sommes prêts à démarrer le serveur VNC avec la commande suivante :

$ vncserver

Si votre terminal renvoie une sortie comme dans la capture d'écran ci-dessous, votre serveur VNC fonctionne correctement.

Lancer le serveur VNC

VNC utilisera un nouveau port pour chaque poste de travail distant créé. À ce stade, votre système devrait écouter sur le port 5901 pour les connexions VNC entrantes. Vous pouvez le voir par vous-même avec le ss -ltn commande :

$ ss -ltn

VNC en écoute sur le port 5901

Si le pare-feu UFW est activé, vous devrez ouvrir le port 5901 afin qu'il ne bloque pas les connexions VNC entrantes :

$ sudo ufw allow from any to any port 5901 proto tcp
Rule added
Rule added (v6)

Se connecter au serveur VNC

Il existe de nombreux choix de clients VNC et chacun d'entre eux devrait être capable de se connecter à votre serveur VNC nouvellement lancé. Si vous n'avez pas encore de client préféré à utiliser, suivez-nous pendant que nous couvrons les instructions de connexion au serveur VNC avec TightVNC Viewer.

  1. Commencez par installer xtightvncviewer package sur votre système client Ubuntu :
    $ sudo apt install xtightvncviewer
    
  2. Une fois le client VNC installé, vous pouvez utiliser le vncviewer , suivi du nom d'hôte ou de l'adresse IP du serveur VNC, afin de s'y connecter.
    $ vncviewer linuxconfig.org:1
    

    Entrez votre mot de passe que nous avons créé précédemment lors de la configuration de VNC Server. Si tout s'est bien passé, une session de bureau XFCE s'exécutera sur le système Ubuntu du serveur VNC distant :

    Connectez-vous au serveur VNC

Tunnel VNC via SSH

Pour plus de sécurité, vous pouvez tunneliser la connexion VNC via SSH sur votre serveur VNC. Bien sûr, cela suppose que vous disposez d'un accès SSH sur le serveur VNC. Si vous souhaitez bénéficier d'une sécurité supplémentaire, suivez ces étapes :

  1. Si vous n'avez pas déjà installé SSH, c'est une condition préalable assez évidente pour que cela fonctionne :
    $ sudo apt install ssh
    
  2. Ensuite, créez un tunnel SSH sur un port local 5901 menant à un port distant 5901 sur votre serveur VNC. Dans la commande suivante, assurez-vous de remplacer user1 et linuxconfig avec le nom d'utilisateur et le nom d'hôte de votre serveur VNC :
    $ ssh -L 5901:127.0.0.1:5901 -N -f -l user1 linuxconfig
    

    La commande ci-dessus ouvrira un port local 5901 sur une interface réseau de bouclage localhost 127.0.0.1 :

    $ ss -ltn
    State       Recv-Q Send-Q Local Address:Port               Peer Address:Port
    LISTEN      0      128       0.0.0.0:22                    0.0.0.0:*
    LISTEN      0      5       127.0.0.1:631                   0.0.0.0:*
    LISTEN      0      128     127.0.0.1:6010                  0.0.0.0:*
    LISTEN      0      128     127.0.0.1:6011                  0.0.0.0:*
    LISTEN      0      128       0.0.0.0:38299                 0.0.0.0:*
    LISTEN      0      128     127.0.0.1:5901                  0.0.0.0:*
    
  3. Ensuite, utilisez le port local 5901 pour se connecter à un serveur VNC distant via le tunnel SSH :
    $ vncviewer localhost:1
    

Script de démarrage du système de serveur VNC

Pendant que cette configuration fonctionne, vous pouvez avoir un scénario dans lequel vous devez gérer plusieurs sessions de bureau VNC. Dans ce cas, la création d'un script de démarrage systemd peut faciliter cela.

Utilisez nano ou un autre éditeur de texte pour créer le fichier suivant :

$ sudo nano /etc/systemd/system/[email protected]

Une fois le fichier ouvert, insérez les lignes suivantes en remplaçant le user1 username avec le nom d'utilisateur de votre utilisateur VNC sur la ligne 7 et la ligne 10. Éventuellement, modifiez les paramètres de résolution d'écran et appliquez d'autres vncserver options ou arguments :

[Unit]
Description=Systemd VNC server startup script for Ubuntu 20.04
After=syslog.target network.target

[Service]
Type=forking
User=user1
ExecStartPre=-/usr/bin/vncserver -kill :%i &> /dev/null
ExecStart=/usr/bin/vncserver -depth 24 -geometry 800x600 :%i
PIDFile=/home/user1/.vnc/%H:%i.pid
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target

fichier de démarrage systemd

Ensuite, rechargez Systemd pour que les modifications prennent effet :

$ sudo systemctl daemon-reload

Pour démarrer le bureau VNC 1 , saisissez :

$ sudo service vncserver@1 start

Pour arrêter le bureau VNC 1 , exécutez :

$ sudo service vncserver@1 stop

La commande linux suivante activera le bureau VNC 1 pour démarrer après le redémarrage :

$ sudo systemctl enable vncserver@1

Pour démarrer le bureau VNC 2 , saisissez :

$ sudo service vncserver@2 start

Et ainsi de suite…

Conclusion

Dans ce guide, nous avons vu comment installer et configurer TightVNC Server sur Ubuntu 20.04 Focal Fossa. Nous avons installé le gestionnaire de bureau XFCE pour que nos clients VNC l'utilisent lorsqu'ils se connectent.

Nous avons également appris à utiliser TightVNC Viewer pour se connecter à distance à notre serveur VNC. En plus de tout cela, nous avons également expliqué comment tunnelliser les connexions VNC via SSH pour plus de sécurité et utiliser un script de démarrage Systemd personnalisé pour gérer efficacement plusieurs connexions de bureau VNC.


Ubuntu
  1. Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux

  2. Comment configurer le serveur FTP sur Ubuntu 20.04 Focal Fossa Linux

  3. Mot de passe root par défaut sur Ubuntu 20.04 Focal Fossa Linux

  4. Comment configurer le serveur SFTP sur Ubuntu 20.04 Focal Fossa Linux

  5. Comment installer LaTex sur Ubuntu 20.04 Focal Fossa Linux

Désactiver les mises à jour automatiques sur Ubuntu 20.04 Focal Fossa Linux

Comment installer Yarn sur Ubuntu 20.04 Focal Fossa Linux

Comment installer Go sur Ubuntu 20.04 Focal Fossa Linux

Installer VirtualBox sur Ubuntu 20.04 Focal Fossa Linux

Installer Lutris sur Ubuntu 20.04 Focal Fossa Linux

Installer Python 2 sur Ubuntu 20.04 Focal Fossa Linux