web-dev-qa-db-fra.com

Impossible de faire un bureau à distance avec xrdp

J'ai une machine virtuelle Ubuntu sur laquelle je dois utiliser un poste de travail distant. Je n'ai pas d'accès physique à cette machine et je ne peux faire que ssh à la machine. Je voulais utiliser le bureau à distance et j'ai proposé de nombreuses options (vnc, xrdp, opennx). J'ai utilisé xrdp et j'ai installé les paquets nécessaires sur la machine Ubuntu (xrdp et dépendante). Ensuite, j'ai activé l'accès à distance dans Ubuntu à l'aide de l'option de ligne de commande suivante.

gconftool-2 -s -t bool /desktop/gnome/remote_access/enabled true

gconftool-2 -s -t bool /desktop/gnome/remote_access/Prompt_enabled false

Ensuite, j'ai redémarré xrdp (/etc/init.d/xrdp start). Mais quand j'essaie de faire du RDP avec le client Windows (mstsc), j'obtiens l'erreur suivante. L'accès à distance au serveur n'est pas activé.

Comment résoudre ce problème? Aide aimablement.

Raj

6
user1667630

Dans le fichier /etc/xrdp/xrdp.ini, ajoutez address = 0.0.0.0, qui est l'adresse xrdp par défaut.

Vous devez également autoriser le pare-feu à écouter les connexions sur le port 3389 sur lequel xrdp fonctionne. Pour cela exécuter:

Sudo ufw allow 3389

Si cela ne fonctionne pas non plus:

  1. Redémarrer les PC
  2. Désactivez le pare-feu (Sudo ufw disable) sur le PC serveur, puis vérifiez à nouveau (il peut même être nécessaire de redémarrer).

Au cas où vous l'auriez manqué, je vais énumérer toute la procédure ci-dessous (ce qui était un douleur à assembler). Cela vous ira si vous suivez pas à pas (promis!).


Guide de bureau à distance entre tous les systèmes d'exploitation, pas à pas

I. Windows vers/depuis Windows:

Utiliser le logiciel Windows Remote Desktop

II. Linux/Unix vers/de n'importe où

Commencez par effectuer les opérations suivantes sur l’ordinateur serveur que vous allez connecter via un poste de travail distant:

- Allow other users to view your desktop
- Best to require a password
- service ssh status
- To allow computers to connect with X11 graphics system capabilities as well, you need to 
    install an X11 server on the computer that is trying to connect (client). So
    * for a Windows computer use XMing
    * for a Linux Ubuntu computer use XQuartz

IIa. Windows vers Linux depuis un terminal avec prise en charge graphique

- Launch XMing on Windows client
- Launch PuTTY
    * Fill in basic options
    * Connection -> SSH -> X11
        -> Enable X11 forwarding
        -> X display location = :0.0
        -> MIT-Magic-Cookie-1
        -> X authority file for local display = point to the Xming.exe executable

IIb. (b pour le meilleur) Windows à Linux avec un support complet de l'interface graphique. C'est ce que la plupart d'entre vous voudront.

- install xrdp which uses the remote desktop protocol to present a GUI to the user. 
    It can provide a fully functional Linux terminal server, capable of accepting connections 
    from rdesktop, freerdp, and Microsoft's own terminal server / remote desktop clients. 
    xrdp is the daemon that handles RDP remote desktop access from Windows machines to Linux 
- edit the "/etc/xrdp/xrdp.ini" file to include the line:
    address=0.0.0.0
    right under #background=626x72 line. 0.0.0.0 is the local server address of xrdp
- Restart xrdp service
- allow xrdp port (probably 3389) through firewall
- We also need a VNC server. Install tightvncserver on Linux server machine. 
- run tightvncserver (no need to create a view-only password)
- "netstat -lvp | grep vnc" to check out the ports that tightvnc is listening on for 
    connections
- allow the vncserver port from the firewall: Sudo ufw allow #
- allow the xrdp server
- Install xfce4 desktop environment an update to xfce, minimalistic faster and lightweight
    Sudo apt-get install xfce4
- Sudo apt-get install xfce4-terminal : way better than xterm
- Sudo apt-get install gnome-icon-theme-full tango-icon-theme : installs icon sets
- Now we modify 2 files to make sure xrdp uses xfce4
    * echo xfce4-session >~/.xsession
    * secondly we modify startup file for xRDP located at /etc/xrdp/startwm.sh
        so it will start xfce4. Replace the last line with 
        startxfce4 
        (before it had something which started with a ., but no matter whatever it is, just 
        replace the last line)
    * restart xrdp service: Sudo service xrdp restart
