]> git.ipfire.org Git - thirdparty/suricata-update.git/commitdiff
doc: re-org into commands
authorJason Ish <ish@unx.ca>
Sun, 3 Dec 2017 17:12:18 +0000 (11:12 -0600)
committerJason Ish <ish@unx.ca>
Sun, 3 Dec 2017 17:12:18 +0000 (11:12 -0600)
doc/add-source.rst [new file with mode: 0644]
doc/index.rst
doc/quickstart.rst
doc/update.rst [new file with mode: 0644]

diff --git a/doc/add-source.rst b/doc/add-source.rst
new file mode 100644 (file)
index 0000000..383dc88
--- /dev/null
@@ -0,0 +1,30 @@
+################################
+add-source - Add a source by URL
+################################
+
+Synopsis
+========
+
+::
+
+   suricata-update add-source [--name name] [--url <url>]
+
+Description
+===========
+
+The ``add-source`` adds a source to the set of enabled sources by
+URL. It is useful to add a source that is not provided in the index.
+
+Options
+=======
+
+.. option:: --name <name>
+
+   The name of the source. If not provided on the command line the
+   user will be prompted.
+
+.. option:: --url <url>
+
+   The URL of the source. If not provided on the command line the user
+   will be prompted.
+
index 656b37bfd016b1c2c5a8983ae1da2c594026dc47..7ffbf743149329931bcb9a85e0b2b903c39d1d58 100644 (file)
@@ -3,343 +3,8 @@ suricata-update - A Suricata Rule Update Tool
 #############################################
 
 .. toctree::
+   :maxdepth: 2
 
    quickstart
-
-Synopsis
-========
-
-``suricata-update`` [OPTIONS]
-
-Description
-===========
-
-``suricata-update`` aims to be a simple to use rule download and
-management tool for Suricata.
-
-Options
-=======
-
-.. option:: -h, --help
-
-   Show help.
-
-.. option:: -v, --verbose
-
-   Be more verbose.
-
-.. option:: -c <filename>, --config <filename>
-   
-   Path to the suricata-update config file.
-
-   Default: */etc/suricata/update.yaml*
-
-.. option:: -o, --output
-
-   The directory to output the rules to.
-
-   Default: */var/lib/suricata/rules*
-
-.. option:: --suricata=<path>
-
-   The path to the Suricata program used to determine which version of
-   the ET pro rules to download if not explicitly set in a ``--url``
-   argument.
-
-.. option:: --suricata-version <version>
-
-   Set the Suricata version to a specific version instead of checking
-   the version of Suricata on the path.
-
-.. option:: --force
-
-   Force remote rule files to be downloaded if they otherwise wouldn't
-   be due to just recently downloaded, or the remote checksum matching
-   the cached copy.
-
-.. option:: --merged=<filename>
-
-   Write a single file containing all rules. This can be used in
-   addition to ``--output`` or instead of ``--output``.
-
-.. option:: --no-merge
-
-   Do not merge the rules into a single rule file.
-
-   *Warning: No attempt is made to resolve conflicts if 2 input rule files have the same name.*
-
-.. option:: --yaml-fragment=<filename.yaml>
-
-   Output a fragment of YAML containing the *rule-files* section will
-   all downloaded rule files listed for inclusion in your
-   *suricata.yaml*.
-
-.. option:: --url=<url>
-
-   A URL to download rules from. This option can be used multiple
-   times.
-
-.. option:: --local=<filename or directory>
-
-   A path to a filename or directory of local rule files to include.
-
-   If the path is a directory all files ending in *.rules* will be
-   loaded.
-
-   Wildcards are accepted but to avoid shell expansion the argument
-   must be quoted, for example::
-
-     --local '/etc/suricata/custom-*.rules'
-
-   This option can be specified multiple times.
-
-.. option:: --sid-msg-map=<filename>
-
-   Output a v1 style sid-msg.map file.
-
-.. option:: --sid-msg-map-2=<filename>
-
-   Output a v2 style sid-msg.map file.
-
-.. option:: --disable-conf=<disable.conf>
-
-   Specify the configuration file for disable filters.
-
-   See :ref:`example-disable-conf`
-
-.. option:: --enable-conf=<enable.conf>
-
-   Specify the configuration file for enable rules.
-
-   See :ref:`example-enable-conf`
-
-.. option:: --modify-conf=<modify.conf>
-
-   Specify the configuration file for rule modification filters.
-
-   See :ref:`example-modify-conf`
-
-.. option:: --drop-conf=<drop.conf>
-
-   Specify the configuration file for drop filters.
-
-   See :ref:`example-drop-conf`
-
-.. option:: --ignore=<pattern>
-
-   Filenames to ignore. This is a pattern that will be matched against
-   the basename of a rule files.
-
-   This argument may be specified multiple times.
-
-   Default: *\*deleted.rules*
-
-   Example::
-
-     --ignore dnp3-events.rules --ignore deleted.rules --ignore "modbus*"
-
-   .. note::
-
-     If specified the default value of *\*deleted.rules* will no longer
-     be used, so add it as an extra ignore if needed.
-
-.. option:: --no-ignore
-
-   Disable the --ignore option. Most useful to disable the default
-   ignore pattern without adding others.
-
-.. option:: --etopen
-
-   Download the ET/Open ruleset.
-
-   This is the default action of no ``--url`` options are provided or
-   no sources are configured.
-
-   Use this option to enable the ET/Open ruleset in addition to any
-   URLs provided on the command line or sources provided in the
-   configuration.
-
-.. option:: -q, --quiet
-
-   Run quietly. Only warning and error message will be displayed.
-
-.. option:: --dump-sample-configs
-
-   Output sample configuration files for the ``--disable``,
-   ``--enable``, ``--modify`` and ``--threshold-in`` commands.
-
-.. option:: --threshold-in=<threshold.conf.in>
-
-   Specify the threshold.conf input template.
-
-.. option:: --threshold-out=<threshold.conf>
-
-   Specify the name of the processed threshold.conf to output.
-
-.. option:: -T <command>, --test-command <command>
-
-   Specifies a custom test command to test the rules before reloading
-   Suricata. This overrides the default command and can also be
-   specified in the configuration file under ``test-command``.
-
-.. option:: --no-test
-
-   Disables the test command and proceed as if it had passed.
-
-.. option:: --reload-command=<command>
-
-   A command to run after the rules have been updated; will not run if
-   no change to the output files was made.  For example::
-
-     --reload-command=sudo kill -USR2 $(cat /var/run/suricata.pid)
-
-   will tell Suricata to reload its rules.
-
-.. option:: --no-reload
-
-   Disable Suricata rule reload.
-           
-.. option:: -V, --version
-
-   Display the version of **suricata-update**.
-
-Rule Matching
-=============
-
-Matching rules for disabling, enabling, converting to drop or
-modification can be done with the following:
-
-- signature ID
-- regular expression
-- rule group
-- filename
-
-Signature ID Matching
----------------------
-
-A signature ID can be matched by just its signature ID, for example::
-
-    1034
-
-The generator ID can also be used for compatibility with other tools::
-
-    1:1034
-
-Regular Expression Matching
----------------------------
-
-Regular expression matching will match a regular expression over the
-complete rule. Example::
-
-    re:heartbleed
-    re:MS(0[7-9]|10)-\d+
-
-Group Matching
---------------
-
-The group matcher matches against the group the rule was loaded
-from. Basically this is the filename without the leading path or file
-extension. Example::
-
-  group:emerging-icmp.rules
-  group:emerging-dos
-
-Wild card matching similar to wildcards used in a Unix shell can also
-be used::
-
-  group:*deleted*
-
-Filename Matching
------------------
-
-The filename matcher matches against the filename the rule was loaded
-from taking into consideration the full path. Shell wildcard patterns
-are allowed::
-
-  filename:rules/*deleted*
-  filename:*/emerging-dos.rules
-
-Modifying Rules
----------------
-
-Rule modification can be done with regular expression search and
-replace. The basic format for a rule modification specifier is::
-
-  <match> <from> <to>
-
-where <match> is one of the rule matchers from above, <from> is the
-text to be replaced and <to> is the replacement text.
-
-Example converting all alert rules to drop::
-
-  re:. ^alert drop
-
-Example converting all drop rules with noalert back to alert::
-
-  re:. "^drop(.*)noalert(.*)" "alert\\1noalert\\2"  
-
-Sub Commands
-============
-
-add-sources
-  Add a new source by URL
-
-add-source - Add a new source by URL
-------------------------------------
-
-Description
-~~~~~~~~~~~
-
-The ``add-source`` adds a source to the set of enabled sources by
-URL. It is useful to add a source that is not provided in the index.
-
-Options
-~~~~~~~
-
-.. option:: --name <name>
-
-   The name of the source. If not provided on the command line the
-   user will be prompted.
-
-.. option:: --url <url>
-
-   The URL of the source. If not provided on the command line the user
-   will be prompted.
-
-Example Configuration Files
-===========================
-
-.. _example_update_yaml:
-
-Example Configuration File (/etc/suricata/update.yaml)
-------------------------------------------------------
-
-.. literalinclude:: ../suricata/update/configs/update.yaml
-
-.. _example-enable-conf:
-
-Example Configuration to Enable Rules (--enable-conf)
------------------------------------------------------
-
-.. literalinclude:: ../suricata/update/configs/enable.conf
-
-.. _example-disable-conf:
-
-Example Configuration to Enable Disable (--disable-conf)
---------------------------------------------------------
-
-.. literalinclude:: ../suricata/update/configs/disable.conf
-
-.. _example-drop-conf:
-
-Example Configuration to convert Rules to Drop (--drop-conf)
-------------------------------------------------------------
-
-.. literalinclude:: ../suricata/update/configs/drop.conf
-
-.. _example-modify-conf:
-
-Example Configuration to modify Rules (--modify-conf)
------------------------------------------------------
-
-.. literalinclude:: ../suricata/update/configs/modify.conf
+   update
+   add-source
index 0295aabd6025e86cee728f97ec7878aaedd80602..8035974417e16bfb617e0221908fd40ef2b652e6 100644 (file)
@@ -1,5 +1,5 @@
-Suricata-Update Quick Start
-###########################
+Quick Start
+###########
 
 Install Suricata Update
 =======================
