The following describes how to create a custom syslog message source.
To create a custom syslog message source
Navigate to Log > Sources and click .
Enter a name for the source into the top field. Use descriptive names that help you to identify the source easily.
Figure 104: Log > Sources — Creating new message sources
Select the interface of IP alias where syslog-ng Store Box (SSB) will receive the messages from the Listening address field.
Enter the port number where SSB should accept the messages (for example 1999).
In the Transport field, select the networking protocol (UDP, TCP, TLS, ALTP or ALTP TLS) that your clients use to transfer the messages to SSB.
In case of UDP, TCP or TLS: select the syslog protocol used by the clients from the Incoming log protocol and message format section. The ALTP and ALTP TLS sources only work with the IETF-syslog protocol.
If the clients use the legacy BSD-syslog protocol (RFC3164), select Legacy (BSD-syslog, RFC3164). This protocol is supported by most devices and applications capable to send syslog messages.
If the clients use the new IETF-syslog protocol (for example the clients are syslog-ng 3.0 applications that use the syslog driver, or other drivers with the flags(syslog-protocol) option), select Syslog (IETF-syslog, RFC 5452).
To disable syslog message parsing and store the complete log in the message part, select Do not parse. It is useful if incoming messages do not comply with the syslog format.
When using TLS, SSB displays a certificate to the client. This certificate can be set at Log > Options > TLS settings (for details, see Setting the certificates used in TLS-encrypted log transport). Optionally, SSB can perform mutual authentication and request and verify the certificate of the remote host (peer). Select the verification method to use from the Peer verification field.
None: Do not request a certificate from the remote host, and accept any certificate if the host sends one.
Optional trusted: If the remote host sends a certificate, SSB checks if it is valid (not expired) and that the Common Name of the certificate contains the domain name or the IP address of the host. If these checks fail, SSB rejects the connection. However, SSB accepts the connection if the host does not send a certificate.
Optional untrusted: Accept any certificate shown by the remote host. Note that the host must show a certificate.
Required trusted (default setting): Verify the certificate of the remote host. Only valid certificates signed by a trusted certificate authority are accepted. See Uploading external certificates to SSB for details on importing CA certificates. Note that the Common Name of the certificate must contain the domain name or the IP address of the host.
Required untrusted: SSB requests a certificate from the remote host, and rejects the connection if no certificate is received. However, SSB accepts the connection if:
the certificate is not valid (expired), or
the Common Name of the certificate does not contain the domain name or the IP address of the host.
When using ALTP TLS, SSB only accepts Required-trusted peer verification.
For details on ALTP, see Advanced Log Transfer Protocol.
UDP is a highly unreliable protocol, when using UDP, a large number of messages may be lost without any warning. Use TCP, TLS or ALTP whenever possible.
Configure other, source-related options in the Other source options section, depending on what transport you have selected.
When using TCP or TLS, you can set the maximum number of parallel connections in the Maximum connections field. This option corresponds to the max_connections() syslog-ng parameter.
In case of ALTP or ALTP TLS: enter the number of maximum connections. The default value is 1000 connections. Select Allow compression to allow compression on level 6. Compression level cannot be changed.
When using TLS or ALTP TLS, configure the strength of the allowed cipher suites using one of the following options:
Compatible: It is a large set of cipher suites determined by the following cipher string:
The Compatible setting may allow permitting (and hence not safe) cipher suites for the Transport Layer Security (TLS) negotiations.
Secure: A smaller and more strict set of cipher suites where vulnerable cryptographic algorithms are eliminated. This cipher suite set is determined by the following cipher string:
In the Hostname and timestamp related settings section, you can configure the following:
To accept messages only from selected hosts, create a hostlist and select it in the Hostlist field. For details on creating hostlists, see Creating hostlist policies.
Set the Timezone option of the incoming messages if needed.
If the information sent by the hosts to this source can be trusted, enable the Trusted option. SSB keeps the timestamps and the hostname of the messages sent by trusted clients. This corresponds to enabling the keep_timestamp() and keep_hostname() syslog-ng options for the source.
Select the Use FQDN option if you wish to store the full domain name of the sender host.
Select the name resolving method to use from the Use DNS field.
To configure Message rate alerting for the source, see Configuring message rate alerting.
Set the character Encoding option of the incoming messages if needed.
Note that in order to actually store the messages arriving to this source, you have to include this source in a log path. For details, see Log paths: routing and processing messages.
Optional step: If you want to receive messages using the ALTP or ALTP TLS protocol, make sure that you have configured your syslog-ng clients to transfer the messages to SSB using ALTP or ALTP TPS protocol. For details, see Advanced Log Transfer Protocol in The syslog-ng Premium Edition Administrator Guide.