- Now you are ready to log into the computer from client using Remote Desktop (mstsc.exe). 
    Just supply the ipv4 or hostname of the VNC server.

III. * nix to/from * nix

- ssh -X [preferedUserName]@[targetIpv4Address] : -X flag enales X11 forwarding
- accept security certificates from trusted hosts when prompted

IV. Rendre la connexion sécurisée (étape facultative - s'applique à toute configuration)

Les protocoles VNC et xrdp ne sont pas sécurisés, ce qui signifie qu'ils ne sont pas chiffrés.

Pour sécuriser la connexion, éditez le fichier /etc/xrdp/xrdp.ini de sorte que l’adresse devienne 127.0.0.1. Ce sera l'adresse localhost du serveur ssh. Le cryptage SSH sera utilisé en dessous pour canaliser le trafic vnc.

- Sudo service xrdp restart
- Sudo service ssh restart
- pkill Xtightvnc
- tightvncserver
- PuTTY -> Connection -> SSH -> Tunnels 
    * Source port: 5555
    * Destination: localhost:3389

Si ce qui précède ne fonctionne pas:

  1. Vous devrez peut-être redémarrer les deux ordinateurs,
  2. Désactivez le pare-feu (Sudo ufw disable) sur le PC serveur, puis vérifiez à nouveau (il peut même être nécessaire de redémarrer).
  3. Si les solutions ci-dessus ne fonctionnent pas, vous avez endommagé votre système en installant des packages en conflit. Vous devez effectuer un dépannage manuel à ce sujet (il est très peu probable que vous atteigniez cette étape si vous suivez correctement les instructions).

Bonne chance.


Sources et crédits:

6
Nikos

Je ne suis pas familier avec xrdp en particulier, mais la première chose à vérifier est de voir si le port qu'il utilise est a) à l'écoute des connexions et b) ouvert sur le monde extérieur. Le port par défaut pour RDP est 3389 .

Le premier est assez facile à vérifier; exécutez simplement ceci dans le terminal sur la machine à laquelle vous essayez de vous connecter (changez 3389 si xrdp écoute sur un autre port):

netstat -an | grep "LISTEN " | grep ":3389"

Si vous obtenez quelque chose de similaire au suivant, quelque chose au moins (xrdp, espérons-le) écoute les connexions:

tcp        0      0 127.0.1.1:3389            0.0.0.0:*               LISTEN

Si vous n'obtenez aucune sortie, essayez de (re) démarrer xrdp ou vérifiez que vous avez le bon port.

Ensuite, vous devez vous assurer que la machine est accessible à Internet sur ce port, ce qui implique deux choses: s’assurer que le pare-feu de la machine elle-même ne bloque pas les connexions à ce port et que tout périphérique réseau ( un routeur) entre l’ordinateur auquel vous essayez de vous connecter et Internet ne bloque pas les connexions. PortForward.com peut aider avec ce dernier; le premier dépend du type de pare-feu installé sur votre ordinateur, le cas échéant.

J'espère que cela t'aides!

2
stevenmirabito

J'ai finalement obtenu que cela fonctionne pour moi; configuration: ordinateur portable plus ancien exécutant ubuntu 13.10 exécutant l’unité standard; J'ai installé cairo dock (ce qui le rend beaucoup plus utilisable pour moi); toujours pas utilisé à la barre de l'application de gauche;

Ce serait bien de pouvoir utiliser mon système win7 pour le rdp dans cet Ubuntu 13.10, alors j'ai passé deux heures ce matin à faire des recherches. Voici ce que j'ai fait:

Sudo apt-get update
Sudo apt-get install xrdp

ou vous pouvez utiliser le logiciel ubuntu center pour l’installer.

L'installation semblait aller bien et il est apparu que le service xrdp avait été lancé correctement.

Dans ma boîte de dialogue win7, j'ai ouvert une fenêtre rdp et utilisé l'adresse IP de l'ordinateur portable pour entrer; une fenêtre s’est ouverte mais il ne s’agit que d’un écran standard de x11 fenêtres (hachures croisées avec curseur x); pas de liens, icônes ou menus à utiliser.

Plus de recherche sur Google. J'ai installé le gnome-session-fallback:

