This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

1.5.24: sshd immediately disconnects upon receiving a connection


Hi all



I've been trying to get sshd running on Cygwin on Windows XP. Just to give a quick summary of the problem, I'll start up the sshd service and try to connect from another machine or even from localhost and it will hang. So I have been trying to get it working by just running it from the cygwin command line, like so: 



/usr/sbin/sshd -ddd



debug2: load_server_config: filename /etc/sshd_config

debug2: load_server_config: done config len = 196

debug2: parse_server_config: config /etc/sshd_config len 196

debug3: /etc/sshd_config:13 setting Port 22

debug3: /etc/sshd_config:38 setting StrictModes no

debug3: /etc/sshd_config:92 setting UsePrivilegeSeparation yes

debug3: /etc/sshd_config:106 setting Subsystem sftp     /usr/sbin/sftp-server

debug1: sshd version OpenSSH_4.5p1

debug1: private host key: #0 type 0 RSA1

debug3: Not a RSA1 key file /etc/ssh_host_rsa_key.

debug1: read PEM private key done: type RSA

debug1: private host key: #1 type 1 RSA

debug3: Not a RSA1 key file /etc/ssh_host_dsa_key.

debug1: read PEM private key done: type DSA

debug1: private host key: #2 type 2 DSA

debug1: rexec_argv[0]='/usr/sbin/sshd'

debug1: rexec_argv[1]='-ddd'

debug1: rexec_argv[2]='-e'

debug2: fd 3 setting O_NONBLOCK

debug1: Bind to port 22 on 0.0.0.0.

Server listening on 0.0.0.0 port 22.

Generating 768 bit RSA key.

RSA key generation complete.



Then I connect from either localhost or from another machine and it continues:



debug1: fd 4 clearing O_NONBLOCK

debug1: Server will not fork when running in debugging mode.

debug3: send_rexec_state: entering fd = 7 config len 196

debug3: ssh_msg_send: type 0

ssh_msg_send: write

send_rexec_state: ssh_msg_send failed



Meanwhile, on the client, I get:



OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007

debug1: Reading configuration data /etc/ssh/ssh_config

debug2: ssh_connect: needpriv 0

debug1: Connecting to avila [10.10.12.8] port 22.

debug1: Connection established.

debug1: identity file /home/portal/.ssh/identity type -1

debug1: identity file /home/portal/.ssh/id_rsa type -1

debug1: identity file /home/portal/.ssh/id_dsa type -1

ssh_exchange_identification: read: Connection reset by peer





I'm using openssh 4.6p1 but I also tried downgrading to 4.5p1 and had the same problems. I'm running it from a local user account. The machine itself is in the domain though. 



I've been searching around and trying different things. Another thing that was suggested was doing -r to disable rexec calls. When I do that I get different output when the client connects:



debug1: fd 4 clearing O_NONBLOCK

debug1: Server will not fork when running in debugging mode.

Connection from 127.0.0.1 port 1195

Could not write ident string to 127.0.0.1



