]> git.ipfire.org Git - people/stevee/ipfire-2.x.git/log
people/stevee/ipfire-2.x.git
2 years agoids.cgi: Allow whitespaces when parsing the rules files.
Stefan Schantl [Tue, 13 Apr 2021 16:08:12 +0000 (18:08 +0200)] 
ids.cgi: Allow whitespaces when parsing the rules files.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoconvert-ids-multiple-providers: Fix setting ownership for the main
Stefan Schantl [Sun, 11 Apr 2021 07:02:33 +0000 (09:02 +0200)] 
convert-ids-multiple-providers: Fix setting ownership for the main
oinkmaster provider includes file.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Fix writing for used provider rulefiles.
Stefan Schantl [Sat, 10 Apr 2021 16:59:19 +0000 (18:59 +0200)] 
ids-functions.pl: Fix writing for used provider rulefiles.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoconvert-ids-multiple-providers: Proper open the oinkmaster providers
Stefan Schantl [Sat, 10 Apr 2021 16:54:35 +0000 (18:54 +0200)] 
convert-ids-multiple-providers: Proper open the oinkmaster providers
sids file for writing.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoconvert-ids-multiple-providers: Fix typo which tried to load the wrong
Stefan Schantl [Sat, 10 Apr 2021 16:53:27 +0000 (18:53 +0200)] 
convert-ids-multiple-providers: Fix typo which tried to load the wrong
lib.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoconvert-ids-multiple-providers: Remove old used rulefiles file.
Stefan Schantl [Wed, 7 Apr 2021 18:47:07 +0000 (20:47 +0200)] 
convert-ids-multiple-providers: Remove old used rulefiles file.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoconvert-ids-multiple-providers: Always remove old enabled / disabled
Stefan Schantl [Wed, 7 Apr 2021 18:45:32 +0000 (20:45 +0200)] 
convert-ids-multiple-providers: Always remove old enabled / disabled
sids files.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoconvert-ids-multiple-providers: Restart suricata afterwards.
Stefan Schantl [Mon, 5 Apr 2021 06:44:00 +0000 (08:44 +0200)] 
convert-ids-multiple-providers: Restart suricata afterwards.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agobackup.pl: Launch convert-ids-multiple-providers if neccessary.
Stefan Schantl [Mon, 5 Apr 2021 06:03:38 +0000 (08:03 +0200)] 
backup.pl: Launch convert-ids-multiple-providers if neccessary.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoIDS: Add convert-ids-multiple-provider script.
Stefan Schantl [Mon, 5 Apr 2021 05:59:09 +0000 (07:59 +0200)] 
IDS: Add convert-ids-multiple-provider script.

This converter does all the magic to convert any suricata
based IPFire version to work with the new multiple providers
IDS.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Do not expect a space before the sid when parsing rulefiles.
Stefan Schantl [Mon, 5 Apr 2021 05:52:30 +0000 (07:52 +0200)] 
ids.cgi: Do not expect a space before the sid when parsing rulefiles.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoconvert-snort: Adjust converter to work with new IDS.
Stefan Schantl [Mon, 5 Apr 2021 05:39:29 +0000 (07:39 +0200)] 
convert-snort: Adjust converter to work with new IDS.

Only in case if somebody tries to import such an old backup.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Remove as deprecated marked variables.
Stefan Schantl [Mon, 5 Apr 2021 05:19:34 +0000 (07:19 +0200)] 
ids-functions.pl: Remove as deprecated marked variables.

They are not needed anymore.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoruleset-sources: Update download URL for Talos rulesets.
Stefan Schantl [Mon, 5 Apr 2021 05:13:45 +0000 (07:13 +0200)] 
ruleset-sources: Update download URL for Talos rulesets.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoruleset-sources: Add additional providers.
Stefan Schantl [Mon, 5 Apr 2021 05:12:00 +0000 (07:12 +0200)] 
ruleset-sources: Add additional providers.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Sort elements in providers dropdown menu.
Stefan Schantl [Mon, 5 Apr 2021 05:11:04 +0000 (07:11 +0200)] 
ids.cgi: Sort elements in providers dropdown menu.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Only write existing provider specific used rulesfiles
Stefan Schantl [Sun, 4 Apr 2021 10:22:13 +0000 (12:22 +0200)] 
ids-functions.pl: Only write existing provider specific used rulesfiles
files into main include yaml file.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoIDS: Move read_enabled_disabled_sids_file() function to ids-functions.pl.
Stefan Schantl [Sun, 4 Apr 2021 08:15:27 +0000 (10:15 +0200)] 
IDS: Move read_enabled_disabled_sids_file() function to ids-functions.pl.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agobackup: Adjust includes file to include new IDS files into backups.
Stefan Schantl [Sun, 4 Apr 2021 06:25:36 +0000 (08:25 +0200)] 
backup: Adjust includes file to include new IDS files into backups.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoRevert "ids-functions.pl: Remove config files on rulesdir cleanup."
Stefan Schantl [Sun, 4 Apr 2021 06:15:48 +0000 (08:15 +0200)] 
Revert "ids-functions.pl: Remove config files on rulesdir cleanup."

