Outils pour utilisateurs

Outils du site


doc:formations:hebergement:serveur:vnc

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
doc:formations:hebergement:serveur:vnc [2024/03/05 16:48] – [Serveur VNC] jeremiedoc:formations:hebergement:serveur:vnc [2024/07/24 09:40] (Version actuelle) – [Sécurisation par tunnel SSH] jeremie
Ligne 17: Ligne 17:
  
 ==== Serveur VNC==== ==== Serveur VNC====
 +
 +=== Serveur X déjà lancé (session utilisateur ouverte) ===
  
 Si le serveur X est déjà lancé sur la machine distante, on peut l'emprunter simplement avec: Si le serveur X est déjà lancé sur la machine distante, on peut l'emprunter simplement avec:
Ligne 22: Ligne 24:
   sudo apt install tigervnc-scraping-server   sudo apt install tigervnc-scraping-server
   vncpasswd  # pour définir le mot de passe d'acces à l'interface   vncpasswd  # pour définir le mot de passe d'acces à l'interface
-  x0vncserver -display $DISPLAY -rfbauth .vnc/passwd   # $DISPLAY vaut généralement :0 +  x0vncserver -display "$DISPLAY-rfbauth .vnc/passwd 
 + 
 +Nb: ''$DISPLAY'' vaut généralement '':0'' 
 + 
 +:!: si vous voulez donner un accès distant risqué, utilisez par exemple 
 + 
 +  X0tigervnc -display :0 -localhost=0 -desktop :0 -rfbport 5900 -PasswordFile ~/.vnc/passwd & 
 + 
 +=== Serveur X non lancé (aucune session utilisateur ouverte) ===
  
-Sinon il faut créer un serveur X, par exemple avec:+Il faut créer un serveur X, par exemple avec:
  
   sudo apt install x11vnc xvfb fluxbox  # uniquement si vous n'avez pas déjà X installé   sudo apt install x11vnc xvfb fluxbox  # uniquement si vous n'avez pas déjà X installé
-  sudo apt install tigervnc-standalone-server tigervnc-xorg-extension+  sudo apt install tigervnc-standalone-server tigervnc-xorg-extension tigervnc-tools
   vncpasswd  # pour définir le mot de passe d'acces à l'interface   vncpasswd  # pour définir le mot de passe d'acces à l'interface
   vncserver -depth 24 -geometry 1400x1050   vncserver -depth 24 -geometry 1400x1050
Ligne 33: Ligne 43:
   # Le ''geometry'' optionnel spécifie la taille de l'écran virtuel   # Le ''geometry'' optionnel spécifie la taille de l'écran virtuel
  
 +=== Diagnostic et fermeture ===
  
 Nb: Utilisez ''ss -ant'' pour lister les services ouverts. Nb: Utilisez ''ss -ant'' pour lister les services ouverts.
  
 Pour arrêter le service VNC il faut avoir identifié la bonne session X avec: Pour arrêter le service VNC il faut avoir identifié la bonne session X avec:
-  vnclist             # ou bien x0vncserver -list+  vncserver -list     # ou bien x0vncserver -list
   vncserver -kill :1  # ou bien x0vncserver -kill :1   vncserver -kill :1  # ou bien x0vncserver -kill :1
  
Ligne 57: Ligne 68:
 Une solution simple est d'utiliser un tunnel ssh entre le poste et le serveur qui va router un port local vers le port VNC sur le serveur (spécifiez le bon "user@host"): Une solution simple est d'utiliser un tunnel ssh entre le poste et le serveur qui va router un port local vers le port VNC sur le serveur (spécifiez le bon "user@host"):
  
-  ssh vnc@ssh root@tiger.modomaine.com -L 5901:127.0.0.1:5901+  ssh -f vns@remoteserver -L 5901:127.0.0.1:5901   # options: -N -4
  
 Si l'on termine cette commande, le tunnel sera refermé. Voyez [[doc:formations:hebergement:serveur:ssh#ssh_tunnels|la page associée]] pour plus d'option et de robustesse associée aux tunnels. Utilisez ''ss -ant'' pour valider la présence du tunnel. Si l'on termine cette commande, le tunnel sera refermé. Voyez [[doc:formations:hebergement:serveur:ssh#ssh_tunnels|la page associée]] pour plus d'option et de robustesse associée aux tunnels. Utilisez ''ss -ant'' pour valider la présence du tunnel.
Ligne 97: Ligne 108:
 Sur son PC dans un premier shell: Sur son PC dans un premier shell:
  
-  ssh remoteuser@remoter.server.com -L 5901:127.0.0.1:5901 'x0vncserver -fg -display :1 -rfbauth .vnc/passwd'+Lancer le serveur VNC sur le display '':1'': 
 + 
 +  me@client:~ $ REMOTE=remoteuser@remoter.server.com 
 +  me@client:~ $ # Si vous ne l'avez pas déjà fait: 'ssh $REMOTE' puis 'vncpasswd'
 + 
 +Lancer le service sur le serveur en même temps que le tunnel SSH sur le poste local: 
 + 
 +  me@client:~ $ ssh $REMOTE -L 5901:127.0.0.1:5901 'vncserver -depth 24 -geometry 1400x1050 :1' 
 + 
 +Lancer le client VNC local sur le tunnel local: 
 + 
 +  me@client:~ $ vncviewer 127.0.0.1:5901 
 + 
 +Terminer le serveur distant:
  
-Et dans un second shell, lancer alors ''vncviewer''+  me@client:~ $ ssh $REMOTE vncserver -kill :1
  
doc/formations/hebergement/serveur/vnc.1709657338.txt.gz · Dernière modification : 2024/03/05 16:48 de jeremie