diff options
author | Jesse Luehrs <doy@tozt.net> | 2014-09-15 02:01:32 -0400 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2014-09-15 02:01:32 -0400 |
commit | 4cde2aef1f9f77f559a19d35b796fb3a19184eae (patch) | |
tree | fba8e0b160e4e8f90ae07b6cb5d8186575106bb1 | |
parent | f144cdf8adcb233a0a56e3bc0fe0ad6d9bdc1286 (diff) | |
download | python-termcast-server-4cde2aef1f9f77f559a19d35b796fb3a19184eae.tar.gz python-termcast-server-4cde2aef1f9f77f559a19d35b796fb3a19184eae.zip |
make the ssh private key configurable
-rw-r--r-- | server.py | 8 | ||||
-rw-r--r-- | ssh.py | 4 |
2 files changed, 7 insertions, 5 deletions
@@ -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() @@ -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 |