logstash-integration-logstash 0.0.1-java
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/CHANGELOG.md +4 -0
- data/Gemfile +11 -0
- data/LICENSE +202 -0
- data/NOTICE.TXT +2 -0
- data/README.md +98 -0
- data/VERSION +1 -0
- data/docs/index.asciidoc +71 -0
- data/docs/input-logstash.asciidoc +252 -0
- data/docs/output-logstash.asciidoc +271 -0
- data/lib/logstash/inputs/logstash.rb +185 -0
- data/lib/logstash/outputs/logstash.rb +162 -0
- data/logstash-integration-logstash.gemspec +36 -0
- data/spec/fixtures/certs/generate.sh +69 -0
- data/spec/fixtures/certs/generated/README.txt +2 -0
- data/spec/fixtures/certs/generated/client_from_root.jks +0 -0
- data/spec/fixtures/certs/generated/client_from_root.key.pem +52 -0
- data/spec/fixtures/certs/generated/client_from_root.key.pkcs8.pem +54 -0
- data/spec/fixtures/certs/generated/client_from_root.p12 +0 -0
- data/spec/fixtures/certs/generated/client_from_root.pem +35 -0
- data/spec/fixtures/certs/generated/client_from_untrusted.jks +0 -0
- data/spec/fixtures/certs/generated/client_from_untrusted.key.pem +52 -0
- data/spec/fixtures/certs/generated/client_from_untrusted.key.pkcs8.pem +54 -0
- data/spec/fixtures/certs/generated/client_from_untrusted.p12 +0 -0
- data/spec/fixtures/certs/generated/client_from_untrusted.pem +35 -0
- data/spec/fixtures/certs/generated/client_self_signed.jks +0 -0
- data/spec/fixtures/certs/generated/client_self_signed.key.pem +52 -0
- data/spec/fixtures/certs/generated/client_self_signed.key.pkcs8.pem +54 -0
- data/spec/fixtures/certs/generated/client_self_signed.p12 +0 -0
- data/spec/fixtures/certs/generated/client_self_signed.pem +32 -0
- data/spec/fixtures/certs/generated/root.key.pem +52 -0
- data/spec/fixtures/certs/generated/root.pem +32 -0
- data/spec/fixtures/certs/generated/server_from_root-key-pkcs8.pem +52 -0
- data/spec/fixtures/certs/generated/server_from_root.jks +0 -0
- data/spec/fixtures/certs/generated/server_from_root.key.pem +52 -0
- data/spec/fixtures/certs/generated/server_from_root.key.pkcs8.pem +54 -0
- data/spec/fixtures/certs/generated/server_from_root.p12 +0 -0
- data/spec/fixtures/certs/generated/server_from_root.pem +37 -0
- data/spec/fixtures/certs/generated/untrusted.key.pem +52 -0
- data/spec/fixtures/certs/generated/untrusted.pem +32 -0
- data/spec/fixtures/certs/openssl.cnf +57 -0
- data/spec/spec_helper.rb +22 -0
- data/spec/unit/full_transmission_spec.rb +202 -0
- data/spec/unit/logstash_input_spec.rb +151 -0
- data/spec/unit/logstash_output_spec.rb +170 -0
- metadata +243 -0
@@ -0,0 +1,52 @@
|
|
1
|
+
-----BEGIN PRIVATE KEY-----
|
2
|
+
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
|
51
|
+
gxbVPuFrxfd7bdsIsfJcT4AV2tRpNA==
|
52
|
+
-----END PRIVATE KEY-----
|
Binary file
|
@@ -0,0 +1,52 @@
|
|
1
|
+
-----BEGIN PRIVATE KEY-----
|
2
|
+
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
|
51
|
+
gxbVPuFrxfd7bdsIsfJcT4AV2tRpNA==
|
52
|
+
-----END PRIVATE KEY-----
|
@@ -0,0 +1,54 @@
|
|
1
|
+
-----BEGIN ENCRYPTED PRIVATE KEY-----
|
2
|
+
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
|
54
|
+
-----END ENCRYPTED PRIVATE KEY-----
|
Binary file
|
@@ -0,0 +1,37 @@
|
|
1
|
+
-----BEGIN CERTIFICATE-----
|
2
|
+
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
|
36
|
+
onoG0Zjb7skQttS0yA==
|
37
|
+
-----END CERTIFICATE-----
|
@@ -0,0 +1,52 @@
|
|
1
|
+
-----BEGIN PRIVATE KEY-----
|
2
|
+
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
|
51
|
+
CJXkeVKeh5sWp0maI7gC69stR6wvhg==
|
52
|
+
-----END PRIVATE KEY-----
|
@@ -0,0 +1,32 @@
|
|
1
|
+
-----BEGIN CERTIFICATE-----
|
2
|
+
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
|
32
|
+
-----END CERTIFICATE-----
|
@@ -0,0 +1,57 @@
|
|
1
|
+
[ req ]
|
2
|
+
distinguished_name= req_distinguished_name
|
3
|
+
attributes= req_attributes
|
4
|
+
|
5
|
+
[ req_distinguished_name ]
|
6
|
+
countryName= Country Name (2 letter code)
|
7
|
+
countryName_min= 2
|
8
|
+
countryName_max= 2
|
9
|
+
stateOrProvinceName= State or Province Name (full name)
|
10
|
+
localityName= Locality Name (eg, city)
|
11
|
+
0.organizationName= Organization Name (eg, company)
|
12
|
+
organizationalUnitName= Organizational Unit Name (eg, section)
|
13
|
+
commonName= Common Name (eg, fully qualified host name)
|
14
|
+
commonName_max= 64
|
15
|
+
emailAddress= Email Address
|
16
|
+
emailAddress_max= 64
|
17
|
+
|
18
|
+
[ req_attributes ]
|
19
|
+
challengePassword= A challenge password
|
20
|
+
challengePassword_min= 4
|
21
|
+
challengePassword_max= 20
|
22
|
+
|
23
|
+
[ ca ]
|
24
|
+
subjectKeyIdentifier = hash
|
25
|
+
authorityKeyIdentifier = keyid:always,issuer
|
26
|
+
basicConstraints = critical, CA:true
|
27
|
+
keyUsage = critical, digitalSignature, cRLSign, keyCertSign
|
28
|
+
|
29
|
+
[ client_cert ]
|
30
|
+
basicConstraints = CA:FALSE
|
31
|
+
nsCertType = client, email
|
32
|
+
nsComment = "OpenSSL Generated Client Certificate"
|
33
|
+
subjectKeyIdentifier = hash
|
34
|
+
authorityKeyIdentifier = keyid,issuer
|
35
|
+
keyUsage = critical, nonRepudiation, digitalSignature, keyEncipherment
|
36
|
+
extendedKeyUsage = clientAuth, emailProtection
|
37
|
+
subjectAltName = "DNS:localhost, IP:127.0.0.1"
|
38
|
+
|
39
|
+
[ client_cert_no_matching_subject ]
|
40
|
+
basicConstraints = CA:FALSE
|
41
|
+
nsCertType = client, email
|
42
|
+
nsComment = "OpenSSL Generated Client Certificate"
|
43
|
+
subjectKeyIdentifier = hash
|
44
|
+
authorityKeyIdentifier = keyid,issuer
|
45
|
+
keyUsage = critical, nonRepudiation, digitalSignature, keyEncipherment
|
46
|
+
extendedKeyUsage = clientAuth, emailProtection
|
47
|
+
subjectAltName = "DNS:nowhere, IP:123.45.67.89"
|
48
|
+
|
49
|
+
[ server_cert ]
|
50
|
+
basicConstraints = CA:FALSE
|
51
|
+
nsCertType = server
|
52
|
+
nsComment = "OpenSSL Generated Server Certificate"
|
53
|
+
subjectKeyIdentifier = hash
|
54
|
+
authorityKeyIdentifier = keyid,issuer:always
|
55
|
+
keyUsage = critical, digitalSignature, keyEncipherment
|
56
|
+
extendedKeyUsage = serverAuth
|
57
|
+
subjectAltName = "DNS:localhost, IP:127.0.0.1"
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
require "rspec"
|
2
|
+
require "rspec/mocks"
|
3
|
+
require "logstash/devutils/rspec/spec_helper"
|
4
|
+
|
5
|
+
module SpecHelper
|
6
|
+
|
7
|
+
def cert_fixture(name)
|
8
|
+
File.expand_path("fixtures/certs/generated/#{name}", __dir__)
|
9
|
+
end
|
10
|
+
|
11
|
+
def cert_fixture!(name)
|
12
|
+
cert_fixture(name).tap do |filename|
|
13
|
+
fail "MISSING: #{filename}" unless File.file?(filename)
|
14
|
+
fail "UNREADABLE: #{filename}" unless File.readable?(filename)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
end
|
19
|
+
|
20
|
+
RSpec.configure do |config|
|
21
|
+
config.include SpecHelper
|
22
|
+
end
|
@@ -0,0 +1,202 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require_relative "../spec_helper"
|
4
|
+
require "logstash/devutils/rspec/shared_examples"
|
5
|
+
require "logstash/inputs/logstash"
|
6
|
+
require "logstash/outputs/logstash"
|
7
|
+
require "rspec/collection_matchers"
|
8
|
+
require "random-port"
|
9
|
+
|
10
|
+
describe 'Logstash Output -> Input complete transmission' do
|
11
|
+
|
12
|
+
let(:port) { @available_port }
|
13
|
+
|
14
|
+
around(:each) do |example|
|
15
|
+
RandomPort::Pool::SINGLETON.acquire do |available_port|
|
16
|
+
@available_port = available_port
|
17
|
+
example.call
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
# requires: input_events (an array of Events)
|
22
|
+
# requires: output_plugin (a Logstash output plugin)
|
23
|
+
# requires: input_plugin (a Logstash input plugin)
|
24
|
+
# optional: concurrency (default: 1)
|
25
|
+
# optional: batch_size (default: 125)
|
26
|
+
# provides: output_events (an array of Events)
|
27
|
+
shared_context 'transmission' do
|
28
|
+
let(:concurrency) { defined?(super) ? super() : 8 }
|
29
|
+
let(:batch_size) { defined?(super) ? super() : 125 }
|
30
|
+
|
31
|
+
let(:output_events) { [] }
|
32
|
+
let(:errors) { [] }
|
33
|
+
|
34
|
+
before(:each) do
|
35
|
+
input_plugin.register
|
36
|
+
output_plugin.register
|
37
|
+
|
38
|
+
transmit_queue = Queue.new
|
39
|
+
input_events.each_slice(batch_size) { |batch| transmit_queue << batch }
|
40
|
+
|
41
|
+
receipt_queue = Queue.new
|
42
|
+
input_thread = Thread.new(receipt_queue) { |queue| input_plugin.run(queue) }
|
43
|
+
|
44
|
+
error_queue = Queue.new
|
45
|
+
|
46
|
+
concurrency.times.map do
|
47
|
+
Thread.new(receipt_queue) do
|
48
|
+
loop do
|
49
|
+
batch = transmit_queue.pop(true) rescue break
|
50
|
+
begin
|
51
|
+
Timeout.timeout(5) do
|
52
|
+
output_plugin.multi_receive(batch)
|
53
|
+
end
|
54
|
+
rescue => e
|
55
|
+
error_queue << e
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end.map(&:join)
|
60
|
+
|
61
|
+
output_plugin.close
|
62
|
+
input_plugin.stop
|
63
|
+
input_thread.join
|
64
|
+
|
65
|
+
receipt_queue.size.times { output_events << receipt_queue.pop }
|
66
|
+
error_queue.size.times { errors << error_queue.pop }
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
# provides: input_events
|
71
|
+
# depends: output_events
|
72
|
+
shared_examples "large sequence" do
|
73
|
+
let(:event_count) { 10_000 }
|
74
|
+
|
75
|
+
let(:input_events) { (0...event_count).map { |idx| LogStash::Event.new("event" => {"sequence" => idx}) } }
|
76
|
+
|
77
|
+
it 'transmits all events' do
|
78
|
+
expect(output_events).to have_exactly(event_count).items
|
79
|
+
|
80
|
+
expect(output_events.map{|e| e.get("[event][sequence]")}.uniq).to have_exactly(event_count).items
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
shared_examples "connection failure" do
|
85
|
+
let(:input_events) { [LogStash::Event.new("event" => {"sequence" => 999})] }
|
86
|
+
|
87
|
+
it 'fails to transmit the events' do
|
88
|
+
expect(errors).to have_exactly(1).items
|
89
|
+
expect(output_events).to be_empty
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
context 'basic plaintext' do
|
94
|
+
let(:output_plugin) { LogStash::Outputs::Logstash.new("host" => "127.0.0.1", "port" => port, "ssl_enabled" => false) }
|
95
|
+
let(:input_plugin) { LogStash::Inputs::Logstash.new("host" => "127.0.0.1", "port" => port, "ssl_enabled" => false) }
|
96
|
+
|
97
|
+
include_context 'transmission'
|
98
|
+
include_examples "large sequence"
|
99
|
+
end
|
100
|
+
|
101
|
+
context 'simple ssl with client authentication none' do
|
102
|
+
let(:input_plugin) {
|
103
|
+
LogStash::Inputs::Logstash.new({
|
104
|
+
"host" => "127.0.0.1", "port" => port,
|
105
|
+
"ssl_keystore_path" => cert_fixture!('server_from_root.jks'),
|
106
|
+
"ssl_keystore_password" => "12345678",
|
107
|
+
})
|
108
|
+
}
|
109
|
+
|
110
|
+
context 'output connects via ssl' do
|
111
|
+
let(:output_plugin) {
|
112
|
+
LogStash::Outputs::Logstash.new({
|
113
|
+
"host" => "127.0.0.1", "port" => port,
|
114
|
+
"ssl_certificate_authorities" => cert_fixture!('root.pem'),
|
115
|
+
})
|
116
|
+
}
|
117
|
+
|
118
|
+
include_context 'transmission'
|
119
|
+
include_examples "large sequence"
|
120
|
+
end
|
121
|
+
|
122
|
+
context 'output connects without ssl' do
|
123
|
+
let(:output_plugin) {
|
124
|
+
LogStash::Outputs::Logstash.new({
|
125
|
+
"host" => "127.0.0.1", "port" => port,
|
126
|
+
"ssl_enabled" => false,
|
127
|
+
})
|
128
|
+
}
|
129
|
+
|
130
|
+
include_context 'transmission'
|
131
|
+
include_examples "connection failure"
|
132
|
+
end
|
133
|
+
|
134
|
+
end
|
135
|
+
|
136
|
+
context 'client auth ssl' do
|
137
|
+
let(:input_plugin) {
|
138
|
+
LogStash::Inputs::Logstash.new({
|
139
|
+
"host" => "127.0.0.1", "port" => port,
|
140
|
+
"ssl_certificate" => cert_fixture!('server_from_root.pem'),
|
141
|
+
"ssl_key" => cert_fixture!('server_from_root.key.pkcs8.pem'),
|
142
|
+
"ssl_key_passphrase" => "12345678",
|
143
|
+
"ssl_certificate_authorities" => cert_fixture!('root.pem'),
|
144
|
+
"ssl_client_authentication" => "required",
|
145
|
+
})
|
146
|
+
}
|
147
|
+
|
148
|
+
context 'output presents peer certificate' do
|
149
|
+
let(:output_plugin) {
|
150
|
+
LogStash::Outputs::Logstash.new({
|
151
|
+
"host" => "127.0.0.1", "port" => port,
|
152
|
+
"ssl_certificate_authorities" => cert_fixture!('root.pem'),
|
153
|
+
"ssl_keystore_path" => cert_fixture!('client_from_root.jks'),
|
154
|
+
"ssl_keystore_password" => "12345678",
|
155
|
+
})
|
156
|
+
}
|
157
|
+
|
158
|
+
include_context 'transmission'
|
159
|
+
include_examples "large sequence"
|
160
|
+
end
|
161
|
+
|
162
|
+
context 'output presents NO certificate' do
|
163
|
+
let(:output_plugin) {
|
164
|
+
LogStash::Outputs::Logstash.new({
|
165
|
+
"host" => "127.0.0.1", "port" => port,
|
166
|
+
"ssl_certificate_authorities" => cert_fixture!('root.pem'),
|
167
|
+
})
|
168
|
+
}
|
169
|
+
|
170
|
+
include_context 'transmission'
|
171
|
+
include_examples "connection failure"
|
172
|
+
end
|
173
|
+
|
174
|
+
context 'output presents untrusted certificate' do
|
175
|
+
let(:output_plugin) {
|
176
|
+
LogStash::Outputs::Logstash.new({
|
177
|
+
"host" => "127.0.0.1", "port" => port,
|
178
|
+
"ssl_certificate_authorities" => cert_fixture!('root.pem'),
|
179
|
+
"ssl_keystore_path" => cert_fixture!('client_from_untrusted.jks'),
|
180
|
+
"ssl_keystore_password" => "12345678",
|
181
|
+
})
|
182
|
+
}
|
183
|
+
|
184
|
+
include_context 'transmission'
|
185
|
+
include_examples "connection failure"
|
186
|
+
end
|
187
|
+
|
188
|
+
context 'output presents self-signed certificate' do
|
189
|
+
let(:output_plugin) {
|
190
|
+
LogStash::Outputs::Logstash.new({
|
191
|
+
"host" => "127.0.0.1", "port" => port,
|
192
|
+
"ssl_certificate_authorities" => cert_fixture!('root.pem'),
|
193
|
+
"ssl_keystore_path" => cert_fixture!('client_self_signed.jks'),
|
194
|
+
"ssl_keystore_password" => "12345678",
|
195
|
+
})
|
196
|
+
}
|
197
|
+
|
198
|
+
include_context 'transmission'
|
199
|
+
include_examples "connection failure"
|
200
|
+
end
|
201
|
+
end
|
202
|
+
end
|