aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2014-09-15 02:01:32 -0400
committerJesse Luehrs <doy@tozt.net>2014-09-15 02:01:32 -0400
commit4cde2aef1f9f77f559a19d35b796fb3a19184eae (patch)
treefba8e0b160e4e8f90ae07b6cb5d8186575106bb1
parentf144cdf8adcb233a0a56e3bc0fe0ad6d9bdc1286 (diff)
downloadpython-termcast-server-4cde2aef1f9f77f559a19d35b796fb3a19184eae.tar.gz
python-termcast-server-4cde2aef1f9f77f559a19d35b796fb3a19184eae.zip
make the ssh private key configurable
-rw-r--r--server.py8
-rw-r--r--ssh.py4
2 files changed, 7 insertions, 5 deletions
diff --git a/server.py b/server.py
index 8eb5a7e..0137b2b 100644
--- a/server.py
+++ b/server.py
@@ -1,4 +1,5 @@
import socket
+import sys
import threading
import uuid
@@ -7,8 +8,9 @@ import ssh
import termcast
class Server(object):
- def __init__(self):
+ def __init__(self, rsa_keyfile):
self.publisher = pubsub.Publisher()
+ self.rsa_keyfile = rsa_keyfile
def listen(self):
ssh_sock = self._open_socket(2200)
@@ -36,7 +38,7 @@ class Server(object):
def handle_ssh_connection(self, client):
self._handle_connection(
client,
- lambda client, connection_id: ssh.Connection(client, connection_id, self.publisher)
+ lambda client, connection_id: ssh.Connection(client, connection_id, self.publisher, self.rsa_keyfile)
)
def handle_termcast_connection(self, client):
@@ -71,5 +73,5 @@ class Server(object):
return sock
if __name__ == '__main__':
- server = Server()
+ server = Server(sys.argv[1])
server.listen()
diff --git a/ssh.py b/ssh.py
index 44f24f9..d4664bf 100644
--- a/ssh.py
+++ b/ssh.py
@@ -2,9 +2,9 @@ import paramiko
import time
class Connection(object):
- def __init__(self, client, connection_id, publisher):
+ def __init__(self, client, connection_id, publisher, rsa_keyfile):
self.transport = paramiko.Transport(client)
- self.transport.add_server_key(paramiko.RSAKey(filename='test_rsa.key'))
+ self.transport.add_server_key(paramiko.RSAKey(filename=rsa_keyfile))
self.connection_id = connection_id
self.publisher = publisher
self.initialized = False