Fortinet white logo
Fortinet white logo

Handbook

Appendix B: Remote Syslog Reference

Appendix B: Remote Syslog Reference

FortiDDoS Syslog.

FortiDDoS supports Syslog features for the following:

  • Event Logs: Refer to Configuring remote log server settings for event logs for more details about configuration.
  • Attack Logs: Whenever a FortiDDoS appliance records an attack event in its own internal database for reporting, it also sends a Syslog event to an external Syslog server. The purpose of this logging is to have a persistent storage for or further analysis or future access. This feature can also be used for integrating with log analysis tools. The following sections describe about the Data path Syslog.
Configuration

FortiDDoS allows each SPP to send Attack Logs to 1 or 2 separate Syslog Servers. All DDoS attack events are sent to these individual Syslog servers. For each SPP, you can configure the IPv4 address of the Syslog server, the Syslog port on which the Syslog server listens, default being (UDP) 514. All SPPs can send to the same Syslog Servers but these must be configured per-SPP. See Log & Report > Attack Log Remote.

Remote attack log syslog limiting

Remote Attack Logs can be suppressed when the number of drops associated with the log is below a specific threshold. This threshold can be set via Log & Report > Log Configuration > Remote Log Settings. Please see here.

Format of the Syslog messages

FortiDDoS Syslog messages have a name/value based format. The following example shows the log messages received on a server — FortiDDoS uses the FortiAnalyzer syslog format which may not be completely compatible with RFCs.

Syslog for attack log

devid=FI-1KB3914000025 date=2023-02-21 time=21:05:03 tz=PST type=attack spp=0 evecode=1 evesubcode=60 description="Denied: IP address" dir=0 sip=0.0.0.0 dip=1.1.1.146 dropcount=944605 facility=Local0 level=Notice direction=outbound spp_name="SPP-1" subnet_name="default" sppoperatingmode=detection

Please note that the above is an example of the attack log. The table below contains all possible name/value pairs that may be contained in the attack log, but only the fields that are relevant to an attack will be sent. For example, in the above, we have a Denied: IP address ACL attack where the protocol field is not sent.

Syslog Key-Value Information
Key Value Description
devid System Serial Number — 16 characters
date Date format yyyy-mm-dd
time time format hh:mm:ss (24 hr)
tz Time zone — 3 text characters
type Always "attack"
spp Numeric SPP #1-16 depending on model
evecode

Event Code.

Possible values: 1-4 — See Appendix A: DDoS Attack Log Reference, but full description available in the Event code and description table below.

evesubcode Event sub-code.
Possible values: 0-285 — See Appendix A: DDoS Attack Log Reference, but full description available in the Event code and description table below.

description

Text description of attack event

dir Direction of the event.
Possible values are: 1 – Inbound, 0 – Outbound (see textual key below)
protocol This is the protocol field of the attack event. If the protocol of the attack was distinct in all the attack packets under this event, this field will have a numeric value.
Possible values: 0-255
sip Source IP of the packet if it was identified.
Possible values: IP address in string format
dip Destination IP of the packet if it was identified.
Possible values: IP address in string format
dport Protected port: Destination Port for inbound log, source port for outbound log, and inbound source port for possible UDP Reflection Flood log.
Possible values: 0-65535

icmptype

ICMP Type value (0-255)

icmpcode

ICMP Code value (0-255)

dropCount The number of packets dropped due to this event.
Numeric count can be larger than 10 trillion

subnetID

Numeric value of the subnet-ID

detail

Detail value or description — valid only in some cases such as HTTP attacks

facility Always "Local0"
level Always "Notice"
direction Inbound or outbound

spp_name

Text name of SPP

subnet_name Text name of Protection Subnet

sppoperatingmode

SPP Detection/ Prevention Mode when log was generated

Syslog for event log

Facility kernel (0), Severity info (6) Msg: date=2017-10-18 time=14:27:36 tz=PDT devid=FI200B3914000081 log_id=0000001065 type=event subtype=config level=information msg_id=76823 user=admin ui=ssh(172.30.153.16) action=none status=success reason=none msg="changed settings 'network-76' for 'ddos global spp-policy spp'"

Key/Value pair descriptions
Name Interpretation
Facility Facility level — default = local0

Severity

Severity of event — default = info (6)

date Event date - yyyy-mm-dd
time Event time - 24h, hh:mm:ss
tz System time zone - 3 text characters

devid

Device serial number - 16 alphanumeric characters

log_id

Internal process identifier - can be ignored

type Always "event"
subtype

Describes the source of the message.

Variable-length text string - "system", "health-check", "config" for example

msg_id Message id of the event - 10 digit numeric string
user User name associated with the event.
Variable length text string - "admin", "user", "system", etc.
ui This describes from where user logged in or changed settings.
Variable-length field with details. Example: ssh(172.30.153.16). User was logged-in via SSH from IP 172.30.153.16
action This describes user action like “login”, “logout”, “reboot”, etc.
status Status message of the event like “success”, “failure” or “none”.
reason

Reason information related to the action and status information above.

Variable-length text string. Examples: "none", "name_invalid", "radius_auth_failed"

msg

Detailed message of the event.

Possible values: a variable length string contained in double quotes like: "changed settings 'network-76' for 'ddos global spp-policy spp'"

Event code (evecode) description
Event code Description
0 Layer 2
1 Layer 3
2 Layer 4
3 Device events
4 Layer 7

Refer to the Event code and Subcode columns in the 'Log Reference' table under Appendix A for all attack events sent by Syslog.

