I'm looking for some software that can perform remote forwarding of socket connections across a TTY-style link. I have two machines, A and B. I have admin privileges on A, but not B, but on machine B I am able to run arbitrary server software that does not require admin. Machine A does not have a public IP address, but machine B does. I am able to set up an outgoing connection from machine A to machine B and transfer arbitrary data across it, but what I need is some software that I can run on machine B that will accept an incoming connection, send the data from that connection to a process running on machine A, which will then initiate a new connection to a server running on machine A.
I am, unfortunately, not able to use ssh for this purpose as it has been configured by the administrator of machine B not to allow forwarding. Otherwise, running
ssh -R 4567:localhost:1234 machineb from machine A would achieve what I'm looking for.
Anyone know of another way of doing this? For reference, machine A runs Ubuntu Linux and machine B runs OpenBSD, although I'd prefer a solution portable across all unix variants.