Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Filebeat] Add Pensando DFW Module #21063

Merged
merged 37 commits into from
Feb 15, 2021
Merged
Show file tree
Hide file tree
Changes from 27 commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
4750fc3
Merge pull request #1 from elastic/master
punisherVX Sep 9, 2020
182ffa5
Add Pensando module init
punisherVX Sep 10, 2020
a653242
explicitly define the ECS version per testing
punisherVX Sep 10, 2020
60c9682
updates to docs from make update
punisherVX Sep 10, 2020
2e56ff8
updates for pensando module
punisherVX Sep 10, 2020
22c09d1
updates to documentation and db screenshot
punisherVX Sep 10, 2020
110235b
add dashboard export to repo
punisherVX Sep 10, 2020
1b2d4a4
update to add pensando beat
punisherVX Sep 10, 2020
812bdd5
Update filebeat/module/pensando/dfw/config/dfw.yml
punisherVX Jan 12, 2021
0e670c1
Update pipeline.yml
punisherVX Jan 12, 2021
b6455de
Update pipeline.yml
punisherVX Jan 12, 2021
e03f6ad
Update filebeat/module/pensando/_meta/docs.asciidoc
punisherVX Jan 13, 2021
2980f65
Update config.yml
punisherVX Jan 13, 2021
4dbc382
Update docs.asciidoc
punisherVX Jan 13, 2021
10419e7
Update pipeline.yml
punisherVX Jan 13, 2021
89bd31a
Update pipeline.yml
punisherVX Jan 13, 2021
b3ca192
Remove set of event.module
punisherVX Jan 13, 2021
69c3107
Apply suggestions from code review
punisherVX Jan 13, 2021
94a4933
Update test.log
punisherVX Jan 14, 2021
849a1a0
Use convert instead of set for some fields
punisherVX Jan 14, 2021
1fa2c2e
Updates for geoip and autonomous system
punisherVX Jan 14, 2021
ca21169
merge upstream master into pensando master
punisherVX Jan 15, 2021
dce70ab
add pensando dfw fields
punisherVX Jan 15, 2021
63b3ec5
fixes from make -C filebeat update
punisherVX Jan 19, 2021
5b1ed04
fixes for filebeat check
punisherVX Jan 19, 2021
3ceeb67
make update changes
punisherVX Jan 19, 2021
b26adcb
Update filebeat/module/pensando/dfw/config/dfw.yml
punisherVX Jan 20, 2021
d9140e3
Update filebeat/module/pensando/dfw/ingest/pipeline.yml
punisherVX Feb 1, 2021
57307d5
Update filebeat/module/pensando/dfw/ingest/pipeline.yml
punisherVX Feb 1, 2021
22a3ea3
Update filebeat/module/pensando/dfw/ingest/pipeline.yml
punisherVX Feb 1, 2021
074f0aa
Update filebeat/module/pensando/dfw/ingest/pipeline.yml
punisherVX Feb 1, 2021
6e07cd9
remove old json file
punisherVX Feb 1, 2021
8e55c35
ran tests
punisherVX Feb 1, 2021
f29d158
Update filebeat/module/pensando/dfw/ingest/pipeline.yml
punisherVX Feb 9, 2021
ee1b59f
gen after run of 'mage -v pythonIntegTest'
punisherVX Feb 9, 2021
0a619b9
Update fields.yml
punisherVX Feb 12, 2021
494e8cc
mage fmt update request
punisherVX Feb 12, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG-developer.next.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -104,5 +104,6 @@ The list below covers the major changes between 7.0.0-rc2 and master only.
- Update Go version to 1.14.7. {pull}20508[20508]
- Add packaging for docker image based on UBI minimal 8. {pull}20576[20576]
- Make the mage binary used by the build process in the docker container to be statically compiled. {pull}20827[20827]
- Add Pensando distributed firewall module. {pull}21063[21063]
- Update ecszap to v0.3.0 for using ECS 1.6.0 in logs {pull}22267[22267]
- Add support for customized monitoring API. {pull}22605[22605]
68 changes: 34 additions & 34 deletions NOTICE.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5757,6 +5757,38 @@ SOFTWARE.
<http://www.opensource.org/licenses/mit-license.php>


