En primer lugar, por ssh anidado , me refiero a la siguiente forma de usar ssh:
ssh usera@Bob 'ssh usera@C'
Supongamos que A
quiere iniciar sesión en el servidor C
, pero por alguna razón, C
no está disponible directamente para A
(por ejemplo, C
's detrás de cierto FW o NAT o algo así). Afortunadamente, el amigo de A
, Bob
tiene conexión directa a C
y A
también puede conectarse a Bob
. Entonces, para iniciar sesión en C
, A
realmente haría lo mencionado anteriormente.
Mi pregunta aquí es, ¿podrá Bob ver la comunicación entre A y C en claro , dado que Bob es el administrador de su servidor? Supongo que sí, pero no estoy tan seguro de mi comprensión de los aspectos internos de SSH.
La razón por la que creo que Bob puede ver el texto sin formato es: hay dos claves de sesión: kab
y kac
, para el comando externo y anidado ssh
respectivamente. Idealmente, Bob desconoce kac
. (¿Es eso cierto cuando Bob es el usuario root?). De todos modos, cuando un mensaje llega a Bob, debe ser descifrado con kab
, luego encriptado con kac
y enviado a C . Entonces, entre el cifrado y el descifrado, el texto plano está en algún lugar de la memoria. Bob debería poder verlo, aunque no de manera directa.
¿Alguna idea?