Essas mensagens podem ser eliminadas através de 1 de 3 métodos, usando apenas opções SSH. Você sempre pode enviar mensagens /dev/null
também, mas esses métodos tentam lidar com a mensagem através da configuração, em vez de apenas interceptá-los e descartá-los.
Método # 1 - instalar o xauth
O servidor no qual você está remotando está reclamando que não pode criar uma entrada no .Xauthority
arquivo do usuário , porque xauth
não está instalado. Então você pode instalá-lo em cada servidor para se livrar dessa mensagem irritante.
No Fedora 19 você instala xauth
assim:
$ sudo yum install xorg-x11-xauth
Se você tentar ssh
entrar no servidor, verá uma mensagem informando que uma entrada está sendo criada no .Xauthority
arquivo do usuário .
$ ssh root@server
/usr/bin/xauth: creating new authority file /root/.Xauthority
$
Logons subsequentes não mostrarão mais esta mensagem.
Método # 2 - desativá-lo via ForwardX11
Você pode instruir o ssh
cliente a não tentar ativar o encaminhamento do X11, incluindo o parâmetro SSH ForwardX11.
$ ssh -o ForwardX11=no root@server
Você pode fazer o mesmo com a -x
opção:
$ ssh -x root@server
Isso apenas desativará temporariamente esta mensagem, mas é uma boa opção se você não puder ou não quiser instalar xauth
no servidor remoto.
Método # 3 - desativá-lo via sshd_config
Normalmente, esse é o padrão, mas, caso contrário, você pode configurar o sshd
servidor para que o X11Forwarding esteja desativado /etc/ssh/sshd_config
.
X11Forwarding no
Dos três métodos, geralmente uso o número 2, porque geralmente desejarei usar a X11Forwarding
maioria dos meus servidores, mas não quero ver os X11....
avisos
$ HOME / .ssh / config
Na maioria das vezes, essas mensagens nem aparecem. Eles geralmente estão presentes apenas quando você tem as seguintes entradas no seu $HOME/.ssh/config
arquivo, na parte superior.
ServerAliveInterval 15
ForwardX11 yes
ForwardAgent yes
ForwardX11Trusted yes
GatewayPorts yes
Portanto, é essa configuração, que está impulsionando a geração dessas X11..
mensagens. Novamente, o método 2 parece ser o mais apropriado se você deseja operar com o ForwardX11 yes
padrão, mas desativa-o seletivamente para determinadas conexões ssh
da perspectiva do cliente .
Segurança
Geralmente, é desaconselhável continuar com ForwardX11 yes
isso o tempo todo. Portanto, se você deseja operar suas conexões SSH da maneira mais segura possível, é melhor fazer o seguinte:
- Não inclua
ForwardX11 yes
no seu $HOME/.ssh/config
arquivo
- Use o ForwardingX11 apenas quando precisar
ssh -X user@server
- Se você puder, desabilite
X11Forwarding
completamente no servidor para que não seja permitido
Referências
No meu caso, adicionar esta string para
/etc/ssh/sshd_config
resolver o problema:fonte
locahost
encaminhamento do X11. O encaminhamento X11 nos outros dois ainda funciona. Alguma idéia do que poderia ter mudado?Atravessei isso hoje e bati minha cabeça por um tempo até eu me deparar com um cenário ssh:
Se for RHEL 7 (centOS, OEL, etc) e tiver o ipv6 desativado, será necessário:
definido em / etc / ssh / sshd_config.
fonte
Outra pequena variação seria se você quisesse parar de ver esta mensagem (ou seja, parar de tentar encaminhar o X11) para determinados servidores, mas ainda assim manter o padrão no ForwardX11 yes em todas as outras conexões.
Nesse cenário, você pode desativar o encaminhamento do X11 para um host (ou intervalo) específico em seu ~ / .ssh / config. Algo assim:
Agradecimento: Este é um pequeno embelezamento para a resposta existente (e muito completa) existente - já que eu não podia comentar!
fonte
Se a execução do cliente no modo detalhado (
ssh -v user@host
) fornecer a vocêmas, de
xauth
fato, está instalado no servidor, provavelmente é porque o sshd procura o executável xauth no local errado ( / usr / X11R6 / bin / xauth normalmente). Pode-se consertar isso definindoem / etc / sshd / sshd_config (ou com o que seu servidor estiver configurado).
fonte
Configurando o encaminhamento do X11 por host
Além de todas as excelentes respostas já aqui, você pode configurar
ForwardX11
por host, portanto, se apenasserver
falhar dessa maneira, poderá adicionar uma entrada ao seu~/.ssh/config
arquivo do seguinte formato:Você pode até usar entradas como esta como alias para conjuntos inteiros de configurações
Isso é especialmente útil se você configurou nomes de servidores de preenchimento automático para SSH e SCP .
fonte
Me deparei com essa pergunta depois de encontrar um
sshd-xauth
bug com quase uma década de idade. Duas soluções são relatadas, a primeira ignorandoxauth
, a segunda abordando o bug.Solução 1 - ignorar xauth
Remoto
/etc/ssh/sshd_config
:Controlo remoto
~/.Xauthority
está vazio ou não existeNo local:
No teste, o local estava executando o Ubuntu 18.05, o remoto estava executando o Debian Jesse.
Também publiquei esta solução como resposta a outra pergunta.
Solução 2 - resolva o bug sshd / xauth
Esta solução está próxima da solução do @systempoet acima , embora isso por si só não tenha sido suficiente.
Além de modificar
/etc/ssh/sshd_config
no controle remoto:/etc/hosts
no controle remoto também foi modificado:Se um deles foi comentado, a mensagem de erro
apareceu após a
ssh -X ...
chamada. Além disso,/var/log/auth.log
o erro foi mostrado:Teste para produzir o bug (antes da correção):
Máquina local:
fonte
Um ponto importante a ser observado depois de fazer as alterações na configuração é que você precisará matar o sshd para que ele capte as alterações:
sendo o usuário root.
fonte
Defina as 2 opções a seguir
/etc/ssh/sshd_config
em seu host RHELX11Forwarding yes X11UseLocalhost no
sudo /etc/init.d/sshd reload
sudo yum install xauth
ssh -X yourname@rhelbox
fonte