--------------------------------------------------------------------------------
Dependency : github.com/eapache/go-resiliency
Version: v1.2.0
Licence type (autodetected): MIT
--------------------------------------------------------------------------------

Contents of probable licence file $GOMODCACHE/github.com/eapache/go-resiliency@v1.2.0/LICENSE:

The MIT License (MIT)

Copyright (c) 2014 Evan Huus

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.



--------------------------------------------------------------------------------
Dependency : github.com/eclipse/paho.mqtt.golang
Version: v1.2.1-0.20200121105743-0d940dd29fd2
Expand Down Expand Up @@ -13781,11 +13813,11 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

--------------------------------------------------------------------------------
Dependency : github.com/shirou/gopsutil
Version: v2.19.11+incompatible
Version: v3.20.12+incompatible
Licence type (autodetected): BSD-3-Clause
--------------------------------------------------------------------------------

Contents of probable licence file $GOMODCACHE/github.com/shirou/gopsutil@v2.19.11+incompatible/LICENSE:
Contents of probable licence file $GOMODCACHE/github.com/shirou/gopsutil@v3.20.12+incompatible/LICENSE:

gopsutil is distributed under BSD license reproduced below.

Expand Down Expand Up @@ -26207,38 +26239,6 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


--------------------------------------------------------------------------------
Dependency : github.com/eapache/go-resiliency
Version: v1.2.0
Licence type (autodetected): MIT
--------------------------------------------------------------------------------

Contents of probable licence file $GOMODCACHE/github.com/eapache/go-resiliency@v1.2.0/LICENSE:

The MIT License (MIT)

Copyright (c) 2014 Evan Huus

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.



--------------------------------------------------------------------------------
Dependency : github.com/eapache/go-xerial-snappy
Version: v0.0.0-20180814174437-776d5712da21
Expand Down
153 changes: 153 additions & 0 deletions filebeat/docs/fields.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@ grouped in the following categories:
* <<exported-fields-oracle>>
* <<exported-fields-osquery>>
* <<exported-fields-panw>>
* <<exported-fields-pensando>>
* <<exported-fields-postgresql>>
* <<exported-fields-process>>
* <<exported-fields-proofpoint>>
Expand Down Expand Up @@ -105568,6 +105569,158 @@ Specifies the sub type of the log

--

[[exported-fields-pensando]]
== Pensando fields

pensando Module



[float]
=== pensando

Fields from Pensando logs.



*`pensando.payload_raw`*::
+
--
Please add description

type: text

example: Please add example

--

[float]
=== dfw

Fields for Pensando DFW



*`pensando.dfw.action`*::
+
--
Action on the flow.


type: keyword

--

*`pensando.dfw.app_id`*::
+
--
Application ID


type: integer

--

*`pensando.dfw.destination_address`*::
+
--
Address of destination.


type: keyword

--

*`pensando.dfw.destination_port`*::
+
--
Port of destination.


type: integer

--

*`pensando.dfw.direction`*::
+
--
Direction of the flow


type: keyword

--

*`pensando.dfw.protocol`*::
+
--
Protocol of the flow


type: keyword

--

*`pensando.dfw.rule_id`*::
+
--
Rule ID that was matched.


type: keyword

--

*`pensando.dfw.session_id`*::
+
--
Session ID of the flow


type: integer

--

*`pensando.dfw.session_state`*::
+
--
Session state of the flow.


type: keyword

--

*`pensando.dfw.source_address`*::
+
--
Source address of the flow.


type: keyword

--

*`pensando.dfw.source_port`*::
+
--
Source port of the flow.


