Como definir um valor específico da variável DISPLAY no host remoto com SSH, mas sem parâmetros de linha de comando?

0

Na massa eu posso configurar valores exatos para variáveis de ambiente no host remoto, por exemplo

No Linux eu tenho o arquivo ~/.ssh/config que contém uma entrada como esta

Host calculon
    User dims

É possível e como configurar variáveis de ambiente de host remoto no Linux da mesma maneira, ou seja, sem especificá-las na linha de comando ou em comandos separados?

Eu posso especificar

SendEnv DISPLAY

em config , mas isso exigirá definir essa variável no host local por meio de um comando separado. Isso é excessivo e para DISPLAY variable também é um absurdo.

Também li sobre o arquivo ~/.ssh/environment e escrevi isso

dims@pterosaur:~$ cd .ssh
dims@pterosaur:~/.ssh$ cat environment 
DISPLAY=pterosaur:0

mas isso não tem efeito (a variável DISPLAY não está definida no host remoto).

Observe que sshd já está configurado para aceitar a variável DISPLAY e aceita normalmente a partir de Putty . Então a tarefa é configurar o cliente Linux da mesma maneira.

    
por Dims 31.08.2017 / 13:33

1 resposta

1

A configuração está documentada em man 5 ssh_config .

SendEnv pode ser usado se o servidor suportar e estiver configurado para aceitá-lo:

SendEnv

Specifies what variables from the local environ(7) should be sent to the server. Note that environment passing is only supported for protocol 2. The server must also support it, and the server must be configured to accept these environment variables. Refer to AcceptEnv in sshd_config(5) for how to configure the server. Variables are specified by name, which may contain wildcard characters. Multiple environment variables may be separated by whitespace or spread across multiple SendEnv directives. The default is not to send any environment variables.

Se isso não for possível, você também pode configurar o shell do host remoto com suas variáveis ambientais (usando .profile etc., para bash, consulte a documentação em bash files de inicialização ).

    
por 31.08.2017 / 13:43