[Bug 3648] New: ssh client blocks itself by leaving unix domain socket alive after user

bugzilla-daemon at mindrot.org bugzilla-daemon at mindrot.org
Tue Dec 26 08:20:35 AEDT 2023


https://bugzilla.mindrot.org/show_bug.cgi?id=3648

            Bug ID: 3648
           Summary: ssh client blocks itself by leaving unix domain socket
                    alive after user
           Product: Portable OpenSSH
           Version: 9.3p1
          Hardware: Other
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P5
         Component: ssh
          Assignee: unassigned-bugs at mindrot.org
          Reporter: hadmut at danisch.de

Hi, 

I'm using Ubuntu Linux (client 23.10, server 22.04) and want to use
port forwarding to connect a unix domain socket from client do server. 

When using something like 

     LocalForward    /tmp/TEST /tmp/TEST    

it works as expected. For testing, run 

 nc -v -l -U /tmp/TEST

on the server and then 

  curl -D /dev/stdout --unix-socket /tmp/TEST http://xyz/
or
  nc -U /tmp/TEST

on the client side to see, that it is working fine. :-)


But then, it is working only for one session. Not for subsequent
sessions, because ssh opens /tmp/TEST on the client side (I guess the
same for RemoteForward on the server, but haven't tested yet), and
leaves the socket /tmp/TEST existing, but can't reuse it. 

For the ext run, ssh issues

unix_listener: cannot bind to path /tmp/TEST: Address already in use


and can't use it, thus the connection does not work anymore. It
requires a rm /tmp/TEST after every single ssh call, which is annoying
and error prone. 

If ssh creates a unix domain socket, it should delete it when
terminating (or be able to reuse it / use an existing socket). 

regards

-- 
You are receiving this mail because:
You are watching the assignee of the bug.


More information about the openssh-bugs mailing list