@@ -78,6 +78,101 @@ sending the messages via port 514/UDP.
7878
7979 Specify name of the :abbr: `VRF ( Virtual Routing and Forwarding ) ` instance.
8080
81+ TLS Options
82+ ^^^^^^^^^^^
83+
84+ When ``set system syslog host <address> protocol tcp `` is selected,
85+ an additional ``tls `` sub-node can be used to enable encryption and
86+ configure certificate handling. TLS is not supported over UDP and
87+ if you attempt to enable TLS while using UDP, the system will issue a warning.
88+
89+ .. cfgcmd :: set system syslog host <address> tls
90+
91+ Enable TLS for this remote syslog destination.
92+
93+ .. cfgcmd :: set system syslog host <address> tls ca-certificate <ca_name>
94+
95+ Reference to a :abbr: `CA ( Certification Authority ) ` certificate stored
96+ in the :abbr: `PKI ( Public Key Infrastructure ) ` subsystem.
97+ Used to validate the certificate chain of the remote syslog server.
98+ Required when the authentication mode is anything other than ``anon ``.
99+
100+ .. cfgcmd :: set system syslog host <address> tls certificate <cert_name>
101+
102+ Reference to a client certificate stored in the PKI subsystem.
103+ Required when the server enforces client certificate authentication.
104+
105+ .. cfgcmd :: set system syslog host <address> tls auth-mode <anon|fingerprint|certvalid|name>
106+
107+ Defines the peer authentication mode:
108+
109+ * **anon ** - allow encrypted connection without verifying peer identity
110+ (not recommended, vulnerable to :abbr: `MITM ( Man-in-the-Middle ) `).
111+ * **fingerprint ** - verify the peer certificate against an explicitly
112+ configured fingerprint list (set with ``permitted-peer ``).
113+ * **certvalid ** - validate that the peer presents a certificate signed by
114+ a trusted CA, but do not check the certificate subject name
115+ (:abbr: `CN ( Common Name ) `).
116+ * **name ** - validate that the peer presents a certificate signed by a
117+ trusted CA and that the certificate’s CN matches the value configured in
118+ ``permitted-peer ``. This is the recommended secure mode for production.
119+
120+ .. note :: The default value for the authentication mode is ``anon``.
121+
122+ .. cfgcmd :: set system syslog host <address> tls permitted-peer <peer>
123+
124+ Allowed peer certificate fingerprint or subject name (CN).
125+
126+ * In ``fingerprint `` authentication mode: provide one or more peer
127+ certificate fingerprints (SHA1 or SHA256).
128+ * In ``name `` authentication mode: explicit list of certificate’s CN to enforce.
129+ * Ignored in ``anon `` and ``certvalid ``.
130+
131+ Examples:
132+ ^^^^^^^^^
133+
134+ .. code-block :: none
135+
136+ # Example of 'anon' authentication mode
137+ set system syslog host 10.10.2.3 facility all level debug
138+ set system syslog host 10.10.2.3 port 6514
139+ set system syslog host 10.10.2.3 protocol tcp
140+ set system syslog host 10.10.2.3 tls auth-mode anon
141+ # or just use 'set system syslog host 10.10.2.3 tls'
142+
143+ # Example of 'certvalid' authentication mode
144+ set system syslog host elk.example.com facility all level debug
145+ set system syslog host elk.example.com port 6514
146+ set system syslog host elk.example.com protocol tcp
147+ set system syslog host elk.example.com tls ca-certificate my-ca
148+ set system syslog host elk.example.com tls auth-mode certvalid
149+
150+ # Example of 'fingerprint' authentication mode
151+ set system syslog host syslog.example.com facility all level debug
152+ set system syslog host syslog.example.com port 6514
153+ set system syslog host syslog.example.com protocol tcp
154+ set system syslog host syslog.example.com tls ca-certificate my-ca
155+ set system syslog host syslog.example.com tls auth-mode fingerprint
156+ set system syslog host syslog.example.com tls permitted-peer 'SHA1:10:C4:26:...'
157+
158+ # Example of 'name' authentication mode
159+ set system syslog host graylog.example.com facility all level debug
160+ set system syslog host graylog.example.com port 6514
161+ set system syslog host graylog.example.com protocol tcp
162+ set system syslog host graylog.example.com tls ca-certificate my-ca
163+ set system syslog host graylog.example.com tls certificate syslog-client
164+ set system syslog host graylog.example.com tls auth-mode name
165+ set system syslog host graylog.example.com tls permitted-peer 'graylog.example.com'
166+
167+ Security Notes
168+ ^^^^^^^^^^^^^^
169+
170+ * Always prefer ``auth-mode name `` for secure deployments, as it ensures
171+ both CA trust and server hostname validation.
172+ * ``anon `` mode should only be used for testing, because it does not
173+ authenticate the server.
174+ * Ensure private keys are stored and managed exclusively in the
175+ :doc: `PKI system </configuration/pki/index >`.
81176
82177Local User Account
83178------------------
0 commit comments