aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSander Vrijders <sander.vrijders@ugent.be>2018-07-25 09:49:35 +0200
committerSander Vrijders <sander.vrijders@ugent.be>2018-07-25 09:51:38 +0200
commit540662296627b050150ab81ada77906dce209f89 (patch)
treea712e3c9edfbfacbac71c598167f13ba021a957b
parent56ae5a1503fc9503bdf4a9902709f84fd3d6e99b (diff)
downloadrumba-540662296627b050150ab81ada77906dce209f89.tar.gz
rumba-540662296627b050150ab81ada77906dce209f89.zip
ssh_support: Set keepalive on Transport object
This will set a keepalive on the Transport object to prevent disconnects by firewalls.
-rw-r--r--rumba/ssh_support.py2
1 files changed, 2 insertions, 0 deletions
diff --git a/rumba/ssh_support.py b/rumba/ssh_support.py
index cfe8c26..87ee0ab 100644
--- a/rumba/ssh_support.py
+++ b/rumba/ssh_support.py
@@ -95,6 +95,7 @@ def ssh_connect(hostname, port, username, password, time_out, proxy_server):
look_for_keys=True, timeout=time_out)
trans = proxy_client.get_transport()
+ trans.set_keepalive(30)
proxy = trans.open_channel('direct-tcpip',
(hostname, port), ('127.0.0.1', 0))
else:
@@ -134,6 +135,7 @@ def ssh_chan(ssh_config, testbed, time_out):
max_retries = 2
while retry < max_retries:
try:
+ ssh_config.client.get_transport().set_keepalive(30)
chan = ssh_config.client.get_transport().open_session()
return chan
except paramiko.ssh_exception.SSHException as e: