logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

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édentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
doc:reseau:x11vnc [26/03/2019 09:11]
Debian Alain [Créer un tunnel ssh :]
doc:reseau:x11vnc [26/03/2019 16:33]
Debian Alain [connexion avec ssl (préambule)]
Ligne 11: Ligne 11:
   * Commentaires sur le forum : [[https://​debian-facile.org/​viewtopic.php?​id=23958]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))   * Commentaires sur le forum : [[https://​debian-facile.org/​viewtopic.php?​id=23958]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
 ===== Introduction ===== ===== Introduction =====
-Ce programme permet de prendre le contrôle physique d'un ordinateur à distance ( contrôler clavier, souris, voir l'​écran etc ...). Utile pour dépanner une personne à distance ou utiliser un ordinateur sans écran ( serveur, ou écran abîmé... ). x11vnc est un programme à installer sur l'​ordinateur distant à contrôler ( partie serveur ). Il fonctionne de paire avec un "​client VNC" ( un second programme à installer sur votre machine ex : xtigervncviewer ), qui vous donnera le contrôle de la machine distante. x11vnc vient de X11 ( le serveur graphique de Linux ) et VNC, le nom du protocole utilisé ici ( Virtual Network Computing ).+Ce programme permet de prendre le contrôle physique d'un ordinateur à distance ( contrôler clavier, souris, voir l'​écran etc ...). Utile pour dépanner une personne à distance ou utiliser un ordinateur sans écran ( serveur, ou écran abîmé... ). x11vnc est un programme à installer sur l'​ordinateur distant à contrôler ( partie serveur ). Il fonctionne de pair avec un "​client VNC" ( un second programme à installer sur votre machine ex : xtigervncviewer ), qui vous donnera le contrôle de la machine distante. x11vnc vient de X11 ( le serveur graphique de Linux ) et VNC, le nom du protocole utilisé ici ( Virtual Network Computing ).
  
 +les commandes ci-dessous ont été testés sur 
 +
 +un serveur debian stretch 9.8(amd64) bureau mate(1.20.4) en V.irtual M.achine (192.168.1.32) Virtual Box(6.0.4) . kernel : Linux debian 4.19.0-0.bpo.2-amd64 #1 SMP Debian 4.19.16-1~bpo9+1 (2019-02-07) x86_64 GNU/Linux
 +
 +
 +ou un [[https://​www.amazon.fr/​HP-Compaq-240Go-Graveur-Windows/​dp/​B01IX3R6B6/​ref=sr_1_3?​ie=UTF8&​qid=1553593639&​sr=8-3&​keywords=HP+6005+Pro | pc hp 6005]] pour le script systemd . stretch (à jour) également .
 +
 +
 +et un client debian buster testing amd64 bureau gnome(3.30.2) wayland .
 +kernel : Linux Alain-PC 4.19.0-2-amd64 #1 SMP Debian 4.19.16-1 (2019-01-17) x86_64 GNU/Linux
 +
 +
 + 
  
  
Ligne 88: Ligne 101:
  
 exemple : exemple :
 +
 +où l'on voit la commande (ssh) le user distant(alain) et l'ip distant (192.168.1.32 : adresse réseau local)
 +
 +I.P. vient de l'​anglais I.nternet P.rotocol , soit : Protocole Internet .
 +
 +il s'agit d'un procédé d'​adressage à l'​origine sur une séquence de 4 chiffres (IPV4) séparés par un point .
 +
 +à venir , l' IPV6 : séquence et zone d'​adressage beaucoup plus grands .
  
 {{/​file-Rb1aeab106203e374cbc6b52e65cf4357.png}} {{/​file-Rb1aeab106203e374cbc6b52e65cf4357.png}}
Ligne 124: Ligne 145:
 ===== Créer un tunnel ssh : ===== ===== Créer un tunnel ssh : =====
  
-L'​inconvénient de cette méthode est que vnc passe par un port non crypté (5900 pour le display :0).+dans ce tuto , vous trouverez 3 méthodes de  sécurisation de vnc : 
 + 
 +1) le mot de passe  
 + 
 +2) le tunnel ssh , ici . 
 + 
 +cette méthode ​ consiste à faire passer par ssh(port 22 , chiffré par  défaut) une  connexion vnc(port 5900 en clair par défaut)  
 + 
 +3) et le protocole ssl . 
 + 
 +qui repose sur l'​authentification par clé de chiffrement ssl . 
 + 
 + 
 +ici , L'​inconvénient de cette méthode est que vnc passe par un port non crypté (5900 pour le display :0).
  
 Pour traverser une box ou un routeur il faut ouvrir des ports spécifiques pour vnc. Pour traverser une box ou un routeur il faut ouvrir des ports spécifiques pour vnc.
Ligne 192: Ligne 226:
 <note important>​on parle , ici , de la connexion au systeme (en ssh) , donc , du mot de passe systeme (user) ​ <note important>​on parle , ici , de la connexion au systeme (en ssh) , donc , du mot de passe systeme (user) ​
  
-par ailleurs, bien que la  connexion x11vnc ne soit pas protégée , +par ailleurs, bien que la  connexion x11vnc ne soit pas protégée ​(port 5900) 
  
-elle passe par ssh , donc , dans un tunnel , et est , de ce fait , cryptée .+elle passe par ssh , donc , dans un tunnel ​(port 22) , et est , de ce fait , cryptée ​par ssh.
 </​note>​ </​note>​
  
Ligne 239: Ligne 273:
 </​code>​ </​code>​
 ===== connexion avec ssl (préambule) ===== ===== connexion avec ssl (préambule) =====
 +3 ème solution pour sécuriser vnc 
 +
 +authentification par certificat ssl :
 +
 +
 <note tip>​SSVNC est un client ssl - vnc dérivé de tightvnc . il gère aussi le ssh ainsi que le ssl + ssh . <note tip>​SSVNC est un client ssl - vnc dérivé de tightvnc . il gère aussi le ssh ainsi que le ssl + ssh .
  
Ligne 321: Ligne 360:
 [[https://​framapic.org/​rusasqK1MmPN/​fQD8vsoVybFV.png|résultat par exemple (ssvnc d'une V.M. à l'​origine)]] [[https://​framapic.org/​rusasqK1MmPN/​fQD8vsoVybFV.png|résultat par exemple (ssvnc d'une V.M. à l'​origine)]]
  
-{{/​file-R1482911941c8b0f10ea1a1670a63d5fc.png}}+{{/​file-R1482911941c8b0f10ea1a1670a63d5fc.png?400}}
  
  
Ligne 333: Ligne 372:
  
 ==== Au démarrage d'une session graphique avec "​autostart"​ ==== ==== Au démarrage d'une session graphique avec "​autostart"​ ====
 +
 +<code user>​nano ~/​.config/​autostart/​x11vnc.desktop </​code>​
 +<​code>​[Desktop Entry] ​
 +
 +Type=Application
 +Name=x11vnc
 +Exec=x11vnc -forever -rfbauth /​home/​alain/​.vnc/​passwd</​code>​
 +<note tip>sur votre configuration , remplacez "/​home/​alain/"​ par "/​home/<​votre_user>/"</​note>​
 +
 +au redémarrage de la session , on s'​apperçoit que l'on a un processus de lancé :
 +<code user> pgrep x11vnc</​code>​
 +voilà son P.I.D. par exemple ​
 +<​code>​1536</​code>​
 +
 +le lancement de vncviewer (ou tigervnc , si vous préférez ) , vous donnera un résultat positif :
 +<code user>​vncviewer 192.168.1.32:​5900</​code>​
 +<​code>​TigerVNC Viewer 64-bit v1.9.0
 +Built on: 2018-12-01 21:51
 +Copyright (C) 1999-2018 TigerVNC Team and many others (see README.rst)
 +See http://​www.tigervnc.org for information on TigerVNC.
 +
 +Tue Mar 26 10:21:38 2019
 + ​DecodeManager:​ Detected 16 CPU core(s)
 + ​DecodeManager:​ Creating 4 decoder thread(s)
 + ​CConn: ​      ​connected to host 192.168.1.32 port 5900
 + ​CConnection:​ Server supports RFB protocol version 3.8
 + ​CConnection:​ Using RFB protocol version 3.8
 + ​CConnection:​ Choosing security type VncAuth(2)
 +
 +Tue Mar 26 10:21:50 2019
 + ​CConn: ​      Using pixel format depth 24 (32bpp) little-endian rgb888
 + ​CConn: ​      Using Tight encoding
 +</​code>​
 +
 + 
  
 ==== Au démarrage du système avec les "​services systemd"​ ==== ==== Au démarrage du système avec les "​services systemd"​ ====
Ligne 386: Ligne 460:
  
 mais normalement , vncviewer ou remmina vous donneront ​ accès à l'​interface graphique . mais normalement , vncviewer ou remmina vous donneront ​ accès à l'​interface graphique .
 +
 +<note tip>​N.B.:​ si , comme moi , vous recopiez bêtement le texte et que , donc , vous devez le corriger ...
 +
 +après la rectification , faites ceci :
 +
 +<code root>​systemctl daemon-reload
 +
 +systemctl restart name.service</​code>​
 +
 +dans le cas présent , remplacez "​name.service"​ par "​x11vnc.service"​ (le nom de votre démon)</​note>​
  
  
 ==== Démarrage à la demande avec Inetd ==== ==== Démarrage à la demande avec Inetd ====
 +
 +<note tip>EN COURS ET NON TESTÉ</​note>​
 +
 +inetd semble dépendre du gestionnaire de  connexion : gdm ... lightdm ...
 +
 +sous debian , il faut commencer par l'​installer :
 +
 +le service s'​appelle "​xinetd"​ .
 +
 +<code root>apt install --reinstall xinetd</​code>​
 +<​code>​Lecture des listes de paquets... Fait
 +Construction de l'​arbre des dépendances ​      
 +Lecture des informations d'​état... Fait
 +0 mis à jour, 0 nouvellement installés, 1 réinstallés,​ 0 à enlever et 0 non mis à jour.
 +Il est nécessaire de prendre 133 ko dans les archives.
 +Après cette opération, 0 o d'​espace disque supplémentaires seront utilisés.
 +Réception de:1 http://​deb.debian.org/​debian stretch/​main amd64 xinetd amd64 1:2.3.15-7 [133 kB]
 +133 ko réceptionnés en 0s (1 137 ko/s)
 +(Lecture de la base de données... 267988 fichiers et répertoires déjà installés.)
 +Préparation du dépaquetage de .../​xinetd_1%3a2.3.15-7_amd64.deb ...
 +Dépaquetage de xinetd (1:​2.3.15-7) sur (1:​2.3.15-7) ...
 +Paramétrage de xinetd (1:​2.3.15-7) ...
 +Traitement des actions différées (« triggers ») pour systemd (232-25+deb9u9) ...
 +Traitement des actions différées (« triggers ») pour man-db (2.7.6.1-2) ...
 +</​code>​
 +
 +<​code>​Ouvrez ensuite le fichier de configuration d'​inetd /​etc/​inetd.conf</​code>​
 +
 +<​code>​ajoutez une ligne pour VNC entre les lignes #:INTERNAL: Internal services et #:STANDARD: These are standard services:
 +
 +5900 stream tcp nowait root /​usr/​sbin/​tcpd /​usr/​bin/​x11vnc -inetd -q -rfbauth /​root/​.vnc_passwd -display :0 -auth /​var/​run/​lightdm/​root/:​0</​code>​
 +
 +<code root>​service xinetd status</​code>​
 +
 +<​code>​● xinetd.service - LSB: Starts or stops the xinetd daemon.
 +   ​Loaded:​ loaded (/​etc/​init.d/​xinetd;​ generated; vendor preset: enabled)
 +   ​Active:​ active (running) since Tue 2019-03-26 14:18:46 CET; 2min 29s ago
 +     Docs: man:​systemd-sysv-generator(8)
 +  Process: 1993 ExecStop=/​etc/​init.d/​xinetd stop (code=exited,​ status=0/​SUCCESS)
 +  Process: 2000 ExecStart=/​etc/​init.d/​xinetd start (code=exited,​ status=0/​SUCCESS)
 +    Tasks: 1 (limit: 4915)
 +   ​CGroup:​ /​system.slice/​xinetd.service
 +           ​└─2009 /​usr/​sbin/​xinetd -pidfile /​run/​xinetd.pid -stayalive -inetd_compat -inetd_ipv6
 +
 +mars 26 14:18:46 debian xinetd[2009]:​ removing daytime
 +mars 26 14:18:46 debian xinetd[2009]:​ removing discard
 +mars 26 14:18:46 debian xinetd[2009]:​ removing discard
 +mars 26 14:18:46 debian xinetd[2009]:​ removing echo
 +mars 26 14:18:46 debian xinetd[2009]:​ removing echo
 +mars 26 14:18:46 debian xinetd[2009]:​ removing time
 +mars 26 14:18:46 debian xinetd[2009]:​ removing time
 +mars 26 14:18:46 debian xinetd[2009]:​ Port not specified and can't find service: 5900 with getservbyname
 +mars 26 14:18:46 debian xinetd[2009]:​ xinetd Version 2.3.15 started with libwrap loadavg options compiled in.
 +mars 26 14:18:46 debian xinetd[2009]:​ Started working: 0 available services
 +</​code>​
 +
 +
 +
  
  
Ligne 415: Ligne 557:
 <code root>​nano ~/​.bash_aliases</​code>​ <code root>​nano ~/​.bash_aliases</​code>​
 y copier le code suivant : y copier le code suivant :
- <​code>​alias assistance='​x11vnc -many -rfbauth ~/.vnc_passwd ​-xkb'</​code>​+ <​code>​alias assistance='​x11vnc -many -rfbauth ~/.vnc/​passwd ​-xkb'</​code>​
  
 il suffira , dès lors , de taper la commande <code user>​assistance</​code>​ en lieu et place de la longue ligne d'​instructions d'​origine ​ il suffira , dès lors , de taper la commande <code user>​assistance</​code>​ en lieu et place de la longue ligne d'​instructions d'​origine ​
Ligne 424: Ligne 566:
  
 <code root>cat > /​home/​switch/​.bash_aliases <<​EOF ​ <code root>cat > /​home/​switch/​.bash_aliases <<​EOF ​
-alias assistance='​x11vnc -many -rfbauth ~/.vnc_passwd ​-xkb'+alias assistance='​x11vnc -many -rfbauth ~/.vnc/​passwd ​-xkb'
 EOF</​code>​ EOF</​code>​
  
-<code>adaptez /​home/​switch/​ à votre configuration . +<note tip>adaptez /​home/​switch/​ à votre configuration . 
-normalement /​home/<​utilisateur>/</​code>+normalement /​home/<​utilisateur>/</​note>
  
 avec un tunnel ssh , on peut obtenir ceci : avec un tunnel ssh , on peut obtenir ceci :
Ligne 434: Ligne 576:
 <code user>​alias tunnelssh='​ssh -f -L 5900:​localhost:​5900 your.ssh.server "​x11vnc -safer -localhost -nopw -once -display :0"; vncviewer localhost:​5900'</​code>​ <code user>​alias tunnelssh='​ssh -f -L 5900:​localhost:​5900 your.ssh.server "​x11vnc -safer -localhost -nopw -once -display :0"; vncviewer localhost:​5900'</​code>​
  
 +<note tip>je ne sais plus s'il faut redémarrer la session ou le pc après la création d'un alias .</​note>​
  
 +On peut lister les alias . ce qui permet de verifier si le nôtre est bien enregistré .
  
-je ne sais plus s'il faut redémarrer ​la session ou le pc après la création d'un alias .+<code user>​alias</​code>​ 
 + 
 +<​code>​alias agf='sudo apt full-upgrade'​ 
 +alias agg='​sudo apt upgrade'​ 
 +alias agu='​sudo apt update'​ 
 +alias dir='​dir --color=auto'​ 
 +alias egrep='​egrep --color=auto'​ 
 +alias fgrep='​fgrep --color=auto'​ 
 +alias fullmaj='​agu && agf' 
 +alias grep='​grep --color=auto'​ 
 +alias l='ls -CF' 
 +alias la='ls -A' 
 +alias ll='ls -l' 
 +alias logs='​sudo multitail -s 2 -f /​var/​log/​messages ​ -f /​var/​log/​kern.log  -f /​var/​log/​syslog -f /​var/​log/​dmesg -f /​var/​log/​ufw.log'​ 
 +alias ls='ls --color=auto'​ 
 +alias maj='​agu && agg' 
 +alias vdir='​vdir --color=auto'​ 
 +</​code>​
  
  
Ligne 443: Ligne 604:
  
  
-===== culture générale <biliographies> =====+===== culture générale <bibliographies> =====
  
  
Ligne 511: Ligne 672:
  
 [[https://​sourceforge.net/​projects/​ssvnc/​ | sourceforge ssvnc (eng.)]] [[https://​sourceforge.net/​projects/​ssvnc/​ | sourceforge ssvnc (eng.)]]
 +
 +adressage I.P. :
 +
 +[[https://​www.supinfo.com/​articles/​single/​4557-differences-ipv4-ipv6 | SUPINFO : IPV4 VS IPV6]]
 +
 +systemd :
 +
 +[[https://​access.redhat.com/​documentation/​fr-fr/​red_hat_enterprise_linux/​7/​html/​system_administrators_guide/​sect-managing_services_with_systemd-unit_files | Red Hat : systemd (eng.) ]]
 +
 +inetd / xinetd :
 +
 +[[https://​fr.wikipedia.org/​wiki/​Inetd | inetd wikipedia ]]
 +
 +[[https://​fr.wikipedia.org/​wiki/​Xinetd | xinetd wikipedia ]]
 +
 +[[https://​debian-handbook.info/​browse/​fr-FR/​stable/​sect.inetd.html | inetd debian : le superserveur ]]
 +
 +[[http://​www.linux-france.org/​~mdecore/​linux/​doc/​memo2/​node47.html | /​etc/​inetd.conf ]]
 +
 +[[https://​doc.ubuntu-fr.org/​x11vnc#​demarrer_vnc_comme_service_inetd | démarrer vnc comme service inetd ]]
 +
  
doc/reseau/x11vnc.txt · Dernière modification: 01/10/2023 11:27 par captnfab

Pied de page des forums

Propulsé par FluxBB