def collect(self, config): log.debug('{0}:Start Collection of IIS Sites'.format(config.id)) ds0 = config.datasources[0] wql_iis6 = 'select ServerAutoStart from IIsWebServerSetting where name="{0}"'.format( ds0.params['statusname']) wql_iis7 = 'select ServerAutoStart from Site where name="{0}"'.format( ds0.params['statusname']) WinRMQueries = [ create_enum_info(wql=wql_iis6, resource_uri=resource_uri_iis6), create_enum_info(wql=wql_iis7, resource_uri=resource_uri_iis7), ] conn_info = createConnectionInfo(ds0) winrm = WinrmCollectClient() results = None try: results = yield winrm.do_collect(conn_info, WinRMQueries) except Exception as e: log.error("IISSiteDataSource error on %s: %s", config.id, e) log.debug(WinRMQueries) defer.returnValue(results)
def collect(self, config): log.info('{0}:Start Collection of Services'.format(config.id)) ds0 = config.datasources[0] scheme = ds0.zWinScheme port = int(ds0.zWinRMPort) auth_type = 'kerberos' if '@' in ds0.zWinRMUser else 'basic' connectiontype = 'Keep-Alive' keytab = ds0.zWinKeyTabFilePath dcip = ds0.zWinKDC servicename = ds0.params['servicename'] WinRMQueries = [ create_enum_info('select name, state, status, displayname'\ ' from Win32_Service where name = "{0}"'.format(servicename))] conn_info = ConnectionInfo(ds0.manageIp, auth_type, ds0.zWinRMUser, ds0.zWinRMPassword, scheme, port, connectiontype, keytab, dcip) winrm = WinrmCollectClient() results = yield winrm.do_collect(conn_info, WinRMQueries) log.debug(WinRMQueries) defer.returnValue(results)
def collect(self, config): ds0 = config.datasources[0] # build dictionary of datasource service info self.buildServicesDict(config.datasources) run_query = False for ds in config.datasources: id = ds.params['servicename'] svc_data = self.services.get(id) if svc_data.get('manual') or len(svc_data.get('modes',[])) > 0: run_query = True break # no need to run query if not run_query: log.warn('No startmodes defined in {} and not manually monitored. Terminating datasource collection.'.format(ds0.datasource)) defer.returnValue(None) log.debug('{0}:Start Collection of Services'.format(config.id)) WinRMQueries = [ create_enum_info( 'select name, state, status, displayname from Win32_Service' ) ] conn_info = createConnectionInfo(ds0) winrm = WinrmCollectClient() results = yield winrm.do_collect(conn_info, WinRMQueries) log.debug(WinRMQueries) defer.returnValue(results)
def collect(self, config): log.info('{0}:Start Collection of Services'.format(config.id)) ds0 = config.datasources[0] scheme = ds0.zWinScheme port = int(ds0.zWinRMPort) auth_type = 'kerberos' if '@' in ds0.zWinRMUser else 'basic' connectiontype = 'Keep-Alive' keytab = ds0.zWinKeyTabFilePath dcip = ds0.zWinKDC servicename = ds0.params['servicename'] WinRMQueries = [ create_enum_info('select name, state, status, displayname'\ ' from Win32_Service where name = "{0}"'.format(servicename))] conn_info = ConnectionInfo( ds0.manageIp, auth_type, ds0.zWinRMUser, ds0.zWinRMPassword, scheme, port, connectiontype, keytab, dcip) winrm = WinrmCollectClient() results = yield winrm.do_collect(conn_info, WinRMQueries) log.debug(WinRMQueries) defer.returnValue(results)
def collect(self, config): log.debug('{0}:Start Collection of Services'.format(config.id)) WinRMQueries = [ create_enum_info( 'select name, state, status, displayname from Win32_Service') ] conn_info = createConnectionInfo(config.datasources[0]) winrm = WinrmCollectClient() results = yield winrm.do_collect(conn_info, WinRMQueries) defer.returnValue(results)
def collect(self, config): ds0 = config.datasources[0] log.debug('{0}:Start WinRM connection test.'.format(config.id)) conn_info = createConnectionInfo(ds0) WinRMQueries = [ create_enum_info('select * from Win32_OperatingSystem') ] winrm = WinrmCollectClient() results = yield winrm.do_collect(conn_info, WinRMQueries) defer.returnValue(results)
def collect(self, config): ds0 = config.datasources[0] log.debug('{0}:Start WinRM connection test.'.format(config.id)) conn_info = createConnectionInfo(ds0) WinRMQueries = [ create_enum_info( 'select * from Win32_OperatingSystem' ) ] winrm = WinrmCollectClient() results = yield winrm.do_collect(conn_info, WinRMQueries) defer.returnValue(results)
def collect(self, config): log.debug('{0}:Start Collection of IIS Sites'.format(config.id)) ds0 = config.datasources[0] conn_info = createConnectionInfo(ds0) wql_iis6 = 'select ServerAutoStart from IIsWebServerSetting where name="{0}"'.format( ds0.params['statusname']) wql_iis7 = 'select ServerAutoStart from Site where name="{0}"'.format( ds0.params['statusname']) iis_version = ds0.params['iis_version'] if not iis_version: winrs = IISCommander(conn_info) version = yield winrs.get_iis_version() # version should be in 'Version x.x' format # 7 and above use the same namespace/query try: iis_version = re.match('Version (\d).*', version.stdout[0]).group(1) except (IndexError, AttributeError): if version.stdout: log.error("Malformed version information: {}".format( version.stdout[0])) if version.stderr: log.error("Error retrieving IIS Version: {}".format( version.stderr[0])) defer.returnValue(None) if iis_version == 6: WinRMQueries = [ create_enum_info(wql=wql_iis6, resource_uri=resource_uri_iis6) ] else: WinRMQueries = [ create_enum_info(wql=wql_iis7, resource_uri=resource_uri_iis7) ] winrm = WinrmCollectClient() results = yield winrm.do_collect(conn_info, WinRMQueries) log.debug(WinRMQueries) defer.returnValue(results)
def collect(self, config): log.debug('{0}:Start Collection of IIS Sites'.format(config.id)) ds0 = config.datasources[0] conn_info = createConnectionInfo(ds0) wql_iis6 = 'select ServerAutoStart from IIsWebServerSetting where name="{0}"'.format( ds0.params['statusname']) wql_iis7 = 'select ServerAutoStart from Site where name="{0}"'.format( ds0.params['statusname']) iis_version = ds0.params['iis_version'] if not iis_version: winrs = IISCommander(conn_info) version = yield winrs.get_iis_version() # version should be in 'Version x.x' format # 7 and above use the same namespace/query try: iis_version = re.match('Version (\d).*', version.stdout[0]).group(1) except (IndexError, AttributeError): if version.stdout: log.error("Malformed version information: {}".format(version.stdout[0])) if version.stderr: log.error("Error retrieving IIS Version: {}".format(version.stderr[0])) defer.returnValue(None) if iis_version == 6: WinRMQueries = [create_enum_info(wql=wql_iis6, resource_uri=resource_uri_iis6),] else: WinRMQueries = [create_enum_info(wql=wql_iis7, resource_uri=resource_uri_iis7),] winrm = WinrmCollectClient() results = None try: results = yield winrm.do_collect(conn_info, WinRMQueries) except Exception as e: log.error("IISSiteDataSource error on %s: %s", config.id, e) log.debug(WinRMQueries) defer.returnValue(results)
def collect(self, config): log.info('{0}:Start Collection of Services'.format(config.id)) ds0 = config.datasources[0] servicename = ds0.params['servicename'] WinRMQueries = [ create_enum_info( 'select name, state, status, displayname' ' from Win32_Service where name = "{0}"'.format(servicename)) ] conn_info = createConnectionInfo(ds0) winrm = WinrmCollectClient() results = yield winrm.do_collect(conn_info, WinRMQueries) log.debug(WinRMQueries) defer.returnValue(results)
def collect(self, config): ds0 = config.datasources[0] servicename = ds0.params['servicename'] log.debug('{0}:Start Collection of Service {1}'.format(config.id, servicename)) WinRMQueries = [ create_enum_info( 'select name, state, status, displayname' ' from Win32_Service where name = "{0}"'.format(servicename) ) ] conn_info = createConnectionInfo(ds0) winrm = WinrmCollectClient() results = yield winrm.do_collect(conn_info, WinRMQueries) log.debug(WinRMQueries) defer.returnValue(results)
def collect(self, config): log.debug('{0}:Start Collection of IIS Sites'.format(config.id)) ds0 = config.datasources[0] wql_iis6 = 'select ServerAutoStart from IIsWebServerSetting where name="{0}"'.format( ds0.params['statusname']) wql_iis7 = 'select ServerAutoStart from Site where name="{0}"'.format( ds0.params['statusname']) WinRMQueries = [ create_enum_info(wql=wql_iis6, resource_uri=resource_uri_iis6), create_enum_info(wql=wql_iis7, resource_uri=resource_uri_iis7), ] conn_info = createConnectionInfo(ds0) winrm = WinrmCollectClient() results = yield winrm.do_collect(conn_info, WinRMQueries) log.debug(WinRMQueries) defer.returnValue(results)
def collect(self, config): log.debug("{0}:Start Collection of IIS Sites".format(config.id)) ds0 = config.datasources[0] scheme = ds0.zWinScheme port = int(ds0.zWinRMPort) auth_type = "kerberos" if "@" in ds0.zWinRMUser else "basic" connectiontype = "Keep-Alive" keytab = ds0.zWinKeyTabFilePath dcip = ds0.zWinKDC wql = 'select ServerAutoStart from IIsWebServerSetting where name="{0}"'.format(ds0.params["statusname"]) WinRMQueries = [create_enum_info(wql=wql, resource_uri=resource_uri)] conn_info = ConnectionInfo( ds0.manageIp, auth_type, ds0.zWinRMUser, ds0.zWinRMPassword, scheme, port, connectiontype, keytab, dcip ) winrm = WinrmCollectClient() results = yield winrm.do_collect(conn_info, WinRMQueries) log.debug(WinRMQueries) defer.returnValue(results)
def collect(self, config): log.debug('{0}:Start Collection of IIS Sites'.format(config.id)) ds0 = config.datasources[0] scheme = ds0.zWinScheme port = int(ds0.zWinRMPort) auth_type = 'kerberos' if '@' in ds0.zWinRMUser else 'basic' connectiontype = 'Keep-Alive' keytab = ds0.zWinKeyTabFilePath dcip = ds0.zWinKDC wql = 'select ServerAutoStart from IIsWebServerSetting where name="{0}"'.format( ds0.params['statusname']) WinRMQueries = [create_enum_info(wql=wql, resource_uri=resource_uri)] conn_info = ConnectionInfo(ds0.manageIp, auth_type, ds0.zWinRMUser, ds0.zWinRMPassword, scheme, port, connectiontype, keytab, dcip) winrm = WinrmCollectClient() results = yield winrm.do_collect(conn_info, WinRMQueries) log.debug(WinRMQueries) defer.returnValue(results)
def collect(self, config): ds0 = config.datasources[0] if ds0.params['startmode'] == 'None': log.debug('No startmodes defined in {}. Terminating datasource collection.'.format(ds0.datasource)) defer.returnValue(None) log.debug('{0}:Start Collection of Services'.format(config.id)) WinRMQueries = [ create_enum_info( 'select name, state, status, displayname from Win32_Service' ) ] conn_info = createConnectionInfo(ds0) winrm = WinrmCollectClient() results = yield winrm.do_collect(conn_info, WinRMQueries) log.debug(WinRMQueries) defer.returnValue(results)