Not all config files are shipped by the rulesets. For example the
"threshold.conf" and the "referneces.conf" are not include in each
ruleset.

Therefore it is not a common way to delete all config files. It is
much safer to simple keep them and overwrite existing ones by the
generated ones.

This reverts commit a71c3c9dcc60541aa4504d0f1fb0a78c0d58ed5e.

2 years agoids-functions.pl: Move code to handle plain rules files to
Stefan Schantl [Fri, 2 Apr 2021 18:22:15 +0000 (20:22 +0200)] 
ids-functions.pl: Move code to handle plain rules files to
extractruleset() function.

Now everithing which is extracting or moving stored ruleset files is
easily accessing via one function which takes care about.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Only read providers used rulefiles file if it exists.
Stefan Schantl [Fri, 2 Apr 2021 11:47:36 +0000 (13:47 +0200)] 
ids-functions.pl: Only read providers used rulefiles file if it exists.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Fix accidently commited debug file path.
Stefan Schantl [Fri, 2 Apr 2021 11:46:47 +0000 (13:46 +0200)] 
ids-functions.pl: Fix accidently commited debug file path.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoupdate-ids-ruleset: Port script to work with multiple providers.
Stefan Schantl [Fri, 2 Apr 2021 09:45:00 +0000 (11:45 +0200)] 
update-ids-ruleset: Port script to work with multiple providers.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agolangs-de.pl: Fix grammar.
Stefan Schantl [Fri, 2 Apr 2021 09:24:03 +0000 (11:24 +0200)] 
langs-de.pl: Fix grammar.

Even as a native speaker, it seems german sometimes is a very difficult language......

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Add code to handle the reset of a provider to it's defaults.
Stefan Schantl [Fri, 2 Apr 2021 09:21:00 +0000 (11:21 +0200)] 
ids.cgi: Add code to handle the reset of a provider to it's defaults.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Make backend code for forced ruleset update working again.
Stefan Schantl [Fri, 2 Apr 2021 09:00:17 +0000 (11:00 +0200)] 
ids.cgi: Make backend code for forced ruleset update working again.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Add section for additional provider actions.
Stefan Schantl [Fri, 2 Apr 2021 08:47:55 +0000 (10:47 +0200)] 
ids.cgi: Add section for additional provider actions.

This section only will be displayed when an existing provider will be
edited and allows to reset a provider back to it's defaults or to force
a ruleset update.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Fix display issue with colum backgound colour in provider list.
Stefan Schantl [Fri, 2 Apr 2021 08:12:02 +0000 (10:12 +0200)] 
ids.cgi: Fix display issue with colum backgound colour in provider list.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Handle oinkmaster provider includes when deleting a provider.
Stefan Schantl [Fri, 2 Apr 2021 08:05:12 +0000 (10:05 +0200)] 
ids.cgi: Handle oinkmaster provider includes when deleting a provider.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Fix function call of get_used_provider_rulesfile_file().
Stefan Schantl [Fri, 2 Apr 2021 08:04:21 +0000 (10:04 +0200)] 
ids.cgi: Fix function call of get_used_provider_rulesfile_file().

The function is locatated in the IDS module and therefore needs to be
called from there.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Add/Remove provider file include in oinkmaster providers
Stefan Schantl [Fri, 2 Apr 2021 07:35:42 +0000 (09:35 +0200)] 
ids.cgi: Add/Remove provider file include in oinkmaster providers
include file when toggeling a provider.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Check if the file exists bevore adding it to the
Stefan Schantl [Fri, 2 Apr 2021 07:34:28 +0000 (09:34 +0200)] 
ids-functions.pl: Check if the file exists bevore adding it to the
oinkmaster provider includes file.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Introduce alter_oinkmaster_provider_includes_file().
Stefan Schantl [Fri, 2 Apr 2021 07:13:17 +0000 (09:13 +0200)] 
ids-functions.pl: Introduce alter_oinkmaster_provider_includes_file().

