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
xrdp [Le 14/02/2010, 11:05] legaubxrdp [Le 17/02/2023, 20:47] (Version actuelle) 78.196.241.242
Ligne 1: Ligne 1:
-{{tag>Karmic bureau_à_distance tutoriel BROUILLON}}+{{tag>Xenial bureau_à_distance tutoriel BROUILLON vetuste}}
  
 ---- ----
 ====== XRDP ou comment se connecter depuis un client RDP® sur un serveur Ubuntu====== ====== XRDP ou comment se connecter depuis un client RDP® sur un serveur Ubuntu======
 +
 +<note warning>Cette documentation est largement obsolète. Les modifications des fichiers de configuration au point 3 sont certainement inutiles et empêchent probablement le fonctionnement de xrdp.</note>
  
 On peut être confronté à des machines windows<sup>®</sup> verrouillées, sur lesquelles on ne peut rien installer, et où seul le protocole [[wpfr>Remote_Desktop_Protocol|RDP®]] est disponible. Par exemple des [[wpfr>Client_léger|clients légers]]. On peut être confronté à des machines windows<sup>®</sup> verrouillées, sur lesquelles on ne peut rien installer, et où seul le protocole [[wpfr>Remote_Desktop_Protocol|RDP®]] est disponible. Par exemple des [[wpfr>Client_léger|clients légers]].
  
 Si l'on souhaite se connecter depuis ces machines sur un serveur Ubuntu, une seule solution : installer XRDP sur ce dernier. Si l'on souhaite se connecter depuis ces machines sur un serveur Ubuntu, une seule solution : installer XRDP sur ce dernier.
- 
-===== Prérequis ===== 
- 
-Savoir installer un paquet, éditer un fichier et éventuellement contrôler la machine distante à l'aide d'un autre protocole, typiquement ssh. 
- 
-===== Présentation ===== 
  
 Xrdp est une couche s'installant sur le serveur. Elle fait office de serveur RDP<sup>®</sup> pour le client qui veut se connecter, et se comporte comme un client VNC pour le serveur ubuntu. Xrdp est une couche s'installant sur le serveur. Elle fait office de serveur RDP<sup>®</sup> pour le client qui veut se connecter, et se comporte comme un client VNC pour le serveur ubuntu.
Ligne 20: Ligne 16:
   * appelle PAM pour l'authentification.   * appelle PAM pour l'authentification.
   * fait en sorte que le néo client VNC, avatar du client RDP, se connecte à une session VNC fonctionnelle. Le plus souvent en la créant, à l'aide des paramètres choisis dans /etc/xrdp/sesman.ini et /etc/xrdp/startwm.sh.   * fait en sorte que le néo client VNC, avatar du client RDP, se connecte à une session VNC fonctionnelle. Le plus souvent en la créant, à l'aide des paramètres choisis dans /etc/xrdp/sesman.ini et /etc/xrdp/startwm.sh.
 +
 +===== Prérequis =====
 +
 +Installer vnc4server - Virtual network computing server software, ça fonctionne tel quel donc pas de configuration à modifier.
 +
 +Si Vino est déjà installé et actif il n'y aura pas de conflit. Il peut donc être ignoré.
  
 ===== Installation ===== ===== Installation =====
  
