Fork me on GitHub

Variable de ambiente vía SSH

June 3, 2014

Para unos servidores donde tenemos un único usuario quería que se seteara automáticamente el modo vi en la consola sólo cuando yo entraba. No podía ponerlo por defecto en .bashprofile porque el resto de mis compañeros usa el modo emacs. Así que buscando encontré que se pueden pasar variables de ambiente en la conexión ssh y de ese modo identificarme. Para que el server acepte la variable hay que declararla en sshdconfig

AcceptEnv SSH_USER

Luego desde el cliente

client~$ export SSH_USER=xleo
client~$ ssh server -o SendEnv=SSH_USER

Una vez en el servidor

server~$ echo $SSH_USER
xleo

Para hacerlo transparente puse la variable en .bash_profile y en .ssh/config agregué

Host *
    SendEnv SSH_USER

En el .bash_profile del servidor hice

 if [ "$SSH_USER" == "xleo" ]; then
    set -o vi
 fi

GNU/Linux