# Copyright (c) 2010 Flowerfire, Inc. All Rights Reserved. linksys_vpn_router = { plugin_version = "1.0" info.1.manufacturer = "Cisco" info.1.device = "LinkSys VPN Router" info.1.version.1 = "10/100 4-port" # 2009-04-02 - 1.0 - GMF - Initial implementation # 2011-06-20 - 1.0.1 - MSG - Edited info lines. # The name of the log format log.format.format_label = "LinkSys VPN Router" log.miscellaneous.log_data_type = "syslog_required" log.miscellaneous.log_format_type = "network_device" # The log is in this format if any of the first ten lines match this regular expression # 2009-04-01 17:44:20 Daemon.Info 192.168.1.254 ec 31 17:38:34 2002 RV042 RGFW-IN: BLOCK-RULES (TCP 12.34.56.78:4166->98.76.54.32:25 on ixp1) [0,0] log.format.autodetect_regular_expression = "[A-Z]?[a-z][a-z] [0-9 ]+ [0-9][0-9]:[0-9][0-9]:[0-9][0-9] [0-9][0-9][0-9][0-9] [^ ]+ [^:]+: (ACCEPT|BLOCK-RULES)" # All log field parsing will be done using the parsing filters log.format.parse_only_with_filters = "true" # Log fields log.fields = { action = "" protocol = "" source_ip.type = "host" source_port = "" destination_ip = "" destination_port = "" interface = "" } # log.fields # Log Parsing Filters log.parsing_filters.parse = ` # 2009-04-01 17:44:20 Daemon.Info 192.168.1.254 ec 31 17:38:34 2002 RV042 RGFW-IN: BLOCK-RULES (TCP 12.34.56.78:4166->98.76.54.32:25 on ixp1) [0,0] if (matches_regular_expression(v.syslog_message, '^[A-Z]?[a-z][a-z] [0-9 ]+ [0-9][0-9]:[0-9][0-9]:[0-9][0-9] [0-9][0-9][0-9][0-9] [^ ]+ [^:]+: ([^ ]+) [(]([^ ]+) ([0-9.]+):([0-9]+)->([0-9.]+):([0-9]+) on ([^)]+)[)]')) then ( set_collected_field('', 'action', $1); set_collected_field('', 'protocol', $2); set_collected_field('', 'source_ip', $3); set_collected_field('', 'source_port', $4); set_collected_field('', 'destination_ip', $5); set_collected_field('', 'destination_port', $6); set_collected_field('', 'interface', $7); accept_collected_entry('', false); ); # if matches ` # Database fields database.fields = { action = "" protocol = "" source_ip = "" source_port = "" destination_ip = "" destination_port = "" interface = "" } # database.fields # Log Filters log.filters = { mark_entry = { label = '$lang_admin.log_filters.mark_entry_label' comment = '$lang_admin.log_filters.mark_entry_comment' value = 'accesses = 1;' } # mark_entry } # log.filters database.numerical_fields = { accesses = { default = true requires_log_field = false entries_field = true } # accesses unique_source_ips = { log_field = "source_ip" type = "unique" } # unique_source_ips unique_destination_ips = { log_field = "destination_ip" type = "unique" } # unique_destination_ips } # database.numerical_fields create_profile_wizard_options = { # How the reports should be grouped in the report menu report_groups = { date_time_group = "" } # report_groups } # create_profile_wizard_options } # linksys_vpn_router