Skip to content

TLS handshakes traceability #1914

@krizhanovsky

Description

@krizhanovsky

Also see #1454 as a parent issue

Motivation

At the moment I see many TLS errors in the logs for our web site:

root@Web:/var/log/vm-logs# tail site-01.log 
[1091003.544952] [tempesta tls] Warning: TLS: server requested by client is not known.
[1091003.549718] [tempesta fw] Warning: Unrecognized TLS receive return code -0x7900, drop packet
[1091075.634226] [tempesta tls] Warning: TLS: server requested by client is not known.
[1091075.638676] [tempesta fw] Warning: Unrecognized TLS receive return code -0x7900, drop packet
[1092296.243290] [tempesta tls] Warning: TLS: server requested by client is not known.
[1092296.247653] [tempesta fw] Warning: Unrecognized TLS receive return code -0x7900, drop packet
[1092346.066903] [tempesta tls] Warning: TLS: server requested by client is not known.
[1092346.071277] [tempesta fw] Warning: Unrecognized TLS receive return code -0x7900, drop packet
[1092442.606719] [tempesta tls] Warning: TLS: server requested by client is not known.
[1092442.611042] [tempesta fw] Warning: Unrecognized TLS receive return code -0x7900, drop packet

I'm afraid that live normal clients can't access our website.

Scope

There are several points to improve:

  • TLS and Tempesta FW layers must print adequate reason for connection break, -0x7900 looks not user friendly. I'd propose to use some static table resolving the codes to human readable messages (probably we should return not so large values in such case or just subtract some constant).
  • we should report the error only once, not twice on FW and TLS layers as in the log above
  • /proc/tempesta/perfstat must show numbers of successful and and failed TLS handshakes

Testing & documentation

No need any specific documentation or tests.

Metadata

Metadata

Labels

TLSTempesta TLS module and related issuesenhancementgood to startStart form this tasks if you're new in Tempesta FW

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions