Como não executar /etc/profile.d/custom.sh durante o login de FTP seguro

1

Quando eu tento proteger o FTP (usando WinSCP) para minha caixa do CentOS 6.4, sou solicitado com uma mensagem que diz:

Received too large (168438314 B) SFTP packet. Max supported packet size is 1024000 B.

This error is typically caused by message printed from startup script (like profile). The message may start with ""\n\n**"" 

Cannot initialize SFTP protocol. Is the host running an SFTP server

Isso parece ser causado pelo meu script /etc/profile.d/custom.sh que é executado durante o login. Sua configuração para gerar uma mensagem de boas-vindas, bem como um resumo do sistema (Uso da CPU / Memória / Disco).

Eu realmente preciso que o script custom.sh seja executado ao efetuar login no console local OU ao efetuar login via SSH. No entanto, não quero que ele seja executado ao fazer login no FTP Seguro (SFTP).

Existe alguma maneira de configurá-lo para não ser executado ao fazer login via FTP Seguro?

Ou, alternativamente, se eu não puder impedi-lo de executar, há uma maneira de detectar que ele está sendo executado durante um login seguro de FTP e não produzir nada. Então, no pseudocódigo, algo como:

Se estiver logado via FTP seguro, não dê saída Senão se estiver logado via SSH ou mensagem de saída do console local do dia (estatísticas do sistema).

Obrigado! Brad

UPDATE - Existe documentação que suporta este problema aqui: link

A sugestão é detectar se a sessão é interativa ou não. Eu tentei fazer isso adicionando o seguinte ao topo do meu custom.sh, mas ainda não está funcionando:

if [ -z $PS1 ]; then
### if [ -v PS1 ]   # On Bash 4.2+ ...
    # non-interactive
    return
fi

Em seguida, o restante do meu script é executado na saída do MOTD.

O SecureFTP deve ser detectado como não interativo ou interativo? Se não é interativa, por que o código acima não existe no script quando tento logar via FTP Seguro?

    
por Brad 30.04.2013 / 05:29

1 resposta

3

Talvez o método padrão de verificar o fd '0 ′?

if [ -t 0 ]; then
# do stuff
fi
    
por 30.04.2013 / 06:16