I am trying to use
ssh to forward a TCP connection on a local port to a Unix socket on a remote server, but I keep getting errors.
I started by having
nc listen on the remote server:
remote$ nc -lU /tmp/socket
Then I set up a portforward using SSH:
local$ ssh -L127.0.0.1:5000:/tmp/socket -vv #remote host here#
The SSH and portforwarding seem to work:
debug1: Local connections to 127.0.0.1:5000 forwarded to remote address /tmp/socket:-2 debug1: Local forwarding listening on 127.0.0.1 port 5000. debug1: channel 0: new [port listener] debug1: channel 1: new [client-session]
Then I try to access
127.0.0.1:5000 in a browser, and I get this error message in my terminal:
debug1: channel 2: new [firstname.lastname@example.org] channel 2: open failed: administratively prohibited: open failed debug1: channel 2: free: email@example.com: listening port 5000 for /tmp/socket port -2, connect from 127.0.0.1 port 41372 to 127.0.0.1 port 5000, nchannels 3
it comes up a bunch of times, and the connections fail.
How can I set this up? (I would prefer a solution which doesn't need root on the remote server or installing new software locally.)