type: integer

--

*`pensando.dfw.timestamp`*::
+
--
Timestamp of the log.


type: date

--

[[exported-fields-postgresql]]
== PostgreSQL fields

Expand Down
Binary file added filebeat/docs/images/filebeat-pensando-dfw.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
69 changes: 69 additions & 0 deletions filebeat/docs/modules/pensando.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
////
This file is generated! See scripts/docs_collector.py
////

[[filebeat-module-pensando]]
:modulename: pensando
:has-dashboards: true

== pensando module

The +{modulename}+ module parses distributed firewall logs created by the
http://pensando.io/[Pensando] distributed services card (DSC).


include::../include/what-happens.asciidoc[]

include::../include/gs-link.asciidoc[]

[float]
=== Compatibility

The Pensando module has been tested with 1.12.0-E-54 and later.

include::../include/configuring-intro.asciidoc[]
The following example shows how to set parameters in the +modules.d/{modulename}.yml+
file to listen for firewall logs sent from the Pensando DSC(s) on port 5514 (default is 9001):

["source","yaml",subs="attributes"]
-----
- module: pensando
access:
enabled: true
var.syslog_host: 0.0.0.0
var.syslog_port: [9001]
-----
:fileset_ex: dfw

include::../include/config-option-intro.asciidoc[]

TODO: document the variables from each fileset. If you're describing a variable
that's common to other modules, you can reuse shared descriptions by including
the relevant file. For example:

[float]
==== `dfw` log fileset settings

include::../include/var-paths.asciidoc[]

[float]
=== Example dashboard

This module comes with a sample dashboard. For example:

[role="screenshot"]
image::./images/filebeat-pensando-dfw.png[]

:has-dashboards!:

:fileset_ex!:

:modulename!:


[float]
=== Fields

For a description of each field in the module, see the
<<exported-fields-pensando,exported fields>> section.

2 changes: 2 additions & 0 deletions filebeat/docs/modules_list.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ This file is generated! See scripts/docs_collector.py
* <<filebeat-module-oracle>>
* <<filebeat-module-osquery>>
* <<filebeat-module-panw>>
* <<filebeat-module-pensando>>
* <<filebeat-module-postgresql>>
* <<filebeat-module-proofpoint>>
* <<filebeat-module-rabbitmq>>
Expand Down Expand Up @@ -120,6 +121,7 @@ include::modules/okta.asciidoc[]
include::modules/oracle.asciidoc[]
include::modules/osquery.asciidoc[]
include::modules/panw.asciidoc[]
include::modules/pensando.asciidoc[]
include::modules/postgresql.asciidoc[]
include::modules/proofpoint.asciidoc[]
include::modules/rabbitmq.asciidoc[]
Expand Down
12 changes: 12 additions & 0 deletions filebeat/filebeat.reference.yml
Original file line number Diff line number Diff line change
Expand Up @@ -335,6 +335,18 @@ filebeat.modules:
# of the document. The default is true.
#var.use_namespace: true

#------------------------------- Pensando Module -------------------------------
- module: pensando
# Firewall logs
dfw:
enabled: true
var.syslog_host: 0.0.0.0
var.syslog_port: 9001

# Set custom paths for the log files. If left empty,
# Filebeat will choose the paths depending on your OS.
# var.paths:

#------------------------------ PostgreSQL Module ------------------------------
#- module: postgresql
# Logs
Expand Down
1 change: 1 addition & 0 deletions filebeat/include/list.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 10 additions & 0 deletions filebeat/module/pensando/_meta/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
- module: pensando
# Firewall logs
dfw:
enabled: true
var.syslog_host: 0.0.0.0
var.syslog_port: 9001

# Set custom paths for the log files. If left empty,
punisherVX marked this conversation as resolved.
Show resolved Hide resolved
# Filebeat will choose the paths depending on your OS.
# var.paths:
Loading