def set_config_alienvault(system_id): param_names = [ 'framework_framework_ip', 'sensor_detectors', 'sensor_interfaces', 'sensor_mservers', 'sensor_networks', 'server_server_ip' ] (success, system_ip) = ret = get_system_ip_from_system_id(system_id) if not success: return make_error(system_ip, 500) set_values = {} for key, value in request.args.iteritems(): if key not in param_names: return make_error("Bad param %s" % key, 400) else: set_values[key] = value (success, config_values) = set_av_config(system_ip, set_values) if not success: current_app.logger.error("system: set_config_alienvault error: " + str(config_values)) return make_error( "Cannot set AlienVault configuration info %s" % str(config_values), 500) flush_cache(namespace="system") job = alienvault_asynchronous_reconfigure.delay(system_id) return make_ok(job_id=job.id)
def set_system_sensor_configuration(system_id, set_values): (success, system_ip) = get_system_ip_from_system_id(system_id) if not success: return (False, system_ip) (success, config_values) = set_av_config(system_ip, set_values) if not success: api_log.error("system: set_config_general error: " + str(config_values)) return (False, "Cannot set general configuration info: %s" % str(config_values)) return True, "OK"
def set_config_general(system_id): param_names = [ 'general_admin_dns', 'general_admin_gateway', 'general_admin_ip', 'general_admin_netmask', 'general_hostname', 'general_mailserver_relay', 'general_mailserver_relay_passwd', 'general_mailserver_relay_port', 'general_mailserver_relay_user', 'general_ntp_server', 'firewall_active' ] (success, system_ip) = ret = get_system_ip_from_system_id(system_id) if not success: return make_error(system_ip, 500) set_values = {} for key, value in request.args.iteritems(): if key not in param_names: return make_error("Bad param %s" % key, 400) else: set_values[key] = value (success, config_values) = set_av_config(system_ip, set_values) if not success: current_app.logger.error("system: set_config_general error: " + str(config_values)) return make_error( "Cannot set general configuration info %s" % str(config_values), 500) flush_cache(namespace="system") if 'general_hostname' in set_values: success, msg = db_system_update_hostname( system_id, set_values['general_hostname']) if not success: return make_error("Error setting values: %s" % msg, 500) if 'general_admin_ip' in set_values: success, msg = db_system_update_admin_ip( system_id, set_values['general_admin_ip']) if not success: return make_error("Error setting values: %s" % msg, 500) success, msg = ansible_add_ip_to_inventory( set_values['general_admin_ip']) if not success: return make_error("Error setting the admin IP address", 500) job = alienvault_asynchronous_reconfigure.delay(system_id) return make_ok(job_id=job.id)
def set_system_config(system_id, set_values): """ Set the configuration values to the system Args: system_id(str): The system id where the configuration will be setted set_values: key-value dictionary with the configuration settings Returns: (success, job_id): success=True when the operation when ok, otherwise success=False. On success job_id: id of the async reconfig job, error message string otherwise """ (success, system_ip) = get_system_ip_from_system_id(system_id) if not success: return (False, system_ip) (success, config_values) = set_av_config(system_ip, set_values) if not success: api_log.error("system: set_config_general error: " + str(config_values)) return (False, "Cannot set general configuration info: %s" % str(config_values)) flush_cache(namespace="system_config") if 'general_hostname' in set_values: success, msg = db_system_update_hostname( system_id, set_values['general_hostname']) if not success: return (False, "Error setting values: %s" % msg) new_admin_ip = None if 'general_admin_ip' in set_values: new_admin_ip = set_values['general_admin_ip'] success, msg = db_system_update_admin_ip( system_id, set_values['general_admin_ip']) if not success: return (False, "Error setting values: %s" % msg) success, msg = ansible_add_ip_to_inventory( set_values['general_admin_ip']) if not success: return (False, "Error setting the admin IP address") job = alienvault_asynchronous_reconfigure.delay(system_ip, new_admin_ip) return (True, job.id)
def set_system_config(system_id, set_values): """ Set the configuration values to the system Args: system_id(str): The system id where the configuration will be setted set_values: key-value dictionary with the configuration settings Returns: (success, job_id): success=True when the operation when ok, otherwise success=False. On success job_id: id of the async reconfig job, error message string otherwise """ (success, system_ip) = get_system_ip_from_system_id(system_id) if not success: return (False, system_ip) (success, config_values) = set_av_config(system_ip, set_values) if not success: api_log.error("system: set_config_general error: " + str(config_values)) return (False, "Cannot set general configuration info: %s" % str(config_values)) flush_cache(namespace="system_config") if "general_hostname" in set_values: success, msg = db_system_update_hostname(system_id, set_values["general_hostname"]) if not success: return (False, "Error setting values: %s" % msg) new_admin_ip = None if "general_admin_ip" in set_values: new_admin_ip = set_values["general_admin_ip"] success, msg = db_system_update_admin_ip(system_id, set_values["general_admin_ip"]) if not success: return (False, "Error setting values: %s" % msg) success, msg = ansible_add_ip_to_inventory(set_values["general_admin_ip"]) if not success: return (False, "Error setting the admin IP address") job = alienvault_asynchronous_reconfigure.delay(system_ip, new_admin_ip) return (True, job.id)
def set_sensor_context(sensor_id, context): """ Set the context for the sensor with sensor_id @param sensor_id: sensor id @param context: sensor context """ (success, system_ip) = get_sensor_ip_from_sensor_id(sensor_id) if not success: return (False, system_ip) # Set av_config values and apply new configuration set_values = {} set_values['sensor_sensor_ctx'] = context (success, data) = set_av_config(system_ip=system_ip, path_dict=set_values) if not success: api_log.error(data) return (False, data) (success, job_id) = job_alienvault_reconfigure(system_ip) return (success, job_id)
def set_config_general(system_id): param_names = ['general_admin_dns', 'general_admin_gateway', 'general_admin_ip', 'general_admin_netmask', 'general_hostname', 'general_mailserver_relay', 'general_mailserver_relay_passwd', 'general_mailserver_relay_port', 'general_mailserver_relay_user', 'general_ntp_server', 'firewall_active'] (success, system_ip) = ret = get_system_ip_from_system_id(system_id) if not success: return make_error(system_ip, 500) set_values = {} for key, value in request.args.iteritems(): if key not in param_names: return make_error ("Bad param %s" % key, 400) else: set_values[key] = value (success, config_values) = set_av_config(system_ip, set_values) if not success: current_app.logger.error("system: set_config_general error: " + str(config_values)) return make_error("Cannot set general configuration info %s" % str(config_values), 500) flush_cache(namespace="system") if 'general_hostname' in set_values: success, msg = db_system_update_hostname(system_id, set_values['general_hostname']) if not success: return make_error("Error setting values: %s" % msg, 500) if 'general_admin_ip' in set_values: success, msg = db_system_update_admin_ip(system_id, set_values['general_admin_ip']) if not success: return make_error("Error setting values: %s" % msg, 500) success, msg = ansible_add_ip_to_inventory(set_values['general_admin_ip']) if not success: return make_error("Error setting the admin IP address", 500) job = alienvault_asynchronous_reconfigure.delay(system_id) return make_ok(job_id=job.id)
def set_config_alienvault(system_id): param_names = ['framework_framework_ip', 'sensor_detectors', 'sensor_interfaces', 'sensor_mservers', 'sensor_networks', 'server_server_ip'] (success, system_ip) = ret = get_system_ip_from_system_id(system_id) if not success: return make_error(system_ip, 500) set_values = {} for key, value in request.args.iteritems(): if key not in param_names: return make_error ("Bad param %s" % key, 400) else: set_values[key] = value (success, config_values) = set_av_config(system_ip, set_values) if not success: current_app.logger.error("system: set_config_alienvault error: " + str(config_values)) return make_error("Cannot set AlienVault configuration info %s" % str(config_values), 500) flush_cache(namespace="system") job = alienvault_asynchronous_reconfigure.delay(system_id) return make_ok(job_id=job.id)