I also tried stracing the process, I'll post just the last part of it:



   50 4917736 [main] sshd 3516 sig_send: returning 0x0 from sending signal -34

  415 4918151 [main] sshd 3516 fhandler_base::write: binary write

   72 4918223 [main] sshd 3516 close: close (3)

  178 4918401 [main] sshd 3516 fhandler_socket::close: 0 = fhandler_socket::close()

   47 4918448 [main] sshd 3516 close: 0 = close (3)

   31 4918479 [main] sshd 3516 close: close (5)

   33 4918512 [main] sshd 3516 fhandler_base::close: closing '' handle 0x510

   53 4918565 [main] sshd 3516 close: 0 = close (5)

   36 4918601 [main] sshd 3516 close: close (6)

   28 4918629 [main] sshd 3516 fhandler_base::close: closing '' handle 0x51C

   50 4918679 [main] sshd 3516 close: 0 = close (6)

 -106 4918573 [main] sshd 3516 sig_send: sendsig 0x6B4, pid 3516, signal -34, its_me 1

   44 4918617 [main] sshd 3516 sig_send: wakeup 0x51C

   41 4918658 [main] sshd 3516 sig_send: Waiting for pack.wakeup 0x51C

   34 4918692 [sig] sshd 3516 wait_sig: signalling pack.wakeup 0x51C

   40 4918732 [main] sshd 3516 sig_send: returning 0x0 from sending signal -34

   64 4918796 [main] sshd 3516 fhandler_base::write: binary write

 1019 4919815 [main] sshd 3516 sig_send: sendsig 0x6B4, pid 3516, signal -34, its_me 1

   41 4919856 [main] sshd 3516 sig_send: wakeup 0x51C

   43 4919899 [main] sshd 3516 sig_send: Waiting for pack.wakeup 0x51C

 -334 4919565 [sig] sshd 3516 wait_sig: signalling pack.wakeup 0x51C

  421 4919986 [main] sshd 3516 sig_send: returning 0x0 from sending signal -34

   67 4920053 [main] sshd 3516 fhandler_base::write: binary write

   72 4920125 [main] sshd 3516 sig_send: sendsig 0x6B4, pid 3516, signal -34, its_me 1

   39 4920164 [main] sshd 3516 sig_send: wakeup 0x51C

   42 4920206 [main] sshd 3516 sig_send: Waiting for pack.wakeup 0x51C

 -333 4919873 [sig] sshd 3516 wait_sig: signalling pack.wakeup 0x51C

   86 4919959 [main] sshd 3516 sig_send: returning 0x0 from sending signal -34

  377 4920336 [main] sshd 3516 writev: writev (7, 0x22BEF0, 1)

 -202 4920134 [main] sshd 3516 __set_errno: void __set_winsock_errno(const char*, int):234 val 108

   50 4920184 [main] sshd 3516 __set_winsock_errno: sendmsg:1376 - winsock error 10038 -> errno 108

  384 4920568 [main] sshd 3516 writev: -1 = write (7, 0x22BEF0, 1), errno 108

  162 4920730 [main] sshd 3516 sig_send: sendsig 0x6B4, pid 3516, signal -34, its_me 1

   39 4920769 [main] sshd 3516 sig_send: wakeup 0x51C

   43 4920812 [main] sshd 3516 sig_send: Waiting for pack.wakeup 0x51C

 -332 4920480 [sig] sshd 3516 wait_sig: signalling pack.wakeup 0x51C

   75 4920555 [main] sshd 3516 sig_send: returning 0x0 from sending signal -34

  411 4920966 [main] sshd 3516 fhandler_base::write: binary write

  218 4921184 [main] sshd 3516 sig_send: sendsig 0x6B4, pid 3516, signal -34, its_me 1

   40 4921224 [main] sshd 3516 sig_send: wakeup 0x51C

   41 4921265 [main] sshd 3516 sig_send: Waiting for pack.wakeup 0x51C

 -332 4920933 [sig] sshd 3516 wait_sig: signalling pack.wakeup 0x51C

   81 4921014 [main] sshd 3516 sig_send: returning 0x0 from sending signal -34

  407 4921421 [main] sshd 3516 fhandler_base::write: binary write

   76 4921497 [main] sshd 3516 do_exit: do_exit (65280), exit_state 0

   49 4921546 [main] sshd 3516 void: 0x401140 = signal (20, 0x1)

   35 4921581 [main] sshd 3516 void: 0x4010F0 = signal (1, 0x1)

   41 4921622 [main] sshd 3516 void: 0x0 = signal (2, 0x1)

   35 4921657 [main] sshd 3516 void: 0x401130 = signal (3, 0x1)

   41 4921698 [main] sshd 3516 fhandler_base::close: closing '' handle 0x6C0

   38 4921736 [main] sshd 3516 fhandler_base::close: closing '' handle 0x6BC

   36 4921772 [main] sshd 3516 fhandler_base::close: closing '' handle 0x7F4

 -271 4921501 [main] sshd 3516 __set_errno: void __set_winsock_errno(const char*, int):234 val 108

  385 4921886 [main] sshd 3516 __set_winsock_errno: close:1438 - winsock error 10038 -> errno 108

   38 4921924 [main] sshd 3516 fhandler_socket::close: -1 = fhandler_socket::close()

   50 4921974 [main] sshd 3516 __set_errno: void __set_winsock_errno(const char*, int):234 val 108

   36 4922010 [main] sshd 3516 __set_winsock_errno: close:1438 - winsock error 10038 -> errno 108

   38 4922048 [main] sshd 3516 fhandler_socket::close: -1 = fhandler_socket::close()

 -121 4921927 [main] sshd 3516 fhandler_socket::close: 0 = fhandler_socket::close()

  387 4922314 [main] sshd 3516 do_exit: 3516 == sid 3516, send SIGHUP to children

   87 4922401 [main] sshd 3516 sigproc_terminate: entering

   42 4922443 [main] sshd 3516 sig_send: sendsig 0x6B4, pid 3516, signal -42, its_me 1

   45 4922488 [main] sshd 3516 sig_send: Not waiting for sigcomplete.  its_me 1 signal -42

 -333 4922155 [sig] sshd 3516 wait_sig: saw __SIGEXIT

  370 4922525 [main] sshd 3516 sig_send: returning 0x0 from sending signal -42

   72 4922597 [main] sshd 3516 proc_terminate: nprocs 0

 -336 4922261 [sig] sshd 3516 wait_sig: signal thread exiting

  366 4922627 [main] sshd 3516 proc_terminate: leaving

  277 4922904 [main] sshd 3516 __to_clock_t: dwHighDateTime 0, dwLowDateTime 1250000

   89 4922993 [main] sshd 3516 __to_clock_t: total 00000000 0000007D

   42 4923035 [main] sshd 3516 __to_clock_t: dwHighDateTime 0, dwLowDateTime 1250000

   33 4923068 [main] sshd 3516 __to_clock_t: total 00000000 0000007D

   72 4923140 [main] sshd 3516 pinfo::exit: Calling ExitProcess n 0xFF00, exitcode 0xFF



I tried searching around for that winsock error but didn't find much from that either. 



As for how I set this up, I just had a clean windows xp install, disabled the firewall, installed Cygwin, selected openssh to be installed. Then I ran ssh-host-config and said yes to all prompts (Note: I did try this without privsep both on and off but still had the same problems). I've also tried to refresh /etc/passwd and /etc/group by doing:



mkpasswd -cl > /etc/passwd

mkgroup --local > /etc/group



Also I've checked with nmap that port 22 is open when sshd is supposed to be listening and it is from both the localhost and another computer.



Let me know if more information is needed, I'm happy to provide it. 



Any help would be appreciated, thanks.


-- 
Jeremy K. Truax
jeremy@trupoetry.com

Attachment: cygcheck.out
Description: Binary data

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]