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:56] Debian Alain [Introduction] |
doc:reseau:x11vnc [27/03/2019 21:59] Debian Alain [Introduction] |
||
---|---|---|---|
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) 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 | + | un serveur [[https://wiki.debian.org/fr/DebianStretch | debian stretch]] 9.8(amd64) [[ https://mate-desktop.org/fr/ | bureau mate]](1.20.4) en [[https://www.oracle.com/fr/virtualization/virtualbox/ | V.irtual M.achine 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 également . | + | 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 9.8 mate 1.16.2 |
+ | |||
+ | kernel : Linux Host-001 4.19.0-0.bpo.2-amd64 #1 SMP Debian 4.19.16-1~bpo9+1 (2019-02-07) x86_64 GNU/Linux | ||
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 . | ||
- | kernel : Linux Alain-PC 4.19.0-2-amd64 #1 SMP Debian 4.19.16-1 (2019-01-17) x86_64 GNU/Linux | + | |
+ | kernel : Linux Alain-PC 4.19.0-4-amd64 #1 SMP Debian 4.19.28-2 (2019-03-15) x86_64 GNU/Linux | ||
Ligne 77: | Ligne 82: | ||
^ -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 143: | Ligne 149: | ||
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 . | ||
+ | |||
+ | dans lightdm , modifier le chapitre [vnc] permet d'accéder à l'écran de login à distance et , donc , de lancer le bureau en graphique . n'a pas fonctionné dans ma V.M. mais sur le pc . | ||
+ | |||
+ | <code>[VNCServer] | ||
+ | enabled = true | ||
+ | commande = x11vnc -q -forever -rfbauth /etc/.vnc/passwd | ||
+ | port = 5900 | ||
+ | listen-address = localhost | ||
+ | largeur = 1024 | ||
+ | hauteur = 768 | ||
+ | profondeur = 24</code> | ||
+ | |||
+ | <code>La connexion à l'écran de connexion avec VNC lors de l'utilisation de GDM3 n'est actuellement pas possible. | ||
+ | Le moyen le plus simple de récupérer cette fonctionnalité VNC est simplement de revenir de GDM3 à LightDM. | ||
+ | |||
+ | LightDM est toujours activement développé et utilisé par de nombreuses distributions Linux</code> | ||
+ | |||
+ | <code>Pour réveiller un ordinateur à distance , on peut utiliser le W.O.L. (wake on lan) . | ||
+ | réveil de la machine par le réseau . | ||
+ | on a besoin de l'adresse mac (sorte de no de série de l'interface) et de l'adresse ip (adresse internet) | ||
+ | (voire bibliographies)</code> | ||
+ | |||
+ | |||
===== 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 260: | Ligne 324: | ||
</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 342: | Ligne 411: | ||
[[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 388: | Ligne 457: | ||
</code> | </code> | ||
+ | |||
==== Au démarrage du système avec les "services systemd" ==== | ==== Au démarrage du système avec les "services systemd" ==== | ||
Ligne 441: | Ligne 511: | ||
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 470: | Ligne 554: | ||
<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 479: | Ligne 563: | ||
<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 590: | Ligne 674: | ||
[[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 ]] | ||
+ | |||
+ | Lightdm et VNC : | ||
+ | |||
+ | [[https://wiki.archlinux.org/index.php/LightDM | lightdm archwiki]] | ||
+ | |||
+ | [[https://wiki.archlinux.org/index.php/LightDM#VNC_Server | lightdm et vnc archwiki ]] | ||
+ | |||
+ | GDM et VNC : | ||
+ | |||
+ | [[https://askubuntu.com/questions/1033274/ubuntu-18-04-connect-to-login-screen-over-vnc | GDM3 et VNC ]] | ||
+ | |||
+ | W.O.L. : | ||
+ | |||
+ | [[https://fr.wikipedia.org/wiki/Wake-on-LAN | W.ake O.n L.an WIKIPEDIA ]] | ||
+ | |||
+ | [[https://fr.wikipedia.org/wiki/Adresse_MAC | adresse MAC WIKIPEDIA ]] | ||
+ | [[https://la-vache-libre.org/gwakeonlan-reveillez-votre-pc-depuis-un-reseau-local-ou-distant/ | G wake on lan ]] | ||