-[[:tutoriel:comment_installer_un_paquet|Installez les paquets]] **[[apt://xrdp,vnc4server|xrdp vnc4server]]**.+[[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt>xrdp]]**.
  
-La dernière version de XRDP est la 0.4.1elle est présente dans les dépôts.+<note>sur 14.04 Trusty server,tout fonctionne sans aucun paramétrage supplémentaire... Certe la fenêtre texte est un peu petite! </note>
  
 ===== Configuration ===== ===== Configuration =====
  
-Pour l'instant, rien ne fonctionne, car la section [Xvnc] du fichier /etc/xrdp/sesman.ini ne contient que deux arguments :+=== Configuration de sesman === 
 + 
 +[[:tutoriel:comment_modifier_un_fichier|Ouvrez le fichier]] **/etc/xrdp/sesman.ini**. 
 + 
 +Pour l'instant, rien ne fonctionne, car la section [Xvnc] ne contient que les quatre arguments : 
 <code> <code>
 param1=-bs     /* désactive le "backing store support" sur tous les écrans */ param1=-bs     /* désactive le "backing store support" sur tous les écrans */
 param2=-ac     /* interdit l'édition des listes de contrôle d'accès par le client */ param2=-ac     /* interdit l'édition des listes de contrôle d'accès par le client */
 +param3=-nolisten
 +param4=tcp
 </code> </code>
  
-Il faut donc en compléter la section [Xvnc] avec +Il faut compléter cette section, de la manière suivante: 
-<code>param3=-fp+ 
 +<code> 
 +param3=-fp                         /* ces quatre paramètres corrigent le bug #78282 du paquet vnc4server */
 param4=/usr/share/fonts/X11/misc param4=/usr/share/fonts/X11/misc
 param5=-extension param5=-extension
Ligne 43: Ligne 54:
 Personnellement, j'y ai aussi ajouté : Personnellement, j'y ai aussi ajouté :
  
-<code>param7=-depth+<code> 
 +param7=-depth            /* pour forcer la profondeur de couleur */
 param8=16 param8=16
-param9=-localhost +param9=-localhost        /* pour contraindre la connexion via xrdp */ 
-param10=-NeverShared</code>+</code>
  
-On peut aussi ajuster les autres paramètres à sa convenance (sections [Globals], [Security], etc. ...). N'oublions pas de redémarrer avec :+On peut aussi ajuster les autres paramètres à sa convenance (sections [Globals], [Security], etc. ...). ATTENTION, certaines options sont ignorées. (Voir la man page de sesman.ini.)
  
-<code>sudo /etc/init.d/xrdp restart</code>+=== Menu de connexion === 
 + 
 +[[:tutoriel:comment_modifier_un_fichier|Ouvrez le fichier]] **/etc/xrdp/xrdp.ini**.
  
-Pour finir, on peut modifier le fichier /etc/xrdp/xrdp.ini, pour n'y laisser paraître que la connexion que nous avons correctement ajustée. On conserve simplement les sections [globals] et [xrdp1] que l'on renomme pour le fun :+Conserver simplement les sections [globals] et [xrdp1] que l'on renomme pour le fun :
  
 <code>[globals] <code>[globals]
Ligne 70: Ligne 84:
 </code> </code>
  
-Redémarrons le service. Vous pouvez désormais vous connecter à votre serveur en utilisant le protocole RDP<sup>®</sup>.+Redémarrer avec : 
 + 
 +<code>sudo /etc/init.d/xrdp restart</code> 
 + 
 +Vous pouvez désormais vous connecter à votre serveur en utilisant le protocole RDP<sup>®</sup>
 + 
 +=== Configuration du clavier === 
 +Les configurations du clavier en local et en distant sont différentes. Ainsi si Ubuntu est en anglais à la base et même si en local, vous avez bien configuré le clavier en azerty, le clavier distant reste en qwerty. 
 +Voici la commande à exécuter **en local**, (pas en session distante) ! 
 +<code>sudo xrdp-genkeymap /etc/xrdp/km-0409.ini</code> 
 +relancer votre session distante si elle était ouverte.
  
 ===== Problème de configuration ===== ===== Problème de configuration =====
  
-Une nouvelle difficulté surgit si l'on veut passer, par exemple -DisconnectClient=0. En effet, impossible de glisser le signe "=" nulle part.+Une difficulté surgit si l'on veut passer, par exemple -DisconnectClients=0 ou -NerverShared=1. En effet, impossible de glisser le signe "=" nulle part.
  
-On s'en sort grâce au script /etc/xrdp/startwm.sh auquel on ajoute la ligne suivante :+[[:tutoriel:comment_modifier_un_fichier|Ouvrez le fichier]] **/etc/xrdp/startwm.sh**.
  
-<code>vncconfig -set DisconnectClients=0</code> +Ajouter les lignes suivantes : 
-pour avoir finalement : + 
-<code bash> +<code>vncconfig -set NeverShared=1
-#!/bin/sh +
-  +
-if [ -r /etc/default/locale ]; then +
-  . /etc/default/locale +
-  export LANG LANGUAGE +
-fi +
- +
 vncconfig -set DisconnectClients=0 vncconfig -set DisconnectClients=0
-  
-. /etc/X11/Xsession 
 </code> </code>
  
 Attention, l'utilisation de "vncconfig" fait que le nouveau paramètre ne sera pris en compte que lors du démarrage d'une nouvelle session. Attention, l'utilisation de "vncconfig" fait que le nouveau paramètre ne sera pris en compte que lors du démarrage d'une nouvelle session.
  
-===== Désinstallation =====+<note>{{ :capture2.jpg?nolink&300|}} Essais sur ubuntu 16.04 depuis Windows 7 : Le log de connexion me renvois une erreur après une autentification réussie, même en apportant les modifications à sesman.ini décrites plus haut : 
 +</note> 
 +<note>meme erreur depuis Ubuntu v16.04 (client RDP Remmina) vers ubuntu 15.04 
 +</note> 
 +<note>Il semble que les bureaux Unity et Gnome ne soient pas compatibles avec xrdp. 
 +Mais cela fonctionne en installant xfce4 : <code>sudo apt-get install xfce4</code> 
 +Il faut ensuite indiquer à Ubuntu que c'est le bureau xfce qui doit être utilisé : <code>echo xfce4-session >~/.xsession</code> 
 +Ensuite redémarrer xrdp : <code>sudo /etc/init.d/xrdp restart</code> 
 +NB: Et **il faut conserver le fichier /etc/xrdp/sesman.ini d'origine**. 
 +Testé avec Ubuntu 16.04 depuis un Windows 7. 
 +</note> 
 +===== Utilisation en mode client ===== 
 +Installer **rdesktop**.
  
-===== Liens =====+Exemple de commande: 
 +  rdesktop -u <REMOTE USER>  111.222.333.444 -p <PASSWORD> -f -k fr -5 -K -r clipboard:PRIMARYCLIPBOARD  
 + 
 +===== Désinstallation ===== 
 +Et si vous voulez désinstaller xrdp 
 +tapez: 
 +apt-get remove xrdp 
 +===== Pour en savoir plus =====
  
   * [[http://xrdp.sourceforge.net/|(en) XRDP chez sourceforge.]]   * [[http://xrdp.sourceforge.net/|(en) XRDP chez sourceforge.]]
   * [[:vnc|VNC (Virtual Network Computing)]] sur la documentation ubuntu-fr.   * [[:vnc|VNC (Virtual Network Computing)]] sur la documentation ubuntu-fr.
-  * [[http://planet.ubuntu-fr.org/post/2007/06/04/Connexion-a-Ubuntu-Linux-a-partir-de-windows-:-xrdp|Le tuto de juin 2007]] sur planet ubuntu-fr, qui présente bien l'aspect théorique. +  * [[https://forum.ubuntu-fr.org/viewtopic.php?id=372863|RDP sur un serveur ubuntu ?]] sur le forum ubuntu-fr.
-  * [[http://forum.ubuntu-fr.org/viewtopic.php?id=372863|RDP sur un serveur ubuntu ?]] sur le forum ubuntu-fr.+
  
 ---- ----
  
-//Contributeurs principaux : [[http://perso.nordnet.fr/stephane.patin-gaubert/fiches/fiche16.html|legaub]]//+//Contributeurs principaux : [[http://patin.gaubert.free.fr/fiches/fiche16.html|legaub]]//