Vraag Hoe kan ik de waarschuwing voorkomen Geen xauth-gegevens; valse authenticatiegegevens gebruiken voor X11-doorsturen?


Telkens wanneer ik een ssh-verbinding van mijn Mac naar een Linux (Debian) start, krijg ik deze waarschuwing:

No xauth data; using fake authentication data for X11 forwarding.

Dit gebeurt ook voor tools die ssh gebruiken, zoals git of mercurial.

Ik wil gewoon een lokale wijziging in mijn systeem aanbrengen om te voorkomen dat dit verschijnt.

Opmerking: ik heb X11-server (XQuartz 2.7.3 (xorg-server 1.12.4)) op mijn Mac OS X (10.8.1) en het werkt naar behoren, ik kan de klok lokaal of op afstand met succes starten.


50
2017-08-30 14:42


oorsprong


Welk commando gebruik je om te ssh? - DerfK
@DerfK gewoon ssh hostname maar in mijn ~/.ssh/config ik voegde toe ForwardX11 yes een tijdje geleden. Toch is dit iets dat ik daar wil hebben. - sorin
Met behulp van Ubuntu 16.04 LTS (augustus 2017) geef ik het op. Waar het op neer komt is dat hoewel het de fout geeft, het werkt. ik gebruik ssh -Y hostname van Linux, en ssh -x hostname bij gebruik van OpenSSH op Windows. - SDsolar


antwoorden:


Geen van de geposte oplossingen werkte voor mij. Op mijn client (bureaublad) -systeem wordt macOS 10.12.5 (Sierra) uitgevoerd. ik voegde toe -v naar de opties voor de ssh commando en het vertelde me

debug1: No xauth program.

wat betekent dat het geen juiste weg heeft naar de xauth programma. (Op deze versie van macOS het pad naar xauth is niet standaard.) De oplossing was om deze regel toe te voegen aan /etc/ssh/ssh_config (kan zijn /etc/ssh/config in sommige opstellingen) of in ~/.ssh/config (als u geen beheerdersrechten hebt):

XAuthLocation /opt/X11/bin/xauth

Nu is het waarschuwingsbericht verdwenen.


47
2017-07-04 22:19



OMG. Jaren heb ik geprobeerd een oplossing te vinden, en dit werkte. Jaren zeg ik! Merk op dat ik dit heb gedaan door die regel toe te voegen onder de Host * invoer in mijn ~/.ssh/config bestand in plaats van bewerken /etc/ssh/ssh_config. De enige documentatie die ik hiervoor heb gevonden was in man sshd_config. - Demitri
Dit werkte ook voor mij. Ik begrijp dat XQuartz momenteel niet goed wordt onderhouden vanwege een gebrek aan financiering. Dus ik denk dat problemen als porten eigenlijk minder zijn dan ik zou verwachten. - AlanObject
Eindelijk gewerkt !!! - thuzhf
Op High Sierra; dit is degene die ook voor mij heeft gewerkt. - mklein9
Houd er rekening mee dat u dit probleem mogelijk ondervindt zelfs als je shell xauth kan vinden in je PATH! Ik denk dat de ssh-client jouw PATH om veiligheidsredenen schoonmaakt? - MarcH


Ik heb de oorzaak gevonden, mijn ~/.ssh/config was onvolledig, je hebt beide nodig:

Host *
    ForwardAgent yes
    ForwardX11 yes

Mijn fout was dat ik alleen de ForwardX11-optie opnam.


17
2017-08-30 14:49



Ik weet niet zeker waarom dit nodig / relevant is. ForwardAgent wordt gebruikt om in cache geplaatste sleutels toe te staan ssh-agent om door meerdere geneste SSH-verbindingen te gaan. Het moet geen relevantie hebben voor X11. En fwiw, volgens sommigen is het geen goed idee qua beveiliging: heipei.github.io/2015/02/26/... - underscore_d
Dat klinkt niet goed, wat helpt is om X11 door te sturen of de xauth-configuratie te repareren om het in te stellen. Het is niet gerelateerd aan ssh-agenten. - eckes


Zoals opgemerkt lijkt het dat xauth op OS X Yosemite is teruggevallen naar een oude versie die niet werkt met XQuartz's $DISPLAY instelling:

% xauth -V
1.0.9
% xauth generate $DISPLAY .
xauth: (argv):1:  bad display name "/private/tmp/com.apple.launchd(...)/org.macosforge.xquartz:0" in "add" command

8
2018-01-07 23:47



Ik heb dezelfde regels getest op OS X 10.11 en ik krijg geen foutmelding. Nog steeds dezelfde versie van XQuartz. - sorin
@guest Your xauth generate $DISPLAY . commando werkte op mijn Mac OS X High Sierra (10.13), en het loste mijn No xauth data; using fake authentication data for X11 forwarding. pb. - SebMa


Laat Ubuntu bash op Windows 10 uitvoeren ssh -X  om een ​​GUI-omgeving op een externe server te krijgen

  • Eerste

Installeer al het volgende. Op venster, installeren Xming. Gebruik op Ubuntu bash sudo apt install installeren ssh xauth xorg.

sudo apt install ssh xauth xorg
  • Tweede

Ga naar de map bevat ssh_config bestand, de mijne is /etc/ssh.

  • Derde

Bewerk ssh_config als beheerder (USE sudo). Binnen ssh_config, verwijder de hash # in de lijnen ForwardAgent, ForwardX11, ForwardX11Trusteden stel de bijbehorende argumenten in yes.

