User Tools

Site Tools


ssh-agent_disponible_al_inicio_del_sistema

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
ssh-agent_disponible_al_inicio_del_sistema [2020/12/25 22:57] – external edit 127.0.0.1ssh-agent_disponible_al_inicio_del_sistema [2021/03/24 23:00] (current) – [Configurar ssh-agent en tareas cron mediante ssh, rsync, scp etc.] busindre
Line 121: Line 121:
 Si se comparten usuarios en entornos remotos con terceras personas usando SSH Forwarding hay que tener en cuenta lo siguiente. Cualquier otra persona con acceso a dicho usuario en el servidor puede buscar el fichero socket en /tmp y exportar la variable "SSH_AUTH_SOCK". Esto significa que tiene los mismos privilegios que la llave privada usada en el origen para crear dicho socket. Veamos un ejemplo. Si se comparten usuarios en entornos remotos con terceras personas usando SSH Forwarding hay que tener en cuenta lo siguiente. Cualquier otra persona con acceso a dicho usuario en el servidor puede buscar el fichero socket en /tmp y exportar la variable "SSH_AUTH_SOCK". Esto significa que tiene los mismos privilegios que la llave privada usada en el origen para crear dicho socket. Veamos un ejemplo.
  
-El administrador "A" tiene acceso a root en todo el datancenter. Necesita conectar a un servidor de X equipo de programación para mirar alguna cosa, usando un usuario no privilegiado como "usuario1". Los programadores del quipo también tienen acceso a ese servidor mediante el mismo login "usuario1". Cuando el administrador conecta a dicho servidor con el Forwarding activo en cliente se genera el socket, cualquiera de los programadores puede exportar la variable "SSH_AUTH_SOCK" y conectar con privilegios de root a todo el datacenter mientras el socket esté activo.+El administrador "A" tiene acceso a root en todo el datancenter. Necesita conectar a un servidor de X equipo de programación para mirar alguna cosa, usando un usuario no privilegiado como "usuario1". Los programadores del equipo también tienen acceso a ese servidor mediante el mismo login "usuario1". Cuando el administrador conecta a dicho servidor con el Forwarding activo en cliente se genera el socket, cualquiera de los programadores puede exportar la variable "SSH_AUTH_SOCK" y conectar con privilegios de root a todo el datacenter mientras el socket esté activo. 
 + 
 +**ForwardAgent de SSH en comandos sudo/su** 
 + 
 +Como ya sabemos, de usar ForwardAgent SSH con un usuario del sistema, al cambiar a otro usuario no privilegiado por medido de comandos "sudo" o "su", no se tendrán permisos de lectura sobre el socket y este no podrá usarse desde el nuevo usuario. En el uso de estos comandos es importante establecer el traspaso de variables de manera explícita. En el caso de sudo por defecto no se exportan variables de entorno y se debe especificar en la linea de comandos o bien en el fichero "/etc/sudoers" para que las variables sean exportables. Se podría incluso configurar qué variables se quieren exportar. 
 + 
 +Fichero /etc/sudoers 
 +<code bash># Esta configuración exporta la variable para todos los usuarios. 
 +Defaults    env_keep+=SSH_AUTH_SOCK</code> 
 + 
 +Linea de comandos. 
 +<code bash>su       # Si no especifica "-", las variables son exportadas 
 +sudo -sE # Exporta las variables de entorno y de usarse root (al no ser que se especifique "-u usuario"), este podrá usar el socket indicado en la variable SSH_AUTH_SOCK. 
 + 
 +su -     # No se exportan las variables, aunque al ser root, siempre puede buscar el socket en /tmp y exportar la variable. 
 +sudo     # No exporta las variables por lo que no podrá usarse el socket para utilizar ForwardAgent.</code>
ssh-agent_disponible_al_inicio_del_sistema.1608933466.txt.gz · Last modified: 2020/12/25 22:57 by 127.0.0.1