def init_test_server_by_name(name, port=0): server_class = protocols.name_mapping[name] template = { "guardian_ast": "guardian_ast", "IEC104": "IEC104", "kamstrup_management": "kamstrup_382", "kamstrup_meter": "kamstrup_382", }.get(name, "default") # Required by SNMP class Args(SimpleNamespace): mibcache = None if name in ("ftp", "tftp"): core.initialize_vfs() server, greenlet = spawn_test_server(server_class, template, name, args=Args(), port=port) # special case protocol with more complex start() logic # TODO: add serve_forever-Event() to servers to fix this properly if name == "http": sleep(0.5) return server, greenlet
def setUp(self): conpot_core.initialize_vfs() self.ftp_server, self.greenlet = spawn_test_server( FTPServer, "default", "ftp") self.client = ftplib.FTP() self.vfs, self.data_fs = conpot_core.get_vfs("ftp")
def setUp(self): # Initialize the file system conpot_core.initialize_vfs() # get the current directory self.dir_name = os.path.dirname(conpot.__file__) self.ftp_server = FTPServer(self.dir_name + '/templates/default/ftp/ftp.xml', None, None) self.server_greenlet = gevent.spawn(self.ftp_server.start, '127.0.0.1', 0) self.client = ftplib.FTP() gevent.sleep(1)
def setUp(self): # initialize the file system. conpot_core.initialize_vfs() self._test_file = '/'.join(conpot.__path__ + ['tests/data/test_data_fs/tftp/test.txt']) # get the current directory self.dir_name = os.path.dirname(conpot.__file__) self.tftp_server = TftpServer(self.dir_name + '/templates/default/tftp/tftp.xml', self.dir_name + '/templates/default', args=None) self.server_greenlet = gevent.spawn(self.tftp_server.start, '127.0.0.1', 0) gevent.sleep(1)
def setUp(self): # Initialize the file system conpot_core.initialize_vfs() # get the current directory self.dir_name = os.path.dirname(conpot.__file__) self.ftp_server = FTPServer( self.dir_name + '/templates/default/ftp/ftp.xml', None, None) self.server_greenlet = gevent.spawn(self.ftp_server.start, '127.0.0.1', 0) self.client = ftplib.FTP() gevent.sleep(1)
def setUp(self): conpot_core.initialize_vfs() self._vfs = conpot_core.get_vfs() self._vfs.register_user('test_user', 13) self._vfs.create_group('test_grp', 13) self.test_vfs = self._vfs.mount_fs( fs_url='/'.join(conpot.__path__ + ['tests/data/test_data_fs/vfs']), dst_path='/data', owner_uid=13, group_gid=13, perms=0o750)
def setUp(self): conpot_core.initialize_vfs() self.tftp_server, self.greenlet = spawn_test_server(TftpServer, template="default", protocol="tftp") self.client = TftpClient(self.tftp_server.server.server_host, self.tftp_server.server.server_port) self._test_file = "/".join(conpot.__path__ + ["tests/data/test_data_fs/tftp/test.txt"])
def setUp(self): conpot_core.initialize_vfs() self._vfs = conpot_core.get_vfs() self._vfs.register_user("test_user", 13) self._vfs.create_group("test_grp", 13) self.test_vfs = self._vfs.mount_fs( fs_url="/".join(conpot.__path__ + ["tests/data/test_data_fs/vfs"]), dst_path="/data", owner_uid=13, group_gid=13, perms=0o750, )
def setUp(self): conpot_core.initialize_vfs() self._vfs = conpot_core.get_vfs() self._vfs.register_user('test_user', 13) self._vfs.create_group('test_grp', 13) self.test_vfs = self._vfs.mount_fs( fs_url='/'.join(conpot.__path__ + ['tests/data/test_data_fs/vfs']), dst_path='/data', owner_uid=13, group_gid=13, perms=0o750 )
def setUp(self): conpot_core.initialize_vfs() self.test_vfs = conpot_core.get_vfs()
self.handler = FTPCommandChannel self.handler.config = FTPConfig(self.template) def start(self, host, port): self.handler.host, self.handler.port = host, port connection = (self.handler.host, self.handler.port) self.server = StreamServer(connection, self.handler.stream_server_handle) logger.info("FTP server started on: {}".format(connection)) self.server.serve_forever() def stop(self): logger.debug("Stopping FTP server") self.server.stop() del self.handler # ---- For debugging ---- if __name__ == "__main__": # Set vars for connection information TCP_IP = "127.0.0.1" TCP_PORT = 10001 import os conpot_core.initialize_vfs() test_template = os.getcwd() + "/../../templates/default/ftp/ftp.xml" server = FTPServer(test_template, None, None) try: server.start(TCP_IP, TCP_PORT) except KeyboardInterrupt: server.stop()
self.server = None # Initialize later # Initialize vfs here.. self.handler = FTPCommandChannel self.handler.config = FTPConfig(self.template) def start(self, host, port): self.handler.host, self.handler.port = host, port connection = (self.handler.host, self.handler.port) self.server = StreamServer(connection, self.handler.stream_server_handle) logger.info('FTP server started on: {}'.format(connection)) self.server.serve_forever() def stop(self): logger.debug('Stopping FTP server') self.server.stop() del self.handler # ---- For debugging ---- if __name__ == '__main__': # Set vars for connection information TCP_IP = '127.0.0.1' TCP_PORT = 10001 import os conpot_core.initialize_vfs() test_template = os.getcwd() + '/../../templates/default/ftp/ftp.xml' server = FTPServer(test_template, None, None) try: server.start(TCP_IP, TCP_PORT) except KeyboardInterrupt: server.stop()