# /etc/ssh/ssh_config

Host *
    ForwardAgent yes
    ForwardX11 yes
    ForwardX11Trusted yes
  • voort

In ssh_config bestand, verwijder de voor hash # voor Port 22 en Protocol 2, en voeg ook een nieuwe regel toe aan het einde van het bestand om de xauth-bestandslocatie te vermelden, XauthLocation /usr/bin/xauth, onthoud dat je je eigen pad van xauth-bestand schrijft.

# /etc/ssh/ssh_config

#   IdentifyFile ...
    Port 22
    Protocol 2
#   Cipher 3des
#   ...
#   ...
    ...
    ...
    GSSAPIDelegateCredentials no
    XauthLocation /usr/bin/xauth
  • Vijfde

Nu omdat we klaar zijn met bewerken ssh_config bestand, sla het op als we de editor verlaten. Ga nu naar de map ~ of $HOME, toevoegen export DISPLAY=localhost:0 aan jouw .bashrc bestand en sla het op.

# ~/.bashrc
...
...
export DISPLAY=localhost:0
  • Laatste

We zijn bijna klaar. Start je bash-shell opnieuw, open je Xming programmeren en gebruiken ssh -X yourusername@yourhost. Geniet vervolgens van de GUI-omgeving.

ssh -X yourusername@yourhost

Het probleem zit ook in het Ubuntu-subsysteem in Windows en de koppeling is op

https://gist.github.com/DestinyOne/f236f71b9cdecd349507dfe90ebae776

Opmerking: de gelinkte tekst bevat 2 typefouten (XauthLocaion in plaats van XauthLocation)


8
2017-09-22 02:05



De vraag gaat niet over Windows. - kasperd
Op MacOS is het bijna hetzelfde, de verschillen zijn in plaats van Xming, we zouden moeten krijgen XQuartz, en de ssh_config bestand staat op een andere locatie, de mijne is /private/etc/ssh. - DestinyOne
En ook de laatste regel voor ssh_config zal zijn: XAuthLocation /opt/X11/bin/xauth - DestinyOne
Bewerken nodig: XauthLocaion-> XauthLocation (die bewerking is te klein voor mij om te maken). - echristopherson
Naast het installeren xming, ssh,xauth, en xorg (stap 1), het enige wat ik nodig had was export DISPLAY=localhost:0 - Eponymous


Er is momenteel een fout in MacOS. Ik ben dit ook tegengekomen. De oplossing voor mij betrof het toevoegen van het volgende aan mijn .bash_profile

dispdir=`dirname $DISPLAY`
dispfile=`basename $DISPLAY`
dispnew="$dispdir/:0"
if [ -e $DISPLAY -a "$dispfile" = "org.x:0" ]; then
  mv $DISPLAY $dispnew
fi
export DISPLAY=$dispnew

In wezen kan de naam voor de bestandspijp die aan uw X-wortel is gekoppeld, niet correct worden verwerkt en moet dus worden gecorrigeerd. :-)


2
2017-09-08 05:29



Ik betwijfel of dit de fout zou oplossen in GUI OS X-apps, zoals SourceTree. - sorin
Bevestigen dat het werkt op Sierra voor het uitvoeren van emacs met X - zoals de Mac de server is. dit zou ruim moeten werken in gevallen waarin de client zich op een externe machine bevindt - Mark Mullin


Inclusief

XAuthLocation / opt / local / bin / xauth in ~ / .ssh / config

in mijn macOS werkte Sierra 10.12.6 voor mij. Een kleine verandering ten opzichte van antwoord 7).


2
2017-08-01 14:45





ik heb zojuist ~ / .Xauthority (bestemmingsmachine) uit mijn hoofdmap en ssh -X 192.168.123.1 verwijderd en ik werkte.


1
2018-04-02 10:01



Ik kan bevestigen dat dit een antwoord is op Mac OS Sierra 10.12.4. ~ / .Xauthority verwijderen op SSH-server doet het: ~$ mv ~/.Xauthority ~/.Xauthority.bak  Een nieuwe magische cookie werd automatisch teruggeplaatst in ~ / .Xauthority nadat ik opnieuw was ingelogd. Er is helemaal geen Bash-scripting vereist. - Kenneth Pegasus


In mijn geval was het het probleem van .Xauthority met de Magic-cookie niet doorgestuurd, Fabby op http://askubuntu.com/questions/571116/ beveelt op 2014-11-14 om deze regel toe te voegen aan het einde van de .bashrc of. profiel om het doorsturen van xauth-sleutels tussen gebruikers toe te staan ​​bij het aanroepen van su:

export $(dbus-launch)

Ik heb ook eerder toegevoegd:

export XAUTHORITY=~/.Xauthority 

om ervoor te zorgen dat remote called met ssh -X ̍ @ het zal vinden.

In mijn geval .Xauthority is een symbolische link naar de oorspronkelijke gebruiker /home//.Xauthority I su from ...

  cd /home/<child_user>;ln -sf /home/<parent_user>/.Xauthority .xAuthority

met correcte rechten:

  sudo chown <parent_user> /home/<parent_user>/.profile
  chmod a+rw /home/<parent_user>/.profile 

dus het is toegankelijk voor en om. zal in staat zijn om apps aan te zetten en X-window resultaat te tonen op zijn lokale scherm gedurende proxy account!

TIP: Controleer de xauth-lijst ... als Magic-cookie wordt weergegeven.


1
2018-06-09 14:44