This function can be used to directly modify the desired file.

It takes two arguments:
 * An action which could be "add" or "remove"
 * A provider handle, which should be added or removed.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Use get_oinkmaster_provider_modified_sids_file() function.
Stefan Schantl [Fri, 2 Apr 2021 06:06:53 +0000 (08:06 +0200)] 
ids.cgi: Use get_oinkmaster_provider_modified_sids_file() function.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Introduce get_oinkmaster_provider_modified_sids_file()
Stefan Schantl [Fri, 2 Apr 2021 06:04:46 +0000 (08:04 +0200)] 
ids-functions.pl: Introduce get_oinkmaster_provider_modified_sids_file()
function.

This function simply returns the gernerated path and filename for the
provider specific modified sids file.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoIDS: Redesign backend for enabled/disabled sids in rulefiles.
Stefan Schantl [Thu, 1 Apr 2021 18:02:48 +0000 (20:02 +0200)] 
IDS: Redesign backend for enabled/disabled sids in rulefiles.

The enabled or disabled sids now will be written to an own
provider exclusive configuration file which dynamically will
be included by oinkmaster if needed.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Bring back usage of whitelist.rules and local.rules
Stefan Schantl [Thu, 1 Apr 2021 14:36:13 +0000 (16:36 +0200)] 
ids-functions.pl: Bring back usage of whitelist.rules and local.rules
files.

They now automatically will be included as static includes if the files
are present.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Use get_ruleset_date() from ids-functions.pl.
Stefan Schantl [Thu, 1 Apr 2021 14:02:50 +0000 (16:02 +0200)] 
ids.cgi: Use get_ruleset_date() from ids-functions.pl.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Introduce get_ruleset_date() function.
Stefan Schantl [Thu, 1 Apr 2021 14:02:04 +0000 (16:02 +0200)] 
ids-functions.pl: Introduce get_ruleset_date() function.

This function is used to get the creation date of the stored rules files
of a given provider.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Prevent from chainging the provider when editing an existing
Stefan Schantl [Thu, 1 Apr 2021 13:48:44 +0000 (15:48 +0200)] 
ids.cgi: Prevent from chainging the provider when editing an existing
one.

This commit locks the dropdown menu for selecting a provider, in case
an existing one should be edited.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Add hardcoded error message to language files.
Stefan Schantl [Thu, 1 Apr 2021 13:13:30 +0000 (15:13 +0200)] 
ids.cgi: Add hardcoded error message to language files.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Fix check and message when trying to enable suricata without
Stefan Schantl [Thu, 1 Apr 2021 13:09:59 +0000 (15:09 +0200)] 
ids.cgi: Fix check and message when trying to enable suricata without
any enabled or no provider.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Lock the CGI when a provder will be deleted.
Stefan Schantl [Thu, 1 Apr 2021 10:02:45 +0000 (12:02 +0200)] 
ids.cgi: Lock the CGI when a provder will be deleted.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Drop old code to handle the settings of the ruleset section.
Stefan Schantl [Thu, 1 Apr 2021 09:55:40 +0000 (11:55 +0200)] 
ids.cgi: Drop old code to handle the settings of the ruleset section.

This entirely has been replaced by the providers section and the code to
handle the actions of this section.

Therefore this code is not longer needed.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Finish code to handle the removal of a provider from the list.
Stefan Schantl [Thu, 1 Apr 2021 09:50:44 +0000 (11:50 +0200)] 
ids.cgi: Finish code to handle the removal of a provider from the list.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Finish code to handle toggeling a provider enabled/disabled.
Stefan Schantl [Thu, 1 Apr 2021 09:46:11 +0000 (11:46 +0200)] 
ids.cgi: Finish code to handle toggeling a provider enabled/disabled.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoIDS: Redesign backend for used provider rulesfiles.
Stefan Schantl [Thu, 1 Apr 2021 09:39:57 +0000 (11:39 +0200)] 
IDS: Redesign backend for used provider rulesfiles.

The selected rulesfiles of a provider now will be written to an own
provider exclusive yaml file, which will be included dynamically when
the provider is enabled or not.

