Esta é uma modificação de link .
Com o seguinte, você pode forçar o fornecimento de /etc/bashrc
para todos os logins SSH, interativos ou não. Isso pode causar alguns problemas para os usuários que confiam em /etc/bashrc
não serem executados para logins não interativos, portanto, continue com cuidado (embora seja exatamente isso que você está pedindo, então você provavelmente conhece as implicações).
Primeiro, adicione ForceCommand /usr/local/bin/sshd_envs
a /etc/sshd_config
. Em seguida, coloque o seguinte em /usr/local/bin/sshd_envs
:
#!/bin/bash
source /etc/bashrc
if [ -n "$SSH_ORIGINAL_COMMAND" ]; then
eval $SSH_ORIGINAL_COMMAND
else
exec $SHELL
fi
Quaisquer configurações de ambiente que você colocar em /etc/bashrc
entrarão no ambiente para cada login SSH.
Por favor, note que o padrão /etc/bashrc
para OS / X sairá imediatamente após avaliar as primeiras linhas (porque PS1 não está configurado para shells não interativos):
if [ -z "$PS1" ]; then
return
fi
Então, comente essas linhas ou coloque tudo o que você deseja que seja avaliado para seus logins SSH não interativos antes dessas linhas.