-
Notifications
You must be signed in to change notification settings - Fork 18
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
TCP TLS support #28
base: main
Are you sure you want to change the base?
TCP TLS support #28
Conversation
…epted to allow Exceptions to be seen in the logstash logs Has no effect on prior versions of gelf-rb
The failure on 6.x and master is relevant to this PR:
I haven't looked at the code, but this is a legitimate failure. Very likely unrelated to this PR, but still concerning. |
Thanks for your work on this plugin; some comments:
|
Yep docs, gotcha 👍 I'll get that sorted. In regard to the blanket tls I would disagree, this method decouples this plugin from the versioning of the downstream gelf_rb, so if, at some point someone added other options to it, such as the ability to configure the ciphers used, this plugin could immediately take advantage of that. You point about helping users is a good one, and is the reasoning behind my gelf_rb PR and its new ability to float the SSL exceptions up to the logstash logs, but I think any direct tls config validation should be done in gelf_rb. |
Added docs for the TLS option hash and additionally the protocol option as it seemed to be missing.
Docs updated. |
Hi, Is there anything more I should to do this PR to make it more likely to get merged? |
I understand your goal. My concern is knowledge burden on users because each plugin's SSL settings have different names. We're gradually trying to consolidate all SSL/TLS settings to be the same names across all plugins, and this introduces a new and different way to represent TLS settings. It also requires users visit two pages in order to learn how to configure TLS. My preference would use the same tls/ssl setting names that, for example, the beats input uses. |
Any progress on this? Has the SSL naming been standardised now? |
Hi - is there any progress on this? It would be nice to ship logs via encrypted tcp. |
I have checked this by manually editing my output-gelf plugin and applying the changes. It works! Graylog2 is finally receiving logs via GELF-TCP & TLS 👍 Why is this project so abandoned?? |
Adds TCP TLS Support via tcp_tls.rb
With the current implementation of gelf-rb, there are 2 issues
With the current implementation of gelf-rb and this PR, a working test can be achieved with
bin/logstash -e 'input { stdin { } } output {gelf {tls => {**all_ciphers => true** no_verify => true} protocol => "TCP" host => "localhost" port=> xxxxxx}}'
This allows all ciphers, including some insecure ones
I have submitted a pull request to gelf-rb graylog-labs/gelf-rb#68
That fixes both of the above problems and limits the usable Ciphers to ones not cryptographically broken yet trying to keep broad compatibility.
Once that PR has been accepted and that implementation is in use, the following cmd can be used
bin/logstash -e 'input { stdin { } } output {gelf {tls => {no_verify => true} protocol => "TCP" host => "localhost" port=> xxxxx}}'
and SSL Errors will also now bubble up into the logstash logs.
This will also fix #26