21 votes

Comment faire pour que la redirection X11 fonctionne sous Windows avec PuTTY et Xming ?

J'ai toujours voulu faire fonctionner le X11 Forwarding avec PuTTY, et le système X Window que j'utilise est Xming. Lorsque j'ai Xming en cours d'exécution et que j'établis une nouvelle connexion à mon serveur, je reçois le message suivant après une commande :

$ firefox
PuTTY X11 proxy: wrong authentication protocol attemptedPuTTY X11 proxy: wrong authentication protocol attemptedError: cannot open display: localhost:10.168

$ google-chrome
PuTTY X11 proxy: wrong authentication protocol attempted
(google-chrome:7083): Gtk-WARNING **: cannot open display: localhost:10.168

$ gedit
PuTTY X11 proxy: wrong authentication protocol attempted
** (gedit:6990): WARNING **: Could not open X display
PuTTY X11 proxy: wrong authentication protocol attemptedCannot open display:
Run 'gedit --help' to see a full list of available command line options.

$ gnome-system-monitor
PuTTY X11 proxy: wrong authentication protocol attempted
** (gnome-system-monitor:7024): WARNING **: Could not open X display
PuTTY X11 proxy: wrong authentication protocol attempted
(gnome-system-monitor:7024): Gtk-WARNING **: cannot open display: localhost:10.168

Comment puis-je corriger ces erreurs et faire en sorte que le X11 Forwarding fonctionne dans son ensemble ?

17voto

sibaz Points 311

J'ai eu 2 problèmes et j'ai trouvé que cette question avait les problèmes les plus proches des miens, donc j'ai pensé que ma solution serait utile aux autres qui arrivent ici, essayant de résoudre le même problème que moi. Mon système a Cygwin/X (xinit 1.3.4-5), et PuTTY (0.64). J'ai réussi à résoudre le problème en configurant à la fois --listen tcp sur le startxbin local et en passant le chemin vers .Xauthority à putty.

Tout d'abord, en ce qui concerne le message "PuTTY X11 proxy : unable to connect to forwarded X server : Erreur réseau : Connection refused", vous devez faire en sorte que la session X écoute les connexions : Ouvrez un terminal cygwin et éditez /usr/bin/startxwin trouvez la ligne...

defaultserverargs="-multiwindow"

et le changer en...

defaultserverargs="-multiwindow -listen tcp"

Deuxièmement, en réponse à l'erreur "Autorisation requise, mais aucun protocole d'autorisation n'est spécifié", vous devez faire en sorte que putty utilise les jetons xauth corrects (quelque chose d'étrange semble se passer dans putty donc xauth list localement ne donne pas de jetons que la connexion transférée peut utiliser en les passant dans xauth add <token> (il semble qu'ils doivent être définis par PuTTY à la connexion, pour qu'ils fonctionnent).
Trouvez le chemin, dans le domaine Windows, où se trouve votre fichier ~/.Xauthority en exécutant (dans le terminal cygwin à nouveau)

cd ~
explorer .

Vérifiez les propriétés du fichier .Xauthority et notez l'emplacement de celui-ci (sélectionnez-le et appuyez sur CTRL+C pour le mettre dans le presse-papiers).

Démarrez PuTTY comme dans l'exemple ci-dessus (copié de http://www.math.umn.edu/systems_guide/putty_xwin32.html )

Sur la page "Options de contrôle de la redirection SSH X11", vous devez avoir coché "Activer la redirection X11" et défini "MIT-Magic-Cookie-1" comme protocole.
Dans le champ 'Fichier d'autorité X pour l'affichage local', cliquez sur Parcourir et, en utilisant l'emplacement du fichier .Xauthority que vous avez noté plus tôt, trouvez le fichier .Xauthority. Cliquez sur Ouvrir pour remplir le champ, puis retournez dans Session (dans la configuration de PuTTY) et enregistrez la session. Vous pouvez ensuite cliquer sur Ouvrir.

Il devrait maintenant vous permettre de vous connecter.

12voto

Kruug Points 5162

Copié de : http://www.math.umn.edu/systems_guide/putty_xwin32.html

Configuration de Putty

  • Ajouter un nom d'hôte Unix
  • Passer du protocole à SSH
  • Tapez le nom de la session dans les sessions sauvegardées
  • Cliquez sur "Enregistrer".

<img src='putty_xwin32/default_putty_rev-sm.png'/>

  • Développez l'onglet "SSH" dans la liste "Catégorie".
  • Choisissez 'X11' dans la liste 'SSH'.
  • Cochez la case "Activer le transfert X11".

<img src='putty_xwin32/xfwd_putty_rev-sm.png'/>

  • Choisissez "Session" dans la liste des "Catégories".
  • Cliquez sur "Enregistrer".

Démarrage du serveur X sous Windows

Configuration de Xming

Exécutez simplement "Tous les programmes > Xming Xming" et cela devrait fonctionner si vous avez configuré PuTTY.

Connexion

  • Démarrer Xming
  • Mastic de départ
  • Double-cliquez sur la session sauvegardée que vous voulez

<img src='putty_xwin32/session_putty_rev-sm.png'/>

  • Entrez le nom d'utilisateur et le mot de passe comme demandé
  • Vous devriez maintenant être en mesure d'exécuter des applications X à partir de l'hôte sur votre bureau local.

EDIT : Pour corriger le wrong authentication protocol attempted essayez d'activer "ForwardX11Trusted yes" dans le fichier /etc/ssh/sshd_config, puis redémarrez le serveur OpenSSH.

1voto

nddprasanth Points 11

La solution de Kruug a fonctionné pour moi avec quelques étapes supplémentaires comme indiqué ci-dessous.

Comme je me connectais avec ec2-user avant de passer à oracle utilisateur. Assurez-vous que le .Xauthority est copié sur le fichier oracle le domicile de l'utilisateur.

cp /home/ec2-user/.Xauthority /home/oracle/

Comment ai-je fait le test ? J'ai installé xclock

yum install xclock

Puis j'ai couru xclock (Attendez quelques secondes, si vous obtenez une petite fenêtre pop-up d'une horloge analogique, tout va bien).

xclock

0voto

Vous pouvez

xauth list

puis

xauth add <your display>

0voto

Mes étapes, en utilisant DISPLAY 20 (puisque la valeur par défaut peut être déjà utilisée)

Sous Windows,

C:\Program Files (x86)\Xming>xming :20 -ac

Sur Putty, créez une redirection de port inverse, par exemple 6020 dans le distant vers le même port dans le local Windows :

enter image description here enter image description here

Du côté d'Unix :

export DISPLAY=:20
<your visual app>

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X