$ Sudo apt-get install gnome-session-fallback
$ echo "gnome-session --session=gnome-fallback" > ~/.xsession

Cela n'a pas fonctionné J'ai le même écran vide, mais j'ai trouvé une autre URL suggérant une autre gestionnaire de session Windows comme XFCE. J'ai donc installé xubuntu desktop:

$ Sudo apt-get install xubuntu-desktop
$ echo "xfce4-session" > ~/.xsession

N'oubliez pas de Sudo /etc/init.d/xrdp restart après toutes les modifications.

Cela a fonctionné. Au début, lors du démarrage initial de la session rdp, le même écran vide s’est affiché mais après 10 secondes (probablement parce que j’utilise un VDI Win7 au travail à partir d’un emplacement distant), un bureau xfce xubuntu utilisable est apparu; pas aussi gentil que gnome mais très utilisable.

J'espère que cette information vous sera utile, car je n'ai pas réussi à obtenir les premières tentatives pour que je travaille.

Dave

1
user224176

Bienvenue dans la communauté Ubuntu.

Vérifiez tout d’abord les paramètres réseau de la machine virtuelle Windows dans Virtual Box. Choisissez Bridge Connection dans les paramètres réseau. Vérifiez que RDP est autorisé à passer à travers le pare-feu du client Windows.

1
Ketan Patel
Sudo ufw disable 

essayez ensuite de vous connecter à l’aide de votre logiciel client rdp ... Je suis en train de le configurer pour 12.04 linux vps, jusqu'à présent je me suis connecté mais je ne voyais pas un ordinateur de bureau seulement une fenêtre de commande.

Bonjour mon pote, tu as dit que tu étais connecté et que tout ce que tu vois est une fenêtre de terminal, je ne sais pas quelle est ta configuration complète, mais voici le mien, j'espère que ça aide.

Assurez-vous que votre vncserver fonctionne sous vncserver :1 next nano dans ~/.vnc/xstartup ceci vous mènera à un bac! fichier bla bla, où vous voyez la dernière ligne (& -x-window-manager), ajoutez & /etc/X11/Xsession &

Maintenant, allez dans ce fichier, /etc/xrdp/startwm.sh et assurez-vous que la dernière ligne est

. /etc/X11/Xsession

après cela, redémarrez le vncserver en procédant ainsi.

vncserver -kill :1 

puis redémarrer

vncserver :1

En passant, j’ai dû installer plus que Xrdp et j’ai fait quelques commandes supplémentaires pour me replier en cas d’échec de Xrdp. Tout semble bon à la minute près pour moi, essayez-le et laissez savoir ce qui cuit ou non. Bonne chance. Ps .. ses taches de roussette super quand il fonctionne, restez avec elle.

1
jamjam

Exécutez les commandes dans le terminal:

Sudo apt-get install xrdp
Sudo apt-add-repository ppa:ubuntu-mate-dev/ppa
Sudo apt-add-repository ppa:ubuntu-mate-dev/trusty-mate
Sudo apt-get update 
Sudo apt-get upgrade
Sudo apt-get install ubuntu-mate-core ubuntu-mate-desktop


echo mate-session >~/.xsession
Sudo service xrdp restart
0
Antony Ruddy

Si seul le port 22 est autorisé à traverser le pare-feu et que vous ne maîtrisez pas votre chemin d'accès réseau, vous pouvez utiliser ssh tunneling pour canaliser le port de votre choix sur le terminal distant vers votre système local.

Si vous faites cela depuis une machine Linux/Unix, regardez l’indicateur -L pour ssh:

ssh -L 3390:127.0.0.1:3389 -l remote_user remote_Host

où le premier 3390 est le numéro de port local et le second 3389 est le numéro de port distant; vous devez ensuite RDC à 127.0.0.1:3390 pour vous connecter. Notez que le tunnel est lié à la session SSH - si vous fermez cette session SSH, le tunnel sera également fermé et votre connexion au poste de travail distant sera interrompue. Assurez-vous que vous utilisez un port inutilisé pour le côté local.

Si vous vous connectez à partir d'un système Windows, utilisez PuTTY et activez les options de tunneling SSH pour votre session (voir connexion-> SSH-> Tunnels dans les options de configuration de session).

Une fois le tunnel établi, vous pouvez utiliser le client RDP choisi pour vous connecter. Plusieurs des autres réponses abordent cette partie de la configuration (personnellement, je me suis retrouvé à la suite de la suggestion de xfce4-session.)

0
user292300