Appendix B: Remote Syslog Reference

Appendix B: Remote Syslog Reference

FortiDDoS Syslog.

FortiDDoS supports Syslog features for the following:

  • Event Logs: Refer to Configuring remote log server settings for event logs for more details about configuration.
  • Attack Logs: Whenever a FortiDDoS appliance records an attack event in its own internal database for reporting, it also sends a Syslog event to an external Syslog server. The purpose of this logging is to have a persistent storage for or further analysis or future access. This feature can also be used for integrating with log analysis tools. The following sections describe about the Data path Syslog.
Configuration

FortiDDoS allows each SPP to send Attack Logs to 1 or 2 separate Syslog Servers. All DDoS attack events are sent to these individual Syslog servers. For each SPP, you can configure the IPv4 address of the Syslog server, the Syslog port on which the Syslog server listens, default being (UDP) 514. All SPPs can send to the same Syslog Servers but these must be configured per-SPP. See Log & Report > Attack Log Remote.

Remote attack log syslog limiting

Remote Attack Logs can be suppressed when the number of drops associated with the log is below a specific threshold. This threshold can be set via Log & Report > Log Configuration > Remote Log Settings. Please see here.

Format of the Syslog messages

FortiDDoS Syslog messages have a name/value based format. The following example shows the log messages received on a server — FortiDDoS uses the FortiAnalyzer syslog format which may not be completely compatible with RFCs.

Syslog for attack log

devid=FI-1KB3914000025 date=2023-02-21 time=21:05:03 tz=PST type=attack spp=0 evecode=1 evesubcode=60 description="Denied: IP address" dir=0 sip=0.0.0.0 dip=1.1.1.146 dropcount=944605 facility=Local0 level=Notice direction=outbound spp_name="SPP-1" subnet_name="default" sppoperatingmode=detection

Please note that the above is an example of the attack log. The table below contains all possible name/value pairs that may be contained in the attack log, but only the fields that are relevant to an attack will be sent. For example, in the above, we have a Denied: IP address ACL attack where the protocol field is not sent.

Syslog Key-Value Information
Key Value Description
devid System Serial Number — 16 characters
date Date format yyyy-mm-dd
time time format hh:mm:ss (24 hr)
tz Time zone — 3 text characters
type Always "attack"
spp Numeric SPP #1-16 depending on model
evecode

Event Code.

Possible values: 1-4 — See Appendix A: DDoS Attack Log Reference, but full description available in the Event code and description table below.

evesubcode Event sub-code.
Possible values: 0-285 — See Appendix A: DDoS Attack Log Reference, but full description available in the Event code and description table below.

description

Text description of attack event

dir Direction of the event.
Possible values are: 1 – Inbound, 0 – Outbound (see textual key below)
protocol This is the protocol field of the attack event. If the protocol of the attack was distinct in all the attack packets under this event, this field will have a numeric value.
Possible values: 0-255
sip Source IP of the packet if it was identified.
Possible values: IP address in string format
dip Destination IP of the packet if it was identified.
Possible values: IP address in string format
dport Protected port: Destination Port for inbound log, source port for outbound log, and inbound source port for possible UDP Reflection Flood log.
Possible values: 0-65535

icmptype

ICMP Type value (0-255)

icmpcode

ICMP Code value (0-255)

dropCount The number of packets dropped due to this event.
Numeric count can be larger than 10 trillion

subnetID

Numeric value of the subnet-ID

detail

Detail value or description — valid only in some cases such as HTTP attacks

facility Always "Local0"
level Always "Notice"
direction Inbound or outbound

spp_name

Text name of SPP

subnet_name Text name of Protection Subnet

sppoperatingmode

SPP Detection/ Prevention Mode when log was generated

Syslog for event log

Facility kernel (0), Severity info (6) Msg: date=2017-10-18 time=14:27:36 tz=PDT devid=FI200B3914000081 log_id=0000001065 type=event subtype=config level=information msg_id=76823 user=admin ui=ssh(172.30.153.16) action=none status=success reason=none msg="changed settings 'network-76' for 'ddos global spp-policy spp'"

Key/Value pair descriptions
Name Interpretation
Facility Facility level — default = local0

Severity

Severity of event — default = info (6)

date Event date - yyyy-mm-dd
time Event time - 24h, hh:mm:ss
tz System time zone - 3 text characters

devid

Device serial number - 16 alphanumeric characters

log_id

Internal process identifier - can be ignored

type Always "event"
subtype

Describes the source of the message.

Variable-length text string - "system", "health-check", "config" for example

msg_id Message id of the event - 10 digit numeric string
user User name associated with the event.
Variable length text string - "admin", "user", "system", etc.
ui This describes from where user logged in or changed settings.
Variable-length field with details. Example: ssh(172.30.153.16). User was logged-in via SSH from IP 172.30.153.16
action This describes user action like “login”, “logout”, “reboot”, etc.
status Status message of the event like “success”, “failure” or “none”.
reason

Reason information related to the action and status information above.

Variable-length text string. Examples: "none", "name_invalid", "radius_auth_failed"

msg

Detailed message of the event.

Possible values: a variable length string contained in double quotes like: "changed settings 'network-76' for 'ddos global spp-policy spp'"

Event code (evecode) description
Event code Description
0 Layer 2
1 Layer 3
2 Layer 4
3 Device events
4 Layer 7

Refer to the Event code and Subcode columns in the 'Log Reference' table under Appendix A for all attack events sent by Syslog.