Perhaps a firewall in front of the external resource drops the connection.
Some checks (*nix platforms)
- make a connect and start the the 'top' utility (generates less traffic to hold the tunnel)
- check the TMOUT environment variable at the external resource
- check if any of the config params are set
-- both sites ssh(d)_config: TcpAliveCount, TcpAliveCountMax (not prefered, spoofable)
-- at external site sshd_config: ClientAliveInterval, ClientAliveCount
-- at client site ssh_config: ServerAliveCount, ServerAliveCountMax
for general adjustments look into: man ssh(d)_config
If your Users use putty, use only the last version (at the moment 0.58), and enable sending of 'null packets' every 30 sec.
Sample regfile for later adjustment
Code:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\THE_PUTTY_SESSION_NAME]
"PingIntervalSecs"=dword:0000001e
If this works you can set your Global session timeouts back to the default value.