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 →
Ci-dessous, les différences entre deux révisions de la page.
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 10:49] Debian Alain [Introduction] |
doc:reseau:x11vnc [27/03/2019 15:55] Debian Alain [Créer un tunnel ssh :] |
||
---|---|---|---|
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 | les commandes ci-dessous ont été testés sur | ||
- | un serveur debian stretch 9.8(amd64) bureau mate en V.irtual M.achine (192.168.1.32) | ||
- | 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 . | + | 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 . | et un client debian buster testing amd64 bureau gnome(3.30.2) wayland . | ||
Ligne 75: | Ligne 77: | ||
^ -passwd | **Méthode déconseillée** car le mot de passe sera visible dans votre ligne de commande depuis la liste des processus en cours Définit un mot de passe. | -passwd secret | | ^ -passwd | **Méthode déconseillée** car le mot de passe sera visible dans votre ligne de commande depuis la liste des processus en cours Définit un mot de passe. | -passwd secret | | ||
+ | 1) première méthode sécurisation par mot de passe | ||
<note tip>de même que la sécurisation par mot de passe , | <note tip>de même que la sécurisation par mot de passe , | ||
Ligne 141: | Ligne 144: | ||
PORT=5900 | PORT=5900 | ||
</code> | </code> | ||
+ | |||
+ | ==== connections ssh ==== | ||
+ | |||
+ | ssh est un terminal , donc en mode texte . | ||
+ | |||
+ | il permet l'accès à un serveur distant mais ne permet pas de lancer "bêtement" le bureau . | ||
+ | |||
+ | pour lancer le bureau , il faut modifier son lanceur (gdm / gdm3 / lightdm) pour activer l'autologin . | ||
+ | |||
+ | par la même occasion , profitez en pour installer et paramétrer x11 puis , ensuite , redémarrage . | ||
+ | |||
+ | au reboot du serveur qui loggue donc automatiquement et sous x , vous pourrez lancer tigervnc et , | ||
+ | |||
+ | donc , obtenir un beau bureau distant sur votre machine locale . | ||
+ | |||
+ | note : dans gdm3 , ne pas oublier de décommenter (activer , donc) la ligne suivante : | ||
+ | |||
+ | <code>WaylandEnable=false</code> | ||
+ | |||
+ | faute de quoi , il y a des chances que votre pc démarre sous wayland , donc , pas de serveur x et pas de x11vnc (même s'il est installé) . | ||
+ | |||
+ | conséquence directe : pas de bureau distant . | ||
+ | |||
+ | |||
===== 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 (plus haut) | ||
+ | |||
+ | 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) | ||
+ | |||
+ | 3) et le protocole ssl (à suivre). | ||
+ | |||
+ | 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 258: | Ligne 298: | ||
</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 340: | Ligne 385: | ||
[[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 386: | Ligne 431: | ||
</code> | </code> | ||
+ | |||
==== Au démarrage du système avec les "services systemd" ==== | ==== Au démarrage du système avec les "services systemd" ==== | ||
Ligne 439: | Ligne 485: | ||
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 ==== | ||
+ | |||
+ | |||
+ | |||
+ | |||
Ligne 468: | Ligne 528: | ||
<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 477: | Ligne 537: | ||
<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> | ||
Ligne 588: | Ligne 648: | ||
[[https://www.supinfo.com/articles/single/4557-differences-ipv4-ipv6 | SUPINFO : IPV4 VS IPV6]] | [[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 ]] | ||