SSH problem
Hey,
I have a Red Hat 5.2 machine with :
2.6.18-92.el5 kernel
PRM's:
openssh-4.3p2-29.el5
openssh-clients-4.3p2-29.el5
openssl-0.9.8e-7.el5
openssh-server-4.3p2-29.el5
openssl-0.9.8b-10.el5
openssl-devel-0.9.8e-7.el5
openssh-askpass-4.3p2-29.el5
I'm trying to transfer files to a Solaris server.
The VPN is a Cisco VPN that configured between us and the other company.
When we try to send files the sftp client gets "stalled".
When we try to upload a different files, We succeed when the files are small (>8k or so).
When we try to upload the file to a different server (pn the same VPN) - it works.
here is the related 'strace' lines:
Common part for both successful and failed scenarios:
27088 - parent sftp PID, 27089 - child ssh PID
27088 execve("/usr/bin/sftp", ["sftp", "e131996@205.140.7.156"], [/* 23 vars */]) = 0
...
27089 execve("/usr/bin/ssh", ["/usr/bin/ssh"..., "-oForwardX11 no"..., "-oForwardAgent no"..., "-oPermitLocalCommand no"..., "-oClearAllForwardings yes"..., "-le131996"..., "-oProtocol 2"..., "-s"..., "205.140.7.156"..., "sftp"...], [/* 23 vars */]) = 0
...
27089 connect(3, {sa_family=AF_INET, sin_port=htons(22), sin_addr=inet_addr("205.140.7.156")}, 16) = 0
27089 setsockopt(3, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0
...
# sftp process opens file to send
27088 open("NRISRPLUSATS0021216.csv", O_RDONLY) = 4
...
# sftp process reads the file into buffer
27088 read(4, "Nrtrde,2,1,ISRPL,USATS,0021216,2"..., 32768) = 12312
...
#sftp process writes file data into pipe to ssh child, and child reads it into buffer
27088 write(3, "\0\00005", 4 <unfinished ...>
27089 <... select resumed> ) = 1 (in [4])
27089 read(4, "\0\00005", 16384) = 4
27089 select(7, [3 4], [3], NULL, NULL) = 1 (out [3])
27089 write(3, "\351\233\36\241\377C\3754%\226\332\325\f\362S-\24O\356\234f\325\310ty\300\r\301`PmX"..., 48) = 48
27089 select(7, [3 4], [], NULL, NULL <unfinished ...>
27088 <... write resumed> ) = 4
27088 write(3, "\6\0\0\0\6\0\0\0\10\0\n\205\10\0\0\0\5\0\0\0\0\0\0\0\0\0\0000\30Nrt"..., 12341 <unfinished ...>
27089 <... select resumed> ) = 1 (in [4])
27089 read(4, "\6\0\0\0\6\0\0\0\10\0\n\205\10\0\0\0\5\0\0\0\0\0\0\0\0\0\0000\30Nrt"..., 16384) = 12341
27089 brk(0x2aaded9fe000) = 0x2aaded9fe000
27089 select(7, [3 4], [3], NULL, NULL <unfinished ...>
27088 <... write resumed> ) = 12341
...
# ssh child writes data to server
27089 write(3, "\375;J*M\252\217\322+\362z\354\322e\357\274\2338\347/3\210O\260\25\214Qc\0\235\324\f"..., 12384) = 12384
--- SUCCEEDED SESSION ---
# ssh child waits for read data from either server (fd=3) or sftp parent (fd=4).
27089 select(7, [3 4], [], NULL, NULL) = 1 (in [3])
# Data arrived from server and is read by ssh child
27089 read(3, "\v\24T\33\3\177\262\234\337\334\276\\\26\303\337\3`V\216\32p\235QV\245<\30\273\361+G\346"..., 8192) = 96
# Transter finishes up
27089 select(7, [3 4], [5], NULL, NULL) = 1 (out [5])
27089 write(5, "\0\0\0\25e\0\0\0\6\0\0\0\0\0\0\0\2OK\0\0\0\2en", 25) = 25
27088 <... read resumed> "\0\0\0\25", 4) = 4
27089 select(7, [3 4], [], NULL, NULL <unfinished ...>
27088 read(3, "e\0\0\0\6\0\0\0\0\0\0\0\2OK\0\0\0\2en", 21) = 21
--- FAILED SESSION ---
# ssh child waits for read data from either server (fd=3) or sftp parent (fd=4).
25329 select(7, [3 4], [], NULL, NULL <unfinished ...>
# the ssh child waits indefinitely for server response, while sftp parent is waiting for child in infinite loop
25328 <... read resumed> 0x2b7f6caab600, 4) = ? ERESTARTSYS (To be restarted)
25328 --- SIGALRM (Alarm clock) @ 0 (0) ---
25328 getpgrp() = 25327
25328 ioctl(1, TIOCGPGRP, [25327]) = 0
25328 write(1, "\rNRISRPLUSATS0021216.csv "..., 157) = 157
25328 rt_sigaction(SIGALRM, NULL, {0x2b7f5f3da490, [], SA_RESTORER|SA_INTERRUPT, 0x2b7f612281b0}, 8) = 0
25328 alarm(1) = 0
25328 rt_sigreturn(0x1) = -1 EINTR (Interrupted system call)
25328 read(3, 0x2b7f6caab600, 4) = ? ERESTARTSYS (To be restarted)
25328 --- SIGALRM (Alarm clock) @ 0 (0) ---
25328 getpgrp() = 25327
25328 ioctl(1, TIOCGPGRP, [25327]) = 0
25328 write(1, "\rNRISRPLUSATS0021216.csv "..., 157) = 157
25328 rt_sigaction(SIGALRM, NULL, {0x2b7f5f3da490, [], SA_RESTORER|SA_INTERRUPT, 0x2b7f612281b0}, 8) = 0
25328 alarm(1) = 0
25328 rt_sigreturn(0x1) = -1 EINTR (Interrupted system call)
25328 read(3, 0x2b7f6caab600, 4) = ? ERESTARTSYS (To be restarted)
25328 --- SIGALRM (Alarm clock) @ 0 (0) ---
Anyone !?