diff --git a/doc/update.rst b/doc/update.rst
new file mode 100644 (file)
index 0000000..59ba099
--- /dev/null
@@ -0,0 +1,313 @@
+########################
+suricata-update - Update
+########################
+
+Synopsis
+========
+
+``suricata-update`` [OPTIONS]
+
+Description
+===========
+
+``suricata-update`` aims to be a simple to use rule download and
+management tool for Suricata.
+
+Options
+=======
+
+.. option:: -h, --help
+
+   Show help.
+
+.. option:: -v, --verbose
+
+   Be more verbose.
+
+.. option:: -c <filename>, --config <filename>
+   
+   Path to the suricata-update config file.
+
+   Default: */etc/suricata/update.yaml*
+
+.. option:: -o, --output
+
+   The directory to output the rules to.
+
+   Default: */var/lib/suricata/rules*
+
+.. option:: --suricata=<path>
+
+   The path to the Suricata program used to determine which version of
+   the ET pro rules to download if not explicitly set in a ``--url``
+   argument.
+
+.. option:: --suricata-version <version>
+
+   Set the Suricata version to a specific version instead of checking
+   the version of Suricata on the path.
+
+.. option:: --force
+
+   Force remote rule files to be downloaded if they otherwise wouldn't
+   be due to just recently downloaded, or the remote checksum matching
+   the cached copy.
+
+.. option:: --merged=<filename>
+
+   Write a single file containing all rules. This can be used in
+   addition to ``--output`` or instead of ``--output``.
+
+.. option:: --no-merge
+
+   Do not merge the rules into a single rule file.
+
+   *Warning: No attempt is made to resolve conflicts if 2 input rule files have the same name.*
+
+.. option:: --yaml-fragment=<filename.yaml>
+
+   Output a fragment of YAML containing the *rule-files* section will
+   all downloaded rule files listed for inclusion in your
+   *suricata.yaml*.
+
+.. option:: --url=<url>
+
+   A URL to download rules from. This option can be used multiple
+   times.
+
+.. option:: --local=<filename or directory>
+
+   A path to a filename or directory of local rule files to include.
+
+   If the path is a directory all files ending in *.rules* will be
+   loaded.
+
+   Wildcards are accepted but to avoid shell expansion the argument
+   must be quoted, for example::
+
+     --local '/etc/suricata/custom-*.rules'
+
+   This option can be specified multiple times.
+
+.. option:: --sid-msg-map=<filename>
+
+   Output a v1 style sid-msg.map file.
+
+.. option:: --sid-msg-map-2=<filename>
+
+   Output a v2 style sid-msg.map file.
+
+.. option:: --disable-conf=<disable.conf>
+
+   Specify the configuration file for disable filters.
+
+   See :ref:`example-disable-conf`
+
+.. option:: --enable-conf=<enable.conf>
+
+   Specify the configuration file for enable rules.
+
+   See :ref:`example-enable-conf`
+
+.. option:: --modify-conf=<modify.conf>
+
+   Specify the configuration file for rule modification filters.
+
+   See :ref:`example-modify-conf`
+
+.. option:: --drop-conf=<drop.conf>
+
+   Specify the configuration file for drop filters.
+
+   See :ref:`example-drop-conf`
+
+.. option:: --ignore=<pattern>
+
+   Filenames to ignore. This is a pattern that will be matched against
+   the basename of a rule files.
+
+   This argument may be specified multiple times.
+
+   Default: *\*deleted.rules*
+
+   Example::
+
+     --ignore dnp3-events.rules --ignore deleted.rules --ignore "modbus*"
+
+   .. note::
+
+     If specified the default value of *\*deleted.rules* will no longer
+     be used, so add it as an extra ignore if needed.
+
+.. option:: --no-ignore
+
+   Disable the --ignore option. Most useful to disable the default
+   ignore pattern without adding others.
+
+.. option:: --etopen
+
+   Download the ET/Open ruleset.
+
+   This is the default action of no ``--url`` options are provided or
+   no sources are configured.
+
+   Use this option to enable the ET/Open ruleset in addition to any
+   URLs provided on the command line or sources provided in the
+   configuration.
+
+.. option:: -q, --quiet
+
+   Run quietly. Only warning and error message will be displayed.
+
+.. option:: --dump-sample-configs
+
+   Output sample configuration files for the ``--disable``,
+   ``--enable``, ``--modify`` and ``--threshold-in`` commands.
+
+.. option:: --threshold-in=<threshold.conf.in>
+
+   Specify the threshold.conf input template.
+
+.. option:: --threshold-out=<threshold.conf>
+
+   Specify the name of the processed threshold.conf to output.
+
+.. option:: -T <command>, --test-command <command>
+
+   Specifies a custom test command to test the rules before reloading
+   Suricata. This overrides the default command and can also be
+   specified in the configuration file under ``test-command``.
+
+.. option:: --no-test
+
+   Disables the test command and proceed as if it had passed.
+
+.. option:: --reload-command=<command>
+
+   A command to run after the rules have been updated; will not run if
+   no change to the output files was made.  For example::
+
+     --reload-command=sudo kill -USR2 $(cat /var/run/suricata.pid)
+
+   will tell Suricata to reload its rules.
+
+.. option:: --no-reload
+
+   Disable Suricata rule reload.
+           
+.. option:: -V, --version
+
+   Display the version of **suricata-update**.
+
+Rule Matching
+=============
+
+Matching rules for disabling, enabling, converting to drop or
+modification can be done with the following:
+
+- signature ID
+- regular expression
+- rule group
+- filename
+
+Signature ID Matching
+---------------------
+
+A signature ID can be matched by just its signature ID, for example::
+
+    1034
+
+The generator ID can also be used for compatibility with other tools::
+
+    1:1034
+
+Regular Expression Matching
+---------------------------
+
+Regular expression matching will match a regular expression over the
+complete rule. Example::
+
+    re:heartbleed
+    re:MS(0[7-9]|10)-\d+
+
+Group Matching
+--------------
+
+The group matcher matches against the group the rule was loaded
+from. Basically this is the filename without the leading path or file
+extension. Example::
+
+  group:emerging-icmp.rules
+  group:emerging-dos
+
+Wild card matching similar to wildcards used in a Unix shell can also
+be used::
+
+  group:*deleted*
+
+Filename Matching
+-----------------
+
+The filename matcher matches against the filename the rule was loaded
+from taking into consideration the full path. Shell wildcard patterns
+are allowed::
+
+  filename:rules/*deleted*
+  filename:*/emerging-dos.rules
+
+Modifying Rules
+---------------
+
+Rule modification can be done with regular expression search and
+replace. The basic format for a rule modification specifier is::
+
+  <match> <from> <to>
+
+where <match> is one of the rule matchers from above, <from> is the
+text to be replaced and <to> is the replacement text.
+
+Example converting all alert rules to drop::
+
+  re:. ^alert drop
+
+Example converting all drop rules with noalert back to alert::
+
+  re:. "^drop(.*)noalert(.*)" "alert\\1noalert\\2"  
+
+Example Configuration Files
+===========================
+
+.. _example_update_yaml:
+
+Example Configuration File (/etc/suricata/update.yaml)
+------------------------------------------------------
+
+.. literalinclude:: ../suricata/update/configs/update.yaml
+
+.. _example-enable-conf:
+
+Example Configuration to Enable Rules (--enable-conf)
+-----------------------------------------------------
+
+.. literalinclude:: ../suricata/update/configs/enable.conf
+
+.. _example-disable-conf:
+
+Example Configuration to Enable Disable (--disable-conf)
+--------------------------------------------------------
+
+.. literalinclude:: ../suricata/update/configs/disable.conf
+
+.. _example-drop-conf:
+
+Example Configuration to convert Rules to Drop (--drop-conf)
+------------------------------------------------------------
+
+.. literalinclude:: ../suricata/update/configs/drop.conf
+
+.. _example-modify-conf:
+
+Example Configuration to modify Rules (--modify-conf)
+-----------------------------------------------------
+
+.. literalinclude:: ../suricata/update/configs/modify.conf