This allows very easy handling to enable or disable a provider, in this
case the file which keeps the enabled providers rulesets only needs to
be included in the main file or even not.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Add action if a new provider is added.
Stefan Schantl [Wed, 31 Mar 2021 11:41:28 +0000 (13:41 +0200)] 
ids.cgi: Add action if a new provider is added.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Introduce move_tmp_ruleset() function.
Stefan Schantl [Wed, 31 Mar 2021 11:39:43 +0000 (13:39 +0200)] 
ids-functions.pl: Introduce move_tmp_ruleset() function.

This function is used to move an extracted temporary ruleset to
the rules location.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Fix another typo.
Stefan Schantl [Wed, 31 Mar 2021 10:31:18 +0000 (12:31 +0200)] 
ids-functions.pl: Fix another typo.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Remove accidently commited debug code.
Stefan Schantl [Wed, 31 Mar 2021 10:22:17 +0000 (12:22 +0200)] 
ids-functions.pl: Remove accidently commited debug code.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Rework oinkmaster() to use get_enabled_providers
Stefan Schantl [Wed, 31 Mar 2021 10:21:41 +0000 (12:21 +0200)] 
ids-functions.pl: Rework oinkmaster() to use get_enabled_providers
function.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Introduce get_enabled_providers() function.
Stefan Schantl [Wed, 31 Mar 2021 10:16:24 +0000 (12:16 +0200)] 
ids-functions.pl: Introduce get_enabled_providers() function.

This function simply returns an array with all enabled ruleset
providers.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Fix typo.
Stefan Schantl [Wed, 31 Mar 2021 10:16:01 +0000 (12:16 +0200)] 
ids-functions.pl: Fix typo.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Use get_used_rulesfiles function from ids-functions.pl.
Stefan Schantl [Wed, 31 Mar 2021 10:02:27 +0000 (12:02 +0200)] 
ids.cgi: Use get_used_rulesfiles function from ids-functions.pl.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Introduce get_used_rulesfiles() function.
Stefan Schantl [Wed, 31 Mar 2021 10:01:22 +0000 (12:01 +0200)] 
ids-functions.pl: Introduce get_used_rulesfiles() function.

This function simply returns an array which contains the used rulesfiles
files.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Introduce drop_dl_rulesfile().
Stefan Schantl [Wed, 31 Mar 2021 09:26:24 +0000 (11:26 +0200)] 
ids-functions.pl: Introduce drop_dl_rulesfile().

This tiny function is used, to delete the stored rulesfile in case a
provider will be deleted.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Rework function for modify-sid file to be more
Stefan Schantl [Wed, 31 Mar 2021 08:49:19 +0000 (10:49 +0200)] 
ids-functions.pl: Rework function for modify-sid file to be more
generic.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Add cleanup_tmp_directory() function.
Stefan Schantl [Wed, 31 Mar 2021 08:45:14 +0000 (10:45 +0200)] 
ids-functions.pl: Add cleanup_tmp_directory() function.

As the name of the function already says, it is responsible to
delete all temporary files after ruleset generation.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Remove config files on rulesdir cleanup.
Stefan Schantl [Mon, 29 Mar 2021 14:53:52 +0000 (16:53 +0200)] 
ids-functions.pl: Remove config files on rulesdir cleanup.

They every time oinkmaster is called will be generated.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Rework oinkmaster() function.
Stefan Schantl [Mon, 29 Mar 2021 14:51:18 +0000 (16:51 +0200)] 
ids-functions.pl: Rework oinkmaster() function.

Rework the function to work with the latest changes and multiple
providers.

The function now does the following:

* Extract the stored rules tarballs for all enabled providers.
* Copy rules files for enabled providers which provide plain files.
* Still calls oinkmaster to set up the rules and modify them.
* Calls the merge functions for classification and sid to msg files.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Assign temporary rules and conf path to variables.
Stefan Schantl [Mon, 29 Mar 2021 13:50:04 +0000 (15:50 +0200)] 
ids-functions.pl: Assign temporary rules and conf path to variables.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Introduce merge_sid_msg() function.
Stefan Schantl [Mon, 29 Mar 2021 13:27:42 +0000 (15:27 +0200)] 
ids-functions.pl: Introduce merge_sid_msg() function.

This function is used to merge the sid to message mapping files
from various providers.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Fix typo.
Stefan Schantl [Sun, 28 Mar 2021 10:49:56 +0000 (12:49 +0200)] 
ids-functions.pl: Fix typo.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Introduce merge_classifications() function.
Stefan Schantl [Sun, 28 Mar 2021 10:47:23 +0000 (12:47 +0200)] 
ids-functions.pl: Introduce merge_classifications() function.

This function is used to merge the individual classification files
provided by the providers.

The result will be written to the classification.config which will be
used by the IDS.

Fixes #11884.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Introduce extraceruleset() function.
Stefan Schantl [Sat, 27 Mar 2021 11:07:45 +0000 (12:07 +0100)] 
ids-functions.pl: Introduce extraceruleset() function.

This function is used to extract the required config and rules files
from the stored rules tarball for a given ruleset provider.

* The files will be extracted to a temporary directory layout in
  "/tmp/ids_tmp".

* Names of config files will be adjusted in case multiple providers
  offers the same config files, which is very common.

* The name of the single rulefiles will be adjusted to start with
  the vendors name to allow assigning them very easily to a single
  ruleset provider.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Always delete temporary file.
Stefan Schantl [Sat, 27 Mar 2021 11:07:13 +0000 (12:07 +0100)] 
ids-functions.pl: Always delete temporary file.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Fix typo.
Stefan Schantl [Sat, 27 Mar 2021 11:06:44 +0000 (12:06 +0100)] 
ids-functions.pl: Fix typo.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoruleset-sources: Rename file to plain.
Stefan Schantl [Fri, 26 Mar 2021 12:27:48 +0000 (13:27 +0100)] 
ruleset-sources: Rename file to plain.

This is used if a provider offers a plain rulefile instead an archive.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Allow downloadruleset() function to deal with
Stefan Schantl [Fri, 26 Mar 2021 12:24:26 +0000 (13:24 +0100)] 
ids-functions.pl: Allow downloadruleset() function to deal with
multiple ruleset providers.

When calling the function now a single ruleset provider handle
can be specified to only download this ruleset or by adding "all" or
leaving the handle blank a download of all configured rulesets can be
triggered.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Introduce private _get_dl_rulesfile() function.
Stefan Schantl [Fri, 26 Mar 2021 12:19:58 +0000 (13:19 +0100)] 
ids-functions.pl: Introduce private _get_dl_rulesfile() function.

This function can be used to generate/get the absolute file and path
for a given ruleset provider.

The files will be stored in the usual "/var/tmp" folder with a new
file format based on the dl_file type and the provider.

Examples could be:
* /var/ipfire/idsrules-emerging.tar.gz
* /var/ipfire/idsrules-registered.tar.gz
* /var/ipfire/idsrules-somprovider.rules

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Run in perl strict mode.
Stefan Schantl [Fri, 26 Mar 2021 12:17:59 +0000 (13:17 +0100)] 
ids-functions.pl: Run in perl strict mode.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoruleset-sources: Fix website url for community ruleset.
Stefan Schantl [Fri, 26 Mar 2021 12:16:40 +0000 (13:16 +0100)] 
ruleset-sources: Fix website url for community ruleset.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoruleset-sources: Replace subscription code placeholder.
Stefan Schantl [Fri, 26 Mar 2021 12:15:04 +0000 (13:15 +0100)] 
ruleset-sources: Replace subscription code placeholder.

Replace the <oinkcode> placeholder by the more generic
<subscription_code>.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Add code to handle enable/disable a provider.
Stefan Schantl [Tue, 23 Mar 2021 16:42:07 +0000 (17:42 +0100)] 
ids.cgi: Add code to handle enable/disable a provider.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Add code to handle enable/disable autoupdate for a provider.
Stefan Schantl [Tue, 23 Mar 2021 16:40:44 +0000 (17:40 +0100)] 
ids.cgi: Add code to handle enable/disable autoupdate for a provider.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Fix type in method.
Stefan Schantl [Tue, 23 Mar 2021 16:40:12 +0000 (17:40 +0100)] 
ids.cgi: Fix type in method.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Remove accidently commited commented code snipped.
Stefan Schantl [Tue, 23 Mar 2021 16:39:32 +0000 (17:39 +0100)] 
ids.cgi: Remove accidently commited commented code snipped.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Correctly use "enabled" for checked checkboxes.
Stefan Schantl [Tue, 23 Mar 2021 16:38:26 +0000 (17:38 +0100)] 
ids.cgi: Correctly use "enabled" for checked checkboxes.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Read-in providers settings file when neccessary.
Stefan Schantl [Tue, 23 Mar 2021 16:37:33 +0000 (17:37 +0100)] 
ids.cgi: Read-in providers settings file when neccessary.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Add code to add/edit a ruleset provider.
Stefan Schantl [Tue, 23 Mar 2021 15:20:52 +0000 (16:20 +0100)] 
ids.cgi: Add code to add/edit a ruleset provider.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoUpdate language files.
Stefan Schantl [Tue, 23 Mar 2021 15:20:17 +0000 (16:20 +0100)] 
Update language files.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Introduce providers_settings_file.
Stefan Schantl [Tue, 23 Mar 2021 13:58:09 +0000 (14:58 +0100)] 
ids-functions.pl: Introduce providers_settings_file.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Rework rulesetsettings section.
Stefan Schantl [Tue, 23 Mar 2021 13:56:11 +0000 (14:56 +0100)] 
ids.cgi: Rework rulesetsettings section.

