====== Xvnc ====== > Sujet : Installation de Xvnc comme Terminal Server. > Niveau : Intermédiaire > Distribution : [[.:Gentoo]] > Auteur : xab (sur le [[http://forum.swisslinux.org/viewtopic.php?id=132|forum]]), mise en page [[utilisateurs:calimarno]] ===== Introduction ===== {{wiki:nok.png}} ===== Installation ===== NB : Il faut être root pour pouvoir effectuer les opérations suivantes. * Installez TightVnc :# emerge tightvnc * Installez xinetd :# emerge xinetd # rc-update add xinetd default ===== Configuration ===== Pour permettre à xinetd d'accepter les accès extérieurs, éditez le fichier ''/etc/xinetd.conf'' et commentez la ligne suivante (en plaçant un # au début) :# only_from = localhost ==== Configuration de l'écran de connexion ===== === XDM === Changez la configuration de XDM pour qu'il réponde aux requêtes XDCMP en éditant ''/etc/X11/xdm/xdm-config''. Commentez (en plaçant un ! au début) la dernière ligne ! "DisplayManager.requestPort :0" === KDM === Si vous utilisez KDM, éditez ''/etc/kde/kdm/kdmrc'' et activez XDMCP sur le port 177. === GDM === Si vous utilisez GDM, démarrez ''gdmconfig'' et allez sur l'onglet "XDCMP" Vérifiez que ''Enable XDMCP'' est coché. ==== Accès à distance ==== Spécifiez qui a accès à distance en éditant ''/etc/X11/xdm/Xaccess'' et décommentez la ligne " '* #any host can get a login window" en enlevant l'apostrophe. Vous pouvez aussi mettre 192.168.0.* pour des raisons de sécurité évidentes. ==== Services ==== Copiez les lignes suivantes dans ''/etc/services'' : # # VNC Servers # vnc-640x480x8 5950/tcp vnc-800x600x8 5951/tcp vnc-1024x768x8 5952/tcp vnc-1280x1024x8 5953/tcp vnc-1600x1200x8 5954/tcp vnc-640x480x16 5960/tcp vnc-800x600x16 5961/tcp vnc-1024x768x16 5962/tcp vnc-1280x1024x16 5963/tcp vnc-1600x1200x16 5964/tcp vnc-640x480x24 5970/tcp vnc-800x600x24 5971/tcp vnc-1024x768x24 5972/tcp vnc-1280x1024x24 5973/tcp vnc-1600x1200x24 5974/tcp vnc-640x480x32 5980/tcp vnc-800x600x32 5981/tcp vnc-1024x768x32 5982/tcp vnc-1280x1024x32 5983/tcp vnc-1600x1200x32 5984/tcp Créez un fichier ''/etc/xinetd.d/xvncserver'' contenant service vnc-640x480x8 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 640x480 -depth 8 service vnc-800x600x8 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 800x600 -depth 8 service vnc-1024x768x8 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 1024x768 -depth 8 service vnc-1280x1024x8 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 1280x1024 -depth 8 service vnc-1600x1200x8 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 1600x1200 -depth 8 service vnc-640x480x16 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 640x480 -depth 16 service vnc-800x600x16 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 800x600 -depth 16 service vnc-1024x768x16 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 1024x768 -depth 16 service vnc-1280x1024x16 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 1280x1024 -depth 16 service vnc-1600x1200x16 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 1600x1200 -depth 16 service vnc-640x480x24 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 640x480 -depth 24 service vnc-800x600x24 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 800x600 -depth 24 service vnc-1024x768x24 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 1024x768 -depth 24 service vnc-1280x1024x24 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 1280x1024 -depth 24 # port = 5973 service vnc-1600x1200x24 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 1600x1200 -depth 24 service vnc-640x480x32 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 640x480 -depth 32 service vnc-800x600x32 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 800x600 -depth 32 service vnc-1024x768x32 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 1024x768 -depth 32 service vnc-1280x1024x32 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 1280x1024 -depth 32 service vnc-1600x1200x32 protocol = tcp socket_type = stream wait = no user = nobody server = /usr/bin/Xvnc server_args = -inetd -query localhost -once -geometry 1600x1200 -depth 32 ===== (Re)Démarrage des service ===== Avec la commande : /etc/init.d/xinetd restart Redémarrez ensuite le gestionnaire de session (gdm/kdm/xdm) avec la commande : /etc/init.d/xdm restart ce qui aura pour effet de redémarrer votre session graphique. ===== Utilisation ===== Pour tester vncviewer, lancez-le de la façon suivante :vncviewer localhost :71 Cela ouvrira un session en 800x600x24bit. Si vous voulez une autre résolution, utilisez les deux derniers numéros comme dans la fichier ''/etc/services''.