Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 15/03/2018, à 22:08

tarkan99

[résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

Hello,

je tente d'appliquer la doc sur ssh
https://doc.ubuntu-fr.org/ssh
chapitre 2.3

Je coince sur l'erreur

Failed to connect to Mir: Failed to connect to server socket: Aucun fichier ou dossier de ce type
Unable to init server: Impossible de se connecter : Connexion refusée
Error: cannot open display: :10.0

Les 2 machines sont sur xubuntu 16.04.1, dans le même sous réseau.

j'ai appliqué ce qui est conseillé sur la doc :
machine locale :

xhost +ipdistante
ssh -X user@ipdistante

la connexion distante s'ouvre.
La suite :

export DISPLAY=:10.0
firefox
Failed to connect to Mir: Failed to connect to server socket: Aucun fichier ou dossier de ce type
Unable to init server: Impossible de se connecter : Connexion refusée
Error: cannot open display: :10.0

Dans /etc/ssh/sshd_config je vois :

X11Forwarding yes
X11DisplayOffset 10

J'ai fouillé mais je trouve rien pour l'instant.

une idée ?

Merci d'avance.

Dernière modification par tarkan99 (Le 18/03/2018, à 09:41)


xubuntu 22.04.1 sur machine assemblée base de Core i5 9400

Hors ligne

#2 Le 15/03/2018, à 22:40

bruno

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

Bonsoir,

C'est quoi toutes ces complications avec xhost, display, etc. ?

Sur la machine sur laquelle tu essaies de te connecter(serveur) il faut effectivement que dans ans /etc/ssh/sshd_config X11Forwarding soit activé.
Sur le client tu te connectes avec l'option -X :

ssh -X toto@serveur

Puis tu lances l'application graphique :

toto@serveur:# firefox

Dernière modification par bruno (Le 15/03/2018, à 22:45)

En ligne

#3 Le 16/03/2018, à 16:02

tarkan99

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

Salut !

merci pour ton aide mais pas mieux, j'obtiens :

firefox
Error: no DISPLAY environment variable specified
echo $DISPLAY

(ne renvoie rien ou blanc)

Dernière modification par tarkan99 (Le 16/03/2018, à 16:03)


xubuntu 22.04.1 sur machine assemblée base de Core i5 9400

Hors ligne

#4 Le 16/03/2018, à 17:11

bruno

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

Sur la machine distante le serveur X.org est-il lancé ?

En ligne

#5 Le 17/03/2018, à 00:18

tarkan99

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

sudo Xorg -version
X.Org X Server 1.18.4
Release Date: 2016-07-19
X Protocol Version 11, Revision 0
Build Operating System: Linux 4.4.0-97-generic i686 Ubuntu

Je me connecte également en local à cette machine sans soucis (y compris avec x2go, le serveur tourne sur cette machine).
Je vois bien des process lié à Xorg.

root       984  0.0  1.8 168592 38716 tty7     Ss+  mars16   0:13 /usr/lib/xorg/Xorg -core :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
root      2310  2.7  3.2 163932 67512 tty9     Ss+  mars16   7:22 /usr/lib/xorg/Xorg -core :2 -seat seat0 -auth /var/run/lightdm/root/:2 -nolisten tcp vt9 -novtswitch
root      3387  0.3  3.6 195352 75040 tty8     Ss+  mars16   2:58 /usr/lib/xorg/Xorg -core :1 -seat seat0 -auth /var/run/lightdm/root/:1 -nolisten tcp vt8 -novtswitch

xubuntu 22.04.1 sur machine assemblée base de Core i5 9400

Hors ligne

#6 Le 17/03/2018, à 07:52

bruno

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

Pourtant ton retour en #3 est typique d'une connexion à un serveur sans environnement graphique : la variable d'environnement XDISPLAY n'est pas définie.
D'après la documentation de ssh le variable DISPLAY est automatiquement définie avec une valeur du type hôte:n.
Comme je n’avais pas utilisé ce type de connexion depuis très longtemps je viens de faire un essai entre un portable et mon ordinateur fixe (tous deux sous kubuntu 16.04, sans pare-feu, avec une session graphique active) et cela fonctionne parfaitement avec un simple commande ssh -X. Une fois connecté je peux voir la valeur de la variable DISPLAY :

echo $DISPLAY
localhost:10:0

En ligne

#7 Le 17/03/2018, à 13:22

tarkan99

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

Sur la machine distante, Xorg est bien actif :

  984 root      20   0  168976  29812   5420 S   0,3  1,4   0:13.78 Xorg

Connecté à distance via x2go, j'obtiens ceci :

echo $DISPLAY
:50.0

le problème n’apparaît que via ssh. Je vois cette erreur à la connexion ssh -X :

X11 forwarding request failed on channel 0

--> Le X11forwarding ne fonctionne pas.

Je regarde du coté de
https://unix.stackexchange.com/question … etting-set
et
https://unix.stackexchange.com/question … s-remotely

Je me demande si x2go server ne serait pas en cause ? (port écoute ssh 22 par défaut)

Je vais tenter un essai vers une machine dans x2go server.....

En attendant, voici un verbose de ssh -X (on voit que le port 22 est utilisé par défaut) :

debug2: we sent a password packet, wait for reply
debug1: Authentication succeeded (password).
Authenticated to bell ([XXXXXX]:22).
debug1: channel 0: new [client-session]
debug2: channel 0: send open
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: pledge: exec
debug1: client_input_global_request: rtype hostkeys-00@openssh.com want_reply 0
debug2: callback start
debug2: x11_get_proto: /usr/bin/xauth  list :1.0 2>/dev/null
debug1: Requesting X11 forwarding with authentication spoofing.
debug2: channel 0: request x11-req confirm 1
debug2: fd 3 setting TCP_NODELAY
debug2: client_session2_setup: id 0
debug2: channel 0: request pty-req confirm 1
debug1: Sending environment.
debug1: Sending env LANG = fr_FR.UTF-8
debug2: channel 0: request env confirm 0
debug2: channel 0: request shell confirm 1
debug2: callback done
debug2: channel 0: open confirm rwindow 0 rmax 32768
debug2: channel_input_status_confirm: type 100 id 0
X11 forwarding request failed on channel 0
debug2: channel_input_status_confirm: type 99 id 0
debug2: PTY allocation request accepted on channel 0
debug2: channel 0: rcvd adjust 2097152
debug2: channel_input_status_confirm: type 99 id 0
debug2: shell request accepted on channel 0
Welcome to Ubuntu 16.04.4 LTS (GNU/Linux 4.4.0-116-generic i686)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

0 paquet peut être mis à jour.
0 mise à jour de sécurité.

Dernière modification par tarkan99 (Le 17/03/2018, à 13:26)


xubuntu 22.04.1 sur machine assemblée base de Core i5 9400

Hors ligne

#8 Le 17/03/2018, à 14:30

bruno

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

C'est peut être x2go qui interfère effectivement.

En ligne

#9 Le 17/03/2018, à 14:41

maxire

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

Salut,

1 - Pas besoin de serveur X sur la machine distante (la machine à laquelle tu te connectes via ssh), par contre oui il est nécessaire sur la machine locale, la machine d'où tu te connectes via ssh.
2 - X2go utilise ssh, ton test ne prouve absolument rien
3 - As-tu bien activé le forwarding X11 dans la configuration du serveur ssh?

Les messages initiaux indiquent un serveur Mir or Mir n'est pas un serveur X, je ne sais pas si il existe un équivalent à Xwayland  qui assure la compatibilité des applications X sous Wayland dans Mir.
Si le serveur graphique utilisé est Mir je doute que le X11forwarding fonctionne!


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#10 Le 17/03/2018, à 15:25

bruno

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

@ maxire
1. tu es sûr vraiment ? Qui se connecte à quoi et qui affiche quoi ?
3. indiqué en #1

Pour mir c'est possible aussi que le souci vienne de là.

En ligne

#11 Le 17/03/2018, à 15:45

maxire

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

@bruno, certain pas besoin de serveur X côté machine distante; juste un gestionnaire de connexion démarré sans serveur X si tu veux te connecter en XDMCP ou en VNC, utiliser Lightdm avec start-default-seat=false dans sa configuration + XDMCP et/ou VNC activé(s)
Pour le point 3, nous ne le saurons pas tant que tarkan99 ne donne pas le contenu de /etc/ssh/sshd_config.

Mir est un excellent suspect!


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#12 Le 17/03/2018, à 16:06

bruno

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

Ok. je suis bien d'accord il faut un gestionnaire de connexion graphique (lightdm, gdm, sddm, etc.) ce qui implique la présence d'un serveur X.

Mais peu importe… AU vu de #7 le serveur Xorg est bien installé sur le serveur et xauth est bien disponible. Reste à savoir pourquoi la variable DISPLAY n'a pas de valeur attribuée lorsque trakan99 tente une connexion avec ssh -X

En ligne

#13 Le 17/03/2018, à 16:35

maxire

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

Nooon, Lightdm peut tourner sans lancer de serveur X!
J'ai donné l'option de configuration à utiliser pour cela, tu te connectes alors à Lightdm via XDMCP ou le serveur VNC interne de Lightdm.
C'est ce que j'ai paramétré.
Tu peux parfaitement utiliser un serveur d'applications graphiques sans que ce serveur soit équipé d'une carte graphique donc sans lancer de serveur X dans ce serveur.
C'est un truc vieux comme Xorg et XDM, donc 24 ans en gros.

Une illustration:

[frankenstein@frankenstein ~]$ loginctl session-status c18
c18 - frankenstein (1000)
           Since: Sat 2018-03-17 16:12:10 CET; 1min 9s ago
          Leader: 4034 (sshd)
          Remote: fd3f:cbd:fc2a:0:22cf:30ff:fec6:26f3
         Service: sshd; type tty; class user
           State: active
            Unit: session-c18.scope
                  ├─4034 sshd: frankenstein [priv]
                  ├─4043 sshd: frankenstein@notty
                  └─4044 caja

mars 17 16:12:10 frankenstein.home systemd[1]: Started Session c18 of user frankenstein.
[frankenstein@frankenstein ~]$ ps aux |grep X
franken+  4133  0.0  0.0  10884  2200 pts/0    S+   16:13   0:00 grep X
[frankenstein@frankenstein ~]$ ps aux |grep Xorg
franken+  4135  0.0  0.0  10884  2204 pts/0    S+   16:14   0:00 grep Xorg
[frankenstein@frankenstein ~]$ 

L'application graphique Caja tourne avec un affichage déporté vers le serveur X du client SSH et pourtant aucun serveur X ne tourne dans la machine faisant office de serveur SSH.
Autre illustration avec Lightdm sans serveur X:

[frankenstein@frankenstein ~]$ systemctl status lightdm
● lightdm.service - Light Display Manager
   Loaded: loaded (/etc/systemd/system/lightdm.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2018-03-17 12:24:40 CET; 4h 2min ago
     Docs: man:lightdm(1)
 Main PID: 517 (lightdm)
    Tasks: 3 (limit: 4114)
   Memory: 4.1M
   CGroup: /system.slice/lightdm.service
           └─517 /usr/bin/lightdm

mars 17 16:01:24 frankenstein.home lightdm[517]: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
mars 17 16:01:24 frankenstein.home lightdm[3160]: pam_unix(lightdm:session): session opened for user frankenstein by (uid=0)
mars 17 16:01:24 frankenstein.home lightdm[517]: Error activating login1 session: GDBus.Error:org.freedesktop.DBus.Error.NotSupported: Operation not supported
mars 17 16:05:00 frankenstein.home lightdm[517]: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
mars 17 16:05:00 frankenstein.home lightdm[3532]: pam_unix(lightdm-greeter:session): session opened for user lightdm by (uid=0)
mars 17 16:05:00 frankenstein.home lightdm[517]: Error activating login1 session: GDBus.Error:org.freedesktop.DBus.Error.NotSupported: Operation not supported
mars 17 16:05:01 frankenstein.home lightdm[3576]: pam_succeed_if(lightdm:auth): requirement "user ingroup nopasswdlogin" not met by user "frankenstein"
mars 17 16:05:07 frankenstein.home lightdm[517]: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
mars 17 16:05:07 frankenstein.home lightdm[3576]: pam_unix(lightdm:session): session opened for user frankenstein by (uid=0)
mars 17 16:05:07 frankenstein.home lightdm[517]: Error activating login1 session: GDBus.Error:org.freedesktop.DBus.Error.NotSupported: Operation not supported
[frankenstein@frankenstein ~]$

Exemple de Lightdm avec serveur X:

[aspire7730z@asus-arch ~]$ systemctl status lightdm
● lightdm.service - Light Display Manager
   Loaded: loaded (/etc/systemd/system/lightdm.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2018-03-17 15:15:11 CET; 1h 13min ago
     Docs: man:lightdm(1)
 Main PID: 411 (lightdm)
    Tasks: 6 (limit: 4433)
   Memory: 126.7M
   CGroup: /system.slice/lightdm.service
           ├─411 /usr/bin/lightdm
           └─416 /usr/lib/xorg-server/Xorg :0 -seat seat0 -auth /run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch

mars 17 15:15:11 asus-arch.home systemd[1]: Starting Light Display Manager...
mars 17 15:15:11 asus-arch.home systemd[1]: Started Light Display Manager.
mars 17 15:15:14 asus-arch.home lightdm[411]: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
mars 17 15:15:14 asus-arch.home lightdm[441]: pam_unix(lightdm-greeter:session): session opened for user lightdm by (uid=0)
mars 17 15:15:17 asus-arch.home lightdm[488]: pam_succeed_if(lightdm:auth): requirement "user ingroup nopasswdlogin" not met by user "aspire7730z"
mars 17 15:15:35 asus-arch.home lightdm[411]: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
mars 17 15:15:35 asus-arch.home lightdm[488]: pam_unix(lightdm:session): session opened for user aspire7730z by (uid=0)
[aspire7730z@asus-arch ~]$

Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#14 Le 17/03/2018, à 17:06

bruno

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

Bon, j'ai appris un truc wink
J'étais persuadé qu'il fallait un serveur X actif pour que XDMCP fonctionne. J'ai même vérifié sur la (vielle) doc http://en.tldp.org/HOWTO/XDMCP-HOWTO/procedure.html

EDIT : j'ai essayé ta configuration avec lightdm et effectivement cela fonctionne sans serveur xorg installé avec juste xauth wink

EDIT2 : en fait lightdm est inutile, seul xauth est requis pour le X11 Forwarding via SSH.

Dernière modification par bruno (Le 17/03/2018, à 18:40)

En ligne

#15 Le 17/03/2018, à 18:53

bruno

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

Mea culpa et merci à maxire de m'avoir détrompé sur l'utilité d'avoir xorg actif côté serveur.

Donc pour afficher une application graphique  via SSH (X11 Forwarding), il faut et il suffit que :

- X11Forwarding soit activé sur le serveur SSH (sshd_config du serveur);
- xauth soit installé sur le serveur ;
- ForwardX11 soit autorisé sur le client (ssh_config du client)

En ligne

#16 Le 17/03/2018, à 20:22

maxire

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

XDMCP date de décembre 1989 sorti avec X11R4, source Wikipédia.
Lightdm n'est pas indispensable pour du graphique sous ssh mais peut être utile essaie ceci:

ssh -X toto@serveur Xnest :100 -query localhost -terminate -audit 0

après avoir activé XDMCP dans Lightdm du serveur et installé Xnest.

En ce qui concerne la distinction entre XDMCP et X, ne t'inquiète pas j'ai moi-même mis du temps à comprendre qui est client graphique, qui est serveur graphique, comment établir les connexions à travers le réseau entre les deux.

Dernière modification par maxire (Le 18/03/2018, à 11:23)


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#17 Le 18/03/2018, à 09:40

tarkan99

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

J'ai trouvé la solution : IPV6 est désactivé sur le PC serveur. ça semble poser problème à X11forwarding.

En ajoutant

AddressFamily inet

pour forcer l'écoute en IPV4 uniquement dans sshd_config, ça fonctionne !

(trouvé ici : https://major.io/2014/07/24/x11-forward … channel-0/ )

echo $DISPLAY
localhost:10.0

Merci pour votre aide à tous les 2 !

Dernière modification par tarkan99 (Le 18/03/2018, à 09:43)


xubuntu 22.04.1 sur machine assemblée base de Core i5 9400

Hors ligne

#18 Le 18/03/2018, à 09:51

bruno

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

Quelle idée aussi de désactiver l'IPv6 ! wink

En ligne

#19 Le 18/03/2018, à 09:54

tarkan99

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

pour l'instant aucune utilité de IPV6 dans mon LAN smile


xubuntu 22.04.1 sur machine assemblée base de Core i5 9400

Hors ligne

#20 Le 18/03/2018, à 10:02

bruno

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

Certes mais à l'heure actuelle beaucoup d'outils privilégient les connexions IPv6 quand elles sont disponibles. Le désactiver peut donc avoir des effets indésirables, comme tu as pu le constater wink

Dernière modification par bruno (Le 18/03/2018, à 11:39)

En ligne

#21 Le 18/03/2018, à 10:24

michel_04

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

Bonjour,

tarkan99 a écrit :

J'ai trouvé la solution : IPV6 est désactivé sur le PC serveur. ça semble poser problème à X11forwarding.
En ajoutant

AddressFamily inet

pour forcer l'écoute en IPV4 uniquement dans sshd_config, ça fonctionne !

Merci pour l'info, j'avais ce souci avec un PC distant.

A+

Hors ligne

#22 Le 18/03/2018, à 10:58

maxire

Re : [résolu]"Failed to connect to Mir ...." via Tunneling serveurX par ssh

+1 avec Bruno, depuis que mon fournisseur (Orange) a mis à disposition IPV6 j'ai même basculé mon serveur http en IPV6 seulement.
IPV6 est beaucoup plus facile à gérer que IPV4, pas besoin de serveur DHCP et même pas besoin de serveur DNS local si tu utilises Avahi/ZeroConf.


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne