AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 412065
Accepted
Dadep
Dadep
Asked: 2017-12-21 07:47:11 +0800 CST2017-12-21 07:47:11 +0800 CST 2017-12-21 07:47:11 +0800 CST

conexão ssh. Conexão X11 rejeitada devido a autenticação incorreta

  • 772

Ao tentar acessar um cluster em meu laboratório por ssh e funcionar. mas depois não consigo fazer nada:

user@users:~> nautilus
X11 connection rejected because of wrong authentication.
Could not parse arguments: Cannot open display

ou

user@users:~> gedit
X11 connection rejected because of wrong authentication.

(gedit:151222): Gtk-WARNING **: cannot open display: localhost:11.0

Funcionou até hoje... e não sei como verificar se algo mudou. Eu não tenho a senha de root para esta máquina, há algo que eu possa fazer?

Eu li muita coisa sobre esse erro como este, mas nada resolvido ...

EDITAR:

O sistema operacional local é o Ubuntu 16 e o ​​servidor é o OpenSuse. Estou conectando desta forma:

ssh -XY -p22 [email protected]

EDIÇÃO 2:

user@users:~> env
MODULE_VERSION_STACK=3.1.6
LESSKEY=/etc/lesskey.bin
NNTPSERVER=news
INFODIR=/usr/local/info:/usr/share/info:/usr/info
MANPATH=/usr/local/man:/usr/share/man
HOSTNAME=users
XKEYSYMDB=/usr/share/X11/XKeysymDB
HOST=users
TERM=xterm-256color
SHELL=/bin/bash
PROFILEREAD=true
HISTSIZE=1000
SSH_CLIENT=10.44.0.1 49729 22
MORE=-sl
SSH_TTY=/dev/pts/2
JRE_HOME=/usr/lib64/jvm/jre
USER=user
LS_COLORS=no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.exe=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.avi=01;35:*.bmp=01;35:*.fli=01;35:*.gif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mng=01;35:*.mov=01;35:*.mpg=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.tga=01;35:*.tif=01;35:*.xbm=01;35:*.xpm=01;35:*.dl=01;35:*.gl=01;35:*.wmv=01;35:*.aiff=00;32:*.au=00;32:*.mid=00;32:*.mp3=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:
LD_LIBRARY_PATH=/usr/local/cuda-5.5/lib:/usr/local/cuda-5.5/lib64:
XNLSPATH=/usr/share/X11/nls
ENV=/etc/bash.bashrc
HOSTTYPE=x86_64
FROM_HEADER=
MSM_PRODUCT=MSM
PAGER=less
CSHEDIT=emacs
XDG_CONFIG_DIRS=/etc/xdg
MINICOM=-c on
MODULE_VERSION=3.1.6
MAIL=/var/mail/user
PATH=/usr/local/cuda-5.5/bin:/home/user/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/X11R6/bin:/usr/games:/usr/lib64/jvm/jre/bin:/usr/lib/mit/bin:/usr/lib/mit/sbin
CPU=x86_64
JAVA_BINDIR=/usr/lib64/jvm/jre/bin
INPUTRC=/home/user/.inputrc
PWD=/home/user
JAVA_HOME=/usr/lib64/jvm/jre
LANG=en_US.UTF-8
PYTHONSTARTUP=/etc/pythonstart
MODULEPATH=/usr/share/modules:/usr/share/modules/modulefiles
LOADEDMODULES=
QT_SYSTEM_DIR=/usr/share/desktop-data
SHLVL=1
HOME=/home/user
LESS_ADVANCED_PREPROCESSOR=no
OSTYPE=linux
LS_OPTIONS=-N --color=tty -T 0
XCURSOR_THEME=DMZ
MSM_HOME=/usr/local/MegaRAID Storage Manager
WINDOWMANAGER=/usr/bin/gnome
G_FILENAME_ENCODING=@locale,UTF-8,ISO-8859-15,CP1252
LESS=-M -I
MACHTYPE=x86_64-suse-linux
LOGNAME=user
XDG_DATA_DIRS=/usr/share:/etc/opt/kde3/share:/opt/kde3/share
SSH_CONNECTION=172.17.10.15 22
MODULESHOME=/usr/share/modules
LESSOPEN=lessopen.sh %s
INFOPATH=/usr/local/info:/usr/share/info:/usr/info
DISPLAY=localhost:12.0
XAUTHLOCALHOSTNAME=users
LESSCLOSE=lessclose.sh %s %s
G_BROKEN_FILENAMES=1
JAVA_ROOT=/usr/lib64/jvm/jre
COLORTERM=1
_=/usr/bin/env
ssh x11
  • 3 3 respostas
  • 53525 Views

3 respostas

  • Voted
  1. Best Answer
    RubberStamp
    2017-12-24T07:35:20+08:002017-12-24T07:35:20+08:00

    Xauthority Mini Como fazer

    Em sistemas GNU/Linux executando um servidor de exibição X11, o arquivo ~/.Xauthorityarmazena cookies de autenticação ou chaves criptográficas usadas para autorizar a conexão com a exibição. Na maioria dos casos, o mecanismo de autenticação é um cookie simétrico conhecido como Magic Cookie. O mesmo cookie é usado tanto pelo servidor quanto pelo cliente.

    Cada cookie de autenticação X11 está sob o controle do usuário autenticado pelo sistema individual. Como o cookie de autenticação é armazenado como um token de segurança de texto simples, as permissões no ~/.Xauthorityarquivo devem ser rwapenas para o proprietário, 600em formato octal. No entanto, as permissões no arquivo de autorização não são impostas.

    Um usuário pode listar, exportar, criar ou excluir cookies de autenticação usando o xauthprograma. O comando a seguir criará um cookie de autorização para arquivos DISPLAY 32.

    xauth add localhost:32 - `mcookie`
    

    A criação manual e a manipulação de cookies geralmente não são necessárias ao usar o encaminhamento X11 com ssh, porque sshinicia um proxy X11 na máquina remota e gera automaticamente cookies de autorização na exibição local. No entanto, para determinadas configurações, o cookie de autorização pode precisar ser criado manualmente e copiado para a máquina local.

    Isso pode ser feito em uma sshsessão e depois usar scppara copiar o cookie.

    sshna máquina remota:

    ssh -XY user@remote
    

    Verifique se um cookie de autorização está presente para a exibição atual do X11

    echo $DISPLAY
    xauth list
    

    Se não houver nenhuma variável de ambiente nomeada $DISPLAY, o proxy X11 não foi iniciado corretamente. É importante observar que DISPLAY 0normalmente os usuários estão conectados localmente e só estão em execução se um xserver tiver sido iniciado localmente via xinit. Não há nenhum requisito para um servidor X11 iniciado localmente para que o encaminhamento X11 funcione por meio de ssh.

    Se houver uma $DISPLAYvariável de ambiente definida, mas nenhum cookie de autorização correspondente para esse número de exibição, você poderá criar um:

    xauth add $DISPLAY - `mcookie`
    

    E verifique se agora existe um cookie:

    xauth list
    

    Você pode copiar esse cookie e mesclá-lo na máquina local:

    user@remote> xauth nextract ~/xcookie $DISPLAY
    user@remote> exit
    user@local> scp user@remote:~/xcookie ~/xcookie
    user@local> xauth nmerge ~/xcookie
    

    Em seguida, verifique se o cookie foi instalado:

    user@local> xauth list
    

    Experimente sua conexão ssh de encaminhamento X11.

    Notas sobre~/.Xauthority

    ~/.Xauthorityé um arquivo binário que contém todas as informações de autorização para cada exibição que o usuário pode acessar. Cada registro é delimitado pelos dois bytes 0x0100. Cada campo é precedido por uma contagem hexidêmica do número de bytes do campo. Todo o texto é codificado em ASCII hexadecimal. A tabela a seguir é a estrutura básica da configuração mais comum de uma autorização MIT MAGIC COOKIE:

    -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
     0100              0004        61616161           0002           3435                    0012          4d49542d4d414749432d434f4f4b49452d31   0010          c0bdd1c539be89a2090f1bbb6b414c2c 
    ----------------- ----------- ------------------ ------------  ----------------------  -------------  -------------------------------------- ------------ ---------------------------------------
     start-of-record   0xNumBytes  0xASCII Hostname   0xNumBytes     0xASCII Display Num     0xNumBytes    0xASCII Auth Type                      0xNumBytes    0xkey
    -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    

    A linha superior pode ser recuperada do ~/.Xauthorityarquivo por meio do xauth nlistcomando. Obviamente, seu arquivo de autorização terá informações diferentes do meu exemplo.

    Se as extensões de segurança estiverem em uso com o servidor X11, há várias opções de configuração para cada linha de autorização, incluindo autorização por tempo limitado por cookie.

    • 31
  2. Heath Raftery
    2022-07-14T19:15:41+08:002022-07-14T19:15:41+08:00

    Conforme explicado aqui , gostaria de salientar que sintomas semelhantes agora ocorrem por um motivo muito diferente, para evitar que as pessoas caiam em longas xauthtocas de coelho.

    Qualquer coisa instalada com o Snap não funcionará. Então xeyese xclockpode funcionar, mas uma nova instalação do chromium-browserou firefoxno Ubuntu não funcionará.

    A solução é simplesmente fazer: export XAUTHORITY=$HOME/.Xauthorityantes de executar o aplicativo X11 remoto.

    • Ref 1: https://forum.snapcraft.io/t/x11-forwarding-using-ssh/2381
    • Ref 2: https://forum.snapcraft.io/t/x11-connection-rejected-because-of-wrong-authentication/16528/3
    • 3
  3. Fred
    2021-11-11T10:31:32+08:002021-11-11T10:31:32+08:00

    Eu tive esse problema ao tentar instalar um software que realmente queria usar uma GUI (ou seja, não consegui descobrir uma maneira de instalá-lo sem uma GUI). Meu problema era que eu estava tentando executar o executável sudoe sudotinha a autenticação errada.

    Dica: use xhosto comando

    O comando xhosté útil porque informa se o seu usuário tem acesso à conexão X11

    No meu caso, meu usuário teve acesso:

    fred@machinename $ xhost
    access control disabled, clients can connect from any host
    SI:localuser:fred
    

    mas usando sudonão tive acesso:

    fred@machinename $ sudo xhost
    X11 connection rejected because of wrong authentication.
    xhost:  unable to open display "localhost:10.0"
    

    Depois que descobri isso, ele explicou por que os programas executados com sudoo erro de autenticação.

    Minha solução

    Para corrigir isso fiz o seguinte:

    Obter valor de$DISPLAY

    fred@machinename $ echo $DISPLAY
    localhost:10.0
    

    Obtenha o valor do cookie mágico que corresponde ao número de $DISPLAY, no meu caso, este é o valor de 10:

    fred@machinename $ xauth list
    machinename:4  MIT-MAGIC-COOKIE-1  e76c006944a28a5dbd3c54a0deadbeef
    machinename/unix:4  MIT-MAGIC-COOKIE-1  e76c006944a28a5dbd3c54a0deadbeef
    machinename/unix:10  MIT-MAGIC-COOKIE-1  cdead42e9b4c159505c0c830deadbeef
    

    Mude o usuário para root:

    fred@machinename $ sudo su -
    

    Adicione o valor do cookie mágico ao Xauthority:

    root@machinename # xauth add gcashvapp511u/unix:10  MIT-MAGIC-COOKIE-1  cdead42e9b4c159505c0c830deadbeef
    

    Verifique se foi adicionado corretamente:

    root@machinename # cat ~/.Xauthority 
    machinename10MIT-MAGIC-COOKIE-1���.�L���0[���[root@machinename ~]# export DISPLAY=localhost:10.0
    

    Verifique se está funcionando:

    root@machinename # xhost
    access control disabled, clients can connect from any host
    SI:localuser:fred
    

    Então, como root, executei meu programa e finalmente consegui executar a GUI que tanto desejava para instalar.

    • 2

relate perguntas

  • Por que o utilitário ssh é considerado um pty?

  • Auto-SSH funciona manualmente, mas não em segundo plano

  • Execute o aplicativo X remotamente, execute a GUI no host remoto [fechado]

  • rsync porta 22 e 873 uso

  • Aborto repentino do SCP: tubo quebrado, código de autenticação de mensagem incorreto

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Matriz JSON para bash variáveis ​​usando jq

    • 4 respostas
  • Marko Smith

    A data pode formatar a hora atual para o fuso horário GMT? [duplicado]

    • 2 respostas
  • Marko Smith

    bash + lê variáveis ​​e valores do arquivo pelo script bash

    • 4 respostas
  • Marko Smith

    Como posso copiar um diretório e renomeá-lo no mesmo comando?

    • 4 respostas
  • Marko Smith

    conexão ssh. Conexão X11 rejeitada devido a autenticação incorreta

    • 3 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Marko Smith

    comando systemctl não funciona no RHEL 6

    • 3 respostas
  • Marko Smith

    rsync porta 22 e 873 uso

    • 2 respostas
  • Marko Smith

    snap /dev/loop em 100% de utilização -- sem espaço livre

    • 1 respostas
  • Marko Smith

    chave de impressão jq e valor para todos no subobjeto

    • 2 respostas
  • Martin Hope
    EHerman Matriz JSON para bash variáveis ​​usando jq 2017-12-31 14:50:58 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Drux A data pode formatar a hora atual para o fuso horário GMT? [duplicado] 2017-12-26 11:35:07 +0800 CST
  • Martin Hope
    AllisonC Como posso copiar um diretório e renomeá-lo no mesmo comando? 2017-12-22 05:28:06 +0800 CST
  • Martin Hope
    Steve Como as permissões de arquivo funcionam para o usuário "root"? 2017-12-22 02:46:01 +0800 CST
  • Martin Hope
    Bagas Sanjaya Por que o Linux usa LF como caractere de nova linha? 2017-12-20 05:48:21 +0800 CST
  • Martin Hope
    Cbhihe Altere o editor padrão para vim para _ sudo systemctl edit [unit-file] _ 2017-12-03 10:11:38 +0800 CST
  • Martin Hope
    showkey Como baixar o pacote não instalá-lo com o comando apt-get? 2017-12-03 02:15:02 +0800 CST
  • Martin Hope
    youxiao Por que os diretórios /home, /usr, /var, etc. têm o mesmo número de inode (2)? 2017-12-02 05:33:41 +0800 CST
  • Martin Hope
    user223600 gpg — o comando list-keys gera uid [ desconhecido ] depois de importar a chave privada para uma instalação limpa 2017-11-26 18:26:02 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve