Bem, se você quiser usar o ssh, você pode
A) conecte-se de A a B via ssh com o encaminhamento de porta, se você tiver um servidor ssh em B, por exemplo
user@A $ ssh -L 1122:C:1122 B
B) conectar de B a A via ssh, com redirecionamento de porta reversa, se você estiver bem com acesso ssh de B a A
user@B $ ssh -R 1122:C:1122 A
Se você escolher a abordagem B, poderá reduzir, mas não eliminar, a exposição ao seu computador A, pois o acesso ssh pode ser limitado à porta de entrada. Por exemplo, autenticando via pubkey, com restrições definidas em authorized_keys.
auser@A $ cat ~/.ssh/authorized_keys
restrict,port-forwarding ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGiHycmak/rgoAF+A+wG+K8Rk2iYhcVXcuFiajEOxHe3 buser
buser@B $ ssh -v -R 1122:C:1122 -N -i path/to/my/key auser@A