OK, você está no host A (não especificado) e, ao executar o comando 1:
ssh -o StrictHostKeyChecking=no -i /cygdrive/C/keys/id_rsa [email protected]
e você obtém um shell interativo no host B (192.168.0.2). Mas quando você executa o comando 2:
ssh -o StrictHostKeyChecking=no -T -i /cygdrive/C/keys/id_rsa [email protected] ssh 192.168.0.2 mkdir -p /mnt/storage/new_folder
(do host A), você recebe um erro.
OK, execute o comando 1 do host A e obtenha um shell interativo no host B. Agora, no host B, execute o comando 2b:
ssh 192.168.0.2 mkdir -p /mnt/storage/new_folder
O que acontece? Se isso também falhar, então seu problema não é “O SSH falha com o erro de chave do host ao enviar um comando, mas funciona sem um”, seu problema é que o host B não pode ssh para si mesmo - ou, mais especificamente, que "usuário" no host B não está configurado para ser capaz de ssh para hospedar B.
E, para completar, o que acontece se você executar o comando 2c:
ssh -o StrictHostKeyChecking=no -T -i /cygdrive/C/keys/id_rsa [email protected] mkdir -p /mnt/storage/new_folder
(do hospedeiro A)?