* The page and section now supports multiple ruleset providers at once.
* Adding / Editing a ruleset provider has been moved to a own sub-page.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoruleset-sources: Fix website details for emergingthreats provider.
Stefan Schantl [Tue, 23 Mar 2021 11:39:13 +0000 (12:39 +0100)] 
ruleset-sources: Fix website details for emergingthreats provider.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Move configuration of ruleset autoupdate intervall to IDS main
Stefan Schantl [Mon, 22 Mar 2021 15:27:33 +0000 (16:27 +0100)] 
ids.cgi: Move configuration of ruleset autoupdate intervall to IDS main
section.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Stop showing ruleset date on customize rulest sub-page.
Stefan Schantl [Mon, 22 Mar 2021 13:42:42 +0000 (14:42 +0100)] 
ids.cgi: Stop showing ruleset date on customize rulest sub-page.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Add "Back" button to customize ruleset sub-page.
Stefan Schantl [Mon, 22 Mar 2021 10:48:58 +0000 (11:48 +0100)] 
ids.cgi: Add "Back" button to customize ruleset sub-page.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Move / Splitt main page and customize ruleset subpage.
Stefan Schantl [Sun, 21 Mar 2021 20:41:42 +0000 (21:41 +0100)] 
ids.cgi: Move / Splitt main page and customize ruleset subpage.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Only read-in ruleset if neccessary.
Stefan Schantl [Sun, 21 Mar 2021 16:22:29 +0000 (17:22 +0100)] 
ids.cgi: Only read-in ruleset if neccessary.

This process takes some time, especially on huge rulesets.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Add button to customize the ruleset.
Stefan Schantl [Sun, 21 Mar 2021 16:17:05 +0000 (17:17 +0100)] 
ids.cgi: Add button to customize the ruleset.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Introduce and use get_provider_name() function.
Stefan Schantl [Sat, 20 Mar 2021 17:07:57 +0000 (18:07 +0100)] 
ids.cgi: Introduce and use get_provider_name() function.

This function is used to grab the name of a provider by the given
handle.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Move the section to customize the IDS ruleset to a function.
Stefan Schantl [Sat, 20 Mar 2021 15:58:11 +0000 (16:58 +0100)] 
ids.cgi: Move the section to customize the IDS ruleset to a function.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Remove unused rulesetsources hashes.
Stefan Schantl [Sat, 20 Mar 2021 15:54:37 +0000 (16:54 +0100)] 
ids.cgi: Remove unused rulesetsources hashes.

They have been superseeded by the new ruleset sources file.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Require ruleset-sources file for provider details.
Stefan Schantl [Sat, 20 Mar 2021 14:57:51 +0000 (15:57 +0100)] 
ids-functions.pl: Require ruleset-sources file for provider details.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids.cgi: Make CGI work with new ruleset-sources file.
Stefan Schantl [Fri, 19 Mar 2021 20:28:00 +0000 (21:28 +0100)] 
ids.cgi: Make CGI work with new ruleset-sources file.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Add get_ruleset_providers() function.
Stefan Schantl [Fri, 19 Mar 2021 20:27:23 +0000 (21:27 +0100)] 
ids-functions.pl: Add get_ruleset_providers() function.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoids-functions.pl: Make downloader work with new ruleset-sources file
Stefan Schantl [Fri, 19 Mar 2021 20:26:44 +0000 (21:26 +0100)] 
ids-functions.pl: Make downloader work with new ruleset-sources file
format.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
2 years agoruleset-sources: Rework file format and data.
Stefan Schantl [Fri, 19 Mar 2021 20:24:36 +0000 (21:24 +0100)] 
ruleset-sources: Rework file format and data.

The file now contains a lot more of data and easily can be extended
to provide more and new providers.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>