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 / 505473
Accepted
Tim
Tim
Asked: 2019-03-11 05:34:05 +0800 CST2019-03-11 05:34:05 +0800 CST 2019-03-11 05:34:05 +0800 CST

Após ssh sem -X para uma máquina, é possível alterar $ DISPLAY para fazê-lo funcionar como ssh -X?

  • 772

Após sshsem -Xpara uma máquina, é possível alterar algumas configurações (por exemplo $DISPLAY) para que funcione como ssh -X? Se não, qual o motivo? Obrigado.

ssh x11
  • 1 1 respostas
  • 2774 Views

1 respostas

  • Voted
  1. Best Answer
    mosvy
    2019-03-11T06:37:17+08:002019-03-11T06:37:17+08:00

    Você pode criar uma segunda conexão com o encaminhamento X11 habilitado e, em seguida, também pode usar a DISPLAYvariável de ambiente da segunda conexão na primeira.

    Na 1ª janela:

    $ ssh user@host
    user@host$ ...
    

    Na 2ª janela:

    $ ssh -Y user@host 'echo $DISPLAY; while sleep 3600; do :; done'
    localhost:10.0
    

    De volta à 1ª janela:

    user@host$ export DISPLAY=localhost:10.0
    user@host$ xterm
    

    Infelizmente, sshnão faz nada para conter os encaminhamentos X11 (ou outros) para o processo/sessão que iniciou ou para o usuário que executa na máquina remota (por exemplo, usando soquetes Unix com/sem verificação de credenciais ou usando namespaces), e esses encaminhamentos são soquetes de escuta tcp simples aos quais qualquer pessoa na máquina remota pode se conectar; toda a segurança do encaminhamento X11 depende da autenticação X11.

    X11 Encaminhamento Manual

    A sshd_config(5)página de manual menciona que:

    desabilitar o encaminhamento X11 não impede que os usuários encaminhem o tráfego X11, pois os usuários sempre podem instalar seus próprios encaminhadores.

    Aqui está como você pode fazer isso manualmente.

    Antes de tudo, certifique-se de desabilitar qualquer controle de acesso baseado em host ou usuário que ignore o mecanismo de autenticação x11 [1]:

    $ xhost $(xhost | sed -n /:/s/^/-/p)
    access control enabled, only authorized clients can connect
    

    Em seguida, mostre as informações de autenticação DISPLAY=:0na máquina local:

    $ xauth list :0
    ohzd/unix:0  MIT-MAGIC-COOKIE-1  a86982ddce0c1e1c1a8c5e8b2846e43b
    

    Conecte-se à máquina remota sem nenhum encaminhamento X11:

    $ ssh user@hzy64
    user@hzy64's password:
    [motd snipped]
    

    Abra a linha de comando via ~Ce adicione um encaminhamento remoto da porta 6000+43para o soquete unix correspondente ao display :0:

    hzy64$~C
    ssh> -R 6043:/tmp/.X11-unix/X0
    Forwarding port.
    

    Defina o $DISPLAYenvvar e adicione as informações de autenticação do local para a máquina remota:

    hzy64$ export DISPLAY=localhost:43
    hzy64$ xauth add $DISPLAY . a86982ddce0c1e1c1a8c5e8b2846e43b
    xauth:  file /home/user/.Xauthority does not exist
    

    Agora você está pronto para ir:

    hzy64$ xterm
    

    [1] por causa de uma correção de bug mal orientada , o controle de acesso baseado no usuário é ativado por padrão no Debian via /etc/X11/Xsession.d/35x11-common_xhost-local. Pior, é o único disponível por padrão no XWayland, onde também não pode ser desativado . Qualquer programa que faça proxy do protocolo X11 (por exemplo xscope, ) terá que fazer sua própria verificação de cookies de autenticação x11 (da maneira como o ssh faz), a menos que queira abrir um buraco no servidor X11.

    • 36

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

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

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

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +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

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