mirror of
https://github.com/Security-Onion-Solutions/securityonion.git
synced 2025-12-07 01:32:47 +01:00
Compare commits
521 Commits
2.4.3-2023
...
2.4.10-202
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
16da0b469a | ||
|
|
5c2c2908b8 | ||
|
|
ad9da07de1 | ||
|
|
d1210e946c | ||
|
|
5d6fe4d9ae | ||
|
|
193f9c08fb | ||
|
|
4808c21cf4 | ||
|
|
4106d1f69d | ||
|
|
007720132b | ||
|
|
f3a58cd336 | ||
|
|
faca36e74c | ||
|
|
f38b77892b | ||
|
|
00297cd864 | ||
|
|
ce63e47fcd | ||
|
|
d53489d674 | ||
|
|
1fb3a59573 | ||
|
|
a5e60363cf | ||
|
|
3f054031a0 | ||
|
|
4a54febf38 | ||
|
|
fdb2ca4167 | ||
|
|
7112d53d4d | ||
|
|
1d83b2f2e6 | ||
|
|
a724b95441 | ||
|
|
0d894b7f52 | ||
|
|
e32d7eb127 | ||
|
|
caced64d11 | ||
|
|
3ec3f8bcd8 | ||
|
|
4426437ad3 | ||
|
|
1f0f74ff04 | ||
|
|
e43900074a | ||
|
|
732d2605a7 | ||
|
|
4d497022db | ||
|
|
2680a50927 | ||
|
|
874dab7535 | ||
|
|
fe9917ef1c | ||
|
|
e844cf11db | ||
|
|
f9e272dd8f | ||
|
|
dfe916d7c8 | ||
|
|
c3c769922d | ||
|
|
30e3fbb41c | ||
|
|
78694807ff | ||
|
|
8844e305ab | ||
|
|
1a37c43c98 | ||
|
|
bf78faa0f0 | ||
|
|
204ef7e68f | ||
|
|
176608d2f9 | ||
|
|
28dfdbf06d | ||
|
|
a443c654e5 | ||
|
|
6413050f2e | ||
|
|
fe7a940082 | ||
|
|
e586d6b967 | ||
|
|
2d25e352d4 | ||
|
|
4297d51a2d | ||
|
|
1440c72559 | ||
|
|
00efc2f88f | ||
|
|
d55c2f889c | ||
|
|
e1e535b009 | ||
|
|
789fff561e | ||
|
|
58fe25623b | ||
|
|
553b758c61 | ||
|
|
6da2f117f2 | ||
|
|
6ad22edf8e | ||
|
|
2dbe679849 | ||
|
|
2f74b69cc3 | ||
|
|
4320dab856 | ||
|
|
036b81707b | ||
|
|
8455d3da6f | ||
|
|
3d4fd08547 | ||
|
|
21c80e4953 | ||
|
|
5c704d7e58 | ||
|
|
230f5868f9 | ||
|
|
20dedab4b2 | ||
|
|
9118ac2b56 | ||
|
|
aab89d2483 | ||
|
|
b2e75e77e8 | ||
|
|
bcd1ccd91b | ||
|
|
673b45af09 | ||
|
|
a06040c035 | ||
|
|
e286b8f2ba | ||
|
|
69553f9017 | ||
|
|
609a2bf32e | ||
|
|
dad541423d | ||
|
|
b9d0d03223 | ||
|
|
8611d1848c | ||
|
|
5278601e5d | ||
|
|
a13b3f305a | ||
|
|
38089c6662 | ||
|
|
2d863f09eb | ||
|
|
37b98ba188 | ||
|
|
65d1e57ccd | ||
|
|
9ae32e2bd6 | ||
|
|
6e8f31e083 | ||
|
|
3c5cd941c7 | ||
|
|
2ea2a4d0a7 | ||
|
|
90102b1148 | ||
|
|
ec81cbd70d | ||
|
|
59c0109c91 | ||
|
|
9af2a731ca | ||
|
|
9b656ebbc0 | ||
|
|
9d3744aa25 | ||
|
|
9fddd56c96 | ||
|
|
89c4f58296 | ||
|
|
0ba1e7521a | ||
|
|
36747cf940 | ||
|
|
118088c35f | ||
|
|
63373710b4 | ||
|
|
209da766ba | ||
|
|
433cde0f9e | ||
|
|
9fe9256a0f | ||
|
|
014aeffb2a | ||
|
|
3b86b60207 | ||
|
|
0f52530d07 | ||
|
|
726ec72350 | ||
|
|
560ec9106d | ||
|
|
a51acfc314 | ||
|
|
78950ebfbb | ||
|
|
d3ae2b03f0 | ||
|
|
dd1fa51eb5 | ||
|
|
682289ef23 | ||
|
|
593cdbd060 | ||
|
|
4ed0ba5040 | ||
|
|
2472d6a727 | ||
|
|
18e31a4490 | ||
|
|
2caca92082 | ||
|
|
abf74e0ae4 | ||
|
|
dc7ce5ba8f | ||
|
|
6b5343f582 | ||
|
|
ca6276b922 | ||
|
|
3e4136e641 | ||
|
|
15b8e1a753 | ||
|
|
b7197bbd16 | ||
|
|
8966617508 | ||
|
|
9319c3f2e1 | ||
|
|
d4fbf7d6a6 | ||
|
|
e78fcbc6cb | ||
|
|
27b70cbf68 | ||
|
|
ffb54135d1 | ||
|
|
d40a8927c3 | ||
|
|
9172e10dba | ||
|
|
1907ea805c | ||
|
|
80598d7f8d | ||
|
|
13c3e7f5ff | ||
|
|
d4389d5057 | ||
|
|
cf2233bbb6 | ||
|
|
3847863b3d | ||
|
|
3368789b43 | ||
|
|
1bc7bbc76e | ||
|
|
e108bb9bcd | ||
|
|
5414b0756c | ||
|
|
11c827927c | ||
|
|
3054b8dcb9 | ||
|
|
399758cd5f | ||
|
|
1c8a8c460c | ||
|
|
ab28cee7cf | ||
|
|
5a3c1f0373 | ||
|
|
435da77388 | ||
|
|
da2910e36f | ||
|
|
eb512d9aa2 | ||
|
|
03f5e44be7 | ||
|
|
f153c1125d | ||
|
|
99b61b5e1d | ||
|
|
8036df4b20 | ||
|
|
aab55c8cf6 | ||
|
|
f3c5d26a4e | ||
|
|
64776936cc | ||
|
|
c17b324108 | ||
|
|
72e1cbbfb6 | ||
|
|
f102351052 | ||
|
|
ac28f90af3 | ||
|
|
f6c6204555 | ||
|
|
9873121000 | ||
|
|
5630b353c4 | ||
|
|
04ed5835ae | ||
|
|
407cb2a537 | ||
|
|
b520c1abb7 | ||
|
|
25b11c35fb | ||
|
|
ef0301d364 | ||
|
|
e694019027 | ||
|
|
22ebb2faf6 | ||
|
|
0d5ed2e835 | ||
|
|
8ab1769d70 | ||
|
|
6692fffb9b | ||
|
|
23414599ee | ||
|
|
8b3a38f573 | ||
|
|
9ec4322bf4 | ||
|
|
7037fc52f8 | ||
|
|
0e047cffad | ||
|
|
44b086a028 | ||
|
|
4e2eb86b36 | ||
|
|
1cbf60825d | ||
|
|
2d13bf1a61 | ||
|
|
968fee3488 | ||
|
|
da51fd59a0 | ||
|
|
3fa0a98830 | ||
|
|
e7bef745eb | ||
|
|
82b335ed04 | ||
|
|
f35f42c83d | ||
|
|
4adaddf13f | ||
|
|
b6579d7d45 | ||
|
|
87a5d20ac9 | ||
|
|
2875a7a2e5 | ||
|
|
f27ebc47c1 | ||
|
|
63b4bdcebe | ||
|
|
ba3660d0da | ||
|
|
83265d9d6c | ||
|
|
527a6ba454 | ||
|
|
f84b0a3219 | ||
|
|
ae6997a6b7 | ||
|
|
9d59e4250f | ||
|
|
48d9c14563 | ||
|
|
29b64eadd4 | ||
|
|
5dd5f9fc1c | ||
|
|
44c926ba8d | ||
|
|
6a55a8e5c0 | ||
|
|
64bad0a9cf | ||
|
|
b6dd347eb8 | ||
|
|
a89508f1ae | ||
|
|
ed7b674fbb | ||
|
|
0c2a4cbaba | ||
|
|
57562ad5e3 | ||
|
|
95581f505a | ||
|
|
599de60dc8 | ||
|
|
77101fec12 | ||
|
|
069d32be1a | ||
|
|
e78e6b74ed | ||
|
|
16217912db | ||
|
|
635ddc9b21 | ||
|
|
18d8f0d448 | ||
|
|
1c42d70d30 | ||
|
|
282f13a774 | ||
|
|
f867be9e04 | ||
|
|
4939447764 | ||
|
|
5a59975cb8 | ||
|
|
20f3cedc01 | ||
|
|
e563d71856 | ||
|
|
1ca78fd297 | ||
|
|
e76ee718e0 | ||
|
|
5c90a5f27e | ||
|
|
bee429fe29 | ||
|
|
ecbb353d68 | ||
|
|
ed21b94c28 | ||
|
|
2a282a29c3 | ||
|
|
bc09b418ca | ||
|
|
6f6db61a69 | ||
|
|
9fce80dba3 | ||
|
|
abfec85e28 | ||
|
|
9aa655365b | ||
|
|
aa56085758 | ||
|
|
9a3760951a | ||
|
|
4c8373452d | ||
|
|
0bb5db2e72 | ||
|
|
2dbc7d8485 | ||
|
|
858e884ec2 | ||
|
|
4672eeb99b | ||
|
|
aa824e7b6c | ||
|
|
bb2a1b9521 | ||
|
|
3a22ef8e86 | ||
|
|
54080c42fe | ||
|
|
a1fa87c150 | ||
|
|
0c553633b1 | ||
|
|
12486599e0 | ||
|
|
3c16218c5a | ||
|
|
f9850025ea | ||
|
|
65b76d72ca | ||
|
|
afca15f444 | ||
|
|
65b9843f14 | ||
|
|
653e2d8205 | ||
|
|
bbaf6df914 | ||
|
|
bc182c1c43 | ||
|
|
fe9b934af6 | ||
|
|
373298430b | ||
|
|
4a18eb02f3 | ||
|
|
0aab3e185e | ||
|
|
b1fb05dd28 | ||
|
|
9437a47946 | ||
|
|
bdf4f6190d | ||
|
|
f24a3a51ce | ||
|
|
ba6043392c | ||
|
|
60eb1611ea | ||
|
|
3ef6ea9155 | ||
|
|
2b38bc778d | ||
|
|
e334d44c95 | ||
|
|
39662ccf14 | ||
|
|
fd69d1c714 | ||
|
|
63eebdf6ac | ||
|
|
e19845e41d | ||
|
|
c1190064ad | ||
|
|
4f94d953c9 | ||
|
|
71a83c1fe9 | ||
|
|
5553be02ac | ||
|
|
b20fad2839 | ||
|
|
16edca7834 | ||
|
|
2545f9907f | ||
|
|
4efc951eaf | ||
|
|
d75191d679 | ||
|
|
ee667a48c9 | ||
|
|
067a83a87c | ||
|
|
d84dbf9535 | ||
|
|
d71254ad29 | ||
|
|
de7b7ff989 | ||
|
|
510900e640 | ||
|
|
00483018ca | ||
|
|
9416a14971 | ||
|
|
c9faa1a340 | ||
|
|
9bda01bd29 | ||
|
|
eead0c42d4 | ||
|
|
741e6039c1 | ||
|
|
db09b465bd | ||
|
|
a59f2ded38 | ||
|
|
e2fe04dadc | ||
|
|
563bf2ff3a | ||
|
|
07eeb4e2a0 | ||
|
|
5dc5b99b05 | ||
|
|
ba69c67dc2 | ||
|
|
d1d5f8a2b6 | ||
|
|
48324911ce | ||
|
|
4b0126a2e7 | ||
|
|
8a3c2e7242 | ||
|
|
f55c1a4078 | ||
|
|
c4d81a249a | ||
|
|
4c9d172721 | ||
|
|
36a936d3d6 | ||
|
|
d6164446c6 | ||
|
|
bb7a918a16 | ||
|
|
be254b15f2 | ||
|
|
83e1e3efdc | ||
|
|
7c48f9d6ec | ||
|
|
f2947de0ca | ||
|
|
d07c46f27e | ||
|
|
47e418a441 | ||
|
|
87b1207ac0 | ||
|
|
a86cbaa6fa | ||
|
|
c68cd6cf33 | ||
|
|
3071a1de41 | ||
|
|
e75d0c8094 | ||
|
|
14c685ab10 | ||
|
|
54082858dc | ||
|
|
4b7e7978ef | ||
|
|
066de70638 | ||
|
|
19c6796927 | ||
|
|
77c9b4fb54 | ||
|
|
3104137190 | ||
|
|
c8b65ecca0 | ||
|
|
555c881235 | ||
|
|
0ac9a1f9cc | ||
|
|
3c0554a42c | ||
|
|
0b19179630 | ||
|
|
30a14f8aaf | ||
|
|
877fc36013 | ||
|
|
a892adb66f | ||
|
|
a49b05661d | ||
|
|
266fc4e866 | ||
|
|
b738325880 | ||
|
|
ad7821391d | ||
|
|
1b0c146b54 | ||
|
|
1848a835f5 | ||
|
|
23cc75c68d | ||
|
|
17fcf12608 | ||
|
|
6a8737e9a2 | ||
|
|
9543058a2c | ||
|
|
b66cd82110 | ||
|
|
41ebb403ca | ||
|
|
c94436fcbd | ||
|
|
a59eda319e | ||
|
|
8a76975d8c | ||
|
|
737da45e7f | ||
|
|
df1bf8e67b | ||
|
|
f95757c551 | ||
|
|
5e46138961 | ||
|
|
dc8aa4d923 | ||
|
|
1d3e39b6bd | ||
|
|
9ad7303cf2 | ||
|
|
b1daa22dfc | ||
|
|
49c4edbcbe | ||
|
|
f4c3103f84 | ||
|
|
a2aea5530b | ||
|
|
01234f87f9 | ||
|
|
5d4186ac07 | ||
|
|
425ca35a22 | ||
|
|
fe5ca3a0c8 | ||
|
|
7fad710ca1 | ||
|
|
8d6c2600c9 | ||
|
|
38c7ea0801 | ||
|
|
abe0a9ec27 | ||
|
|
f0f8513370 | ||
|
|
bffd24e0d5 | ||
|
|
71cbab8fcc | ||
|
|
6816d06710 | ||
|
|
d19615f743 | ||
|
|
894e009b95 | ||
|
|
1a4515fc8a | ||
|
|
31696803e1 | ||
|
|
e715dfa354 | ||
|
|
c723a09107 | ||
|
|
8cf3ceeb71 | ||
|
|
921fc95668 | ||
|
|
9e42fb927d | ||
|
|
87d72e852c | ||
|
|
ba2782c5e7 | ||
|
|
9169fca9f8 | ||
|
|
1028fb1346 | ||
|
|
6846487909 | ||
|
|
2cc0c4c0ac | ||
|
|
5a5b643155 | ||
|
|
e97bec2bc1 | ||
|
|
78db64a419 | ||
|
|
55d32c5b98 | ||
|
|
333213d1dd | ||
|
|
03b16a5582 | ||
|
|
20c76abac4 | ||
|
|
4158e18675 | ||
|
|
f0c391e801 | ||
|
|
922a77ac55 | ||
|
|
a62f96595c | ||
|
|
fb8a79e112 | ||
|
|
782a3eccfe | ||
|
|
2c996fe7ad | ||
|
|
0c177ec923 | ||
|
|
41f00c0aa1 | ||
|
|
05b30771c5 | ||
|
|
e3249c8e4c | ||
|
|
a0b6e1076f | ||
|
|
85bb5a327c | ||
|
|
68f5c9965a | ||
|
|
727d0443a2 | ||
|
|
b915cea52f | ||
|
|
d98a1d5ae5 | ||
|
|
6f5bb136ff | ||
|
|
695ec149f1 | ||
|
|
50103aebb3 | ||
|
|
6f81e234cd | ||
|
|
7732435b64 | ||
|
|
2cf36f1e8f | ||
|
|
43d63a3187 | ||
|
|
40294e2762 | ||
|
|
a3f79850fe | ||
|
|
b9204cbe99 | ||
|
|
6f7914f3c4 | ||
|
|
0c9e230294 | ||
|
|
fa1d53a309 | ||
|
|
a41b0dbfea | ||
|
|
d28375b304 | ||
|
|
07c0b539d7 | ||
|
|
d18ebd6e36 | ||
|
|
5a642b151b | ||
|
|
0aa4ea3e87 | ||
|
|
efcef90ead | ||
|
|
af56aa4f16 | ||
|
|
d5257468eb | ||
|
|
a3b0db7949 | ||
|
|
5f509eb2d8 | ||
|
|
a38d561684 | ||
|
|
4b559ec182 | ||
|
|
0b209d69e5 | ||
|
|
11493cb615 | ||
|
|
0def41f03c | ||
|
|
1c191e426f | ||
|
|
de98baaad4 | ||
|
|
df0e19ff80 | ||
|
|
d22d864ba6 | ||
|
|
898b352af9 | ||
|
|
76a8e315b7 | ||
|
|
edaf695463 | ||
|
|
53fcac4a02 | ||
|
|
44054ba95f | ||
|
|
10aa77977e | ||
|
|
8e90658856 | ||
|
|
965d0543f4 | ||
|
|
e353855855 | ||
|
|
c54217a8cb | ||
|
|
710b3bac3d | ||
|
|
8a90579df7 | ||
|
|
39c8766914 | ||
|
|
694ea743cc | ||
|
|
3d9e7d1e97 | ||
|
|
ca71c00f1c | ||
|
|
2f2394dca2 | ||
|
|
fee4c20912 | ||
|
|
03342fd477 | ||
|
|
6dbff3b9df | ||
|
|
2f375b89a8 | ||
|
|
f67ac80c56 | ||
|
|
b06a35099f | ||
|
|
087099b9b6 | ||
|
|
04fe2ca996 | ||
|
|
bdb5748b44 | ||
|
|
1cbe5580a6 | ||
|
|
b57674a7cc | ||
|
|
53bd7bcc29 | ||
|
|
6787b97c6a | ||
|
|
0d43f9aaf4 | ||
|
|
40540f47bf | ||
|
|
24e05c9491 | ||
|
|
02c9465dfb | ||
|
|
a4d484ea47 | ||
|
|
c9d650f4c8 | ||
|
|
ed1d2d0a8b | ||
|
|
903de330c2 | ||
|
|
8621352701 | ||
|
|
564ab105ba | ||
|
|
b637e27c8d | ||
|
|
34ab949dfc | ||
|
|
59191008a0 | ||
|
|
17a04a75c9 | ||
|
|
884d669ae9 | ||
|
|
8a88b16b9e | ||
|
|
6545ae588d | ||
|
|
5ab54fcfc5 | ||
|
|
ae4befe377 | ||
|
|
0c320e3501 | ||
|
|
933f4fa6c8 | ||
|
|
d80c88f613 | ||
|
|
6d2e851a43 | ||
|
|
209aae50bc | ||
|
|
6fc988740d | ||
|
|
387ce22385 | ||
|
|
cc3c28135d | ||
|
|
6b6724afcf | ||
|
|
c37a179a3c | ||
|
|
d519369c6f | ||
|
|
883d9560a0 |
@@ -1,18 +1,18 @@
|
|||||||
### 2.4.3-20230711 ISO image built on 2023/07/11
|
### 2.4.10-20230815 ISO image released on 2023/08/15
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
### Download and Verify
|
### Download and Verify
|
||||||
|
|
||||||
2.4.3-20230711 ISO image:
|
2.4.10-20230815 ISO image:
|
||||||
https://download.securityonion.net/file/securityonion/securityonion-2.4.3-20230711.iso
|
https://download.securityonion.net/file/securityonion/securityonion-2.4.10-20230815.iso
|
||||||
|
|
||||||
MD5: F481ED39E02A5AF05EB50D319D97A6C7
|
MD5: 97AEC929FB1FC22F106C0C93E3476FAB
|
||||||
SHA1: 20F9BAA8F73A44C21A8DFE81F36247BCF33CEDA6
|
SHA1: 78AF37FD19FDC34BA324C1A661632D19D1F2284A
|
||||||
SHA256: D805522E02CD4941641385F6FF86FAAC240DA6C5FD98F78460348632C7C631B0
|
SHA256: D04BA45D1664FC3CF7EA2188CB7E570642F6390C3959B4AFBB8222A853859394
|
||||||
|
|
||||||
Signature for ISO image:
|
Signature for ISO image:
|
||||||
https://github.com/Security-Onion-Solutions/securityonion/raw/2.4/main/sigs/securityonion-2.4.3-20230711.iso.sig
|
https://github.com/Security-Onion-Solutions/securityonion/raw/2.4/main/sigs/securityonion-2.4.10-20230815.iso.sig
|
||||||
|
|
||||||
Signing key:
|
Signing key:
|
||||||
https://raw.githubusercontent.com/Security-Onion-Solutions/securityonion/2.4/main/KEYS
|
https://raw.githubusercontent.com/Security-Onion-Solutions/securityonion/2.4/main/KEYS
|
||||||
@@ -26,22 +26,22 @@ wget https://raw.githubusercontent.com/Security-Onion-Solutions/securityonion/2.
|
|||||||
|
|
||||||
Download the signature file for the ISO:
|
Download the signature file for the ISO:
|
||||||
```
|
```
|
||||||
wget https://github.com/Security-Onion-Solutions/securityonion/raw/2.4/main/sigs/securityonion-2.4.3-20230711.iso.sig
|
wget https://github.com/Security-Onion-Solutions/securityonion/raw/2.4/main/sigs/securityonion-2.4.10-20230815.iso.sig
|
||||||
```
|
```
|
||||||
|
|
||||||
Download the ISO image:
|
Download the ISO image:
|
||||||
```
|
```
|
||||||
wget https://download.securityonion.net/file/securityonion/securityonion-2.4.3-20230711.iso
|
wget https://download.securityonion.net/file/securityonion/securityonion-2.4.10-20230815.iso
|
||||||
```
|
```
|
||||||
|
|
||||||
Verify the downloaded ISO image using the signature file:
|
Verify the downloaded ISO image using the signature file:
|
||||||
```
|
```
|
||||||
gpg --verify securityonion-2.4.3-20230711.iso.sig securityonion-2.4.3-20230711.iso
|
gpg --verify securityonion-2.4.10-20230815.iso.sig securityonion-2.4.10-20230815.iso
|
||||||
```
|
```
|
||||||
|
|
||||||
The output should show "Good signature" and the Primary key fingerprint should match what's shown below:
|
The output should show "Good signature" and the Primary key fingerprint should match what's shown below:
|
||||||
```
|
```
|
||||||
gpg: Signature made Tue 11 Jul 2023 06:23:37 PM EDT using RSA key ID FE507013
|
gpg: Signature made Sun 13 Aug 2023 05:30:29 PM EDT using RSA key ID FE507013
|
||||||
gpg: Good signature from "Security Onion Solutions, LLC <info@securityonionsolutions.com>"
|
gpg: Good signature from "Security Onion Solutions, LLC <info@securityonionsolutions.com>"
|
||||||
gpg: WARNING: This key is not certified with a trusted signature!
|
gpg: WARNING: This key is not certified with a trusted signature!
|
||||||
gpg: There is no indication that the signature belongs to the owner.
|
gpg: There is no indication that the signature belongs to the owner.
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
## Security Onion 2.4 Beta 4
|
## Security Onion 2.4
|
||||||
|
|
||||||
Security Onion 2.4 Beta 4 is here!
|
Security Onion 2.4 is here!
|
||||||
|
|
||||||
## Screenshots
|
## Screenshots
|
||||||
|
|
||||||
|
|||||||
@@ -3,14 +3,14 @@ import subprocess
|
|||||||
|
|
||||||
def check():
|
def check():
|
||||||
|
|
||||||
os = __grains__['os']
|
osfam = __grains__['os_family']
|
||||||
retval = 'False'
|
retval = 'False'
|
||||||
|
|
||||||
if os == 'Ubuntu':
|
if osfam == 'Debian':
|
||||||
if path.exists('/var/run/reboot-required'):
|
if path.exists('/var/run/reboot-required'):
|
||||||
retval = 'True'
|
retval = 'True'
|
||||||
|
|
||||||
elif os == 'Rocky':
|
elif osfam == 'RedHat':
|
||||||
cmd = 'needs-restarting -r > /dev/null 2>&1'
|
cmd = 'needs-restarting -r > /dev/null 2>&1'
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
|||||||
@@ -1,13 +1,11 @@
|
|||||||
{%- set DOCKERRANGE = salt['pillar.get']('docker:range', '172.17.0.0/24') %}
|
|
||||||
{%- set DOCKERBIND = salt['pillar.get']('docker:bip', '172.17.0.1/24') %}
|
|
||||||
{
|
{
|
||||||
"registry-mirrors": [
|
"registry-mirrors": [
|
||||||
"https://:5000"
|
"https://:5000"
|
||||||
],
|
],
|
||||||
"bip": "{{ DOCKERBIND }}",
|
"bip": "172.17.0.1/24",
|
||||||
"default-address-pools": [
|
"default-address-pools": [
|
||||||
{
|
{
|
||||||
"base": "{{ DOCKERRANGE }}",
|
"base": "172.17.0.0/24",
|
||||||
"size": 24
|
"size": 24
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -195,7 +195,7 @@ soversionfile:
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if GLOBALS.so_model and GLOBALS.so_model not in ['SO2AMI01', 'SO2AZI01', 'SO2GCI01'] %}
|
{% if GLOBALS.so_model and GLOBALS.so_model not in ['SO2AMI01', 'SO2AZI01', 'SO2GCI01'] %}
|
||||||
{% if GLOBALS.os == 'Rocky' %}
|
{% if GLOBALS.os == 'OEL' %}
|
||||||
# Install Raid tools
|
# Install Raid tools
|
||||||
raidpkgs:
|
raidpkgs:
|
||||||
pkg.installed:
|
pkg.installed:
|
||||||
@@ -217,8 +217,7 @@ so-raid-status:
|
|||||||
- month: '*'
|
- month: '*'
|
||||||
- dayweek: '*'
|
- dayweek: '*'
|
||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% else %}
|
{% else %}
|
||||||
|
|
||||||
{{sls}}_state_not_allowed:
|
{{sls}}_state_not_allowed:
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
||||||
|
|
||||||
{% if GLOBALS.os == 'Ubuntu' %}
|
{% if GLOBALS.os_family == 'Debian' %}
|
||||||
commonpkgs:
|
commonpkgs:
|
||||||
pkg.installed:
|
pkg.installed:
|
||||||
- skip_suggestions: True
|
- skip_suggestions: True
|
||||||
@@ -14,16 +14,25 @@ commonpkgs:
|
|||||||
- software-properties-common
|
- software-properties-common
|
||||||
- apt-transport-https
|
- apt-transport-https
|
||||||
- openssl
|
- openssl
|
||||||
- netcat
|
- netcat-openbsd
|
||||||
- sqlite3
|
- sqlite3
|
||||||
- libssl-dev
|
- libssl-dev
|
||||||
|
- procps
|
||||||
- python3-dateutil
|
- python3-dateutil
|
||||||
|
- python3-docker
|
||||||
- python3-packaging
|
- python3-packaging
|
||||||
- python3-watchdog
|
- python3-watchdog
|
||||||
- python3-lxml
|
- python3-lxml
|
||||||
- git
|
- git
|
||||||
|
- rsync
|
||||||
- vim
|
- vim
|
||||||
|
- tar
|
||||||
|
- unzip
|
||||||
|
{% if grains.oscodename != 'focal' %}
|
||||||
|
- python3-rich
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if grains.oscodename == 'focal' %}
|
||||||
# since Ubuntu requires and internet connection we can use pip to install modules
|
# since Ubuntu requires and internet connection we can use pip to install modules
|
||||||
python3-pip:
|
python3-pip:
|
||||||
pkg.installed
|
pkg.installed
|
||||||
@@ -34,34 +43,46 @@ python-rich:
|
|||||||
- target: /usr/local/lib/python3.8/dist-packages/
|
- target: /usr/local/lib/python3.8/dist-packages/
|
||||||
- require:
|
- require:
|
||||||
- pkg: python3-pip
|
- pkg: python3-pip
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
{% elif GLOBALS.os == 'Rocky' %}
|
{% if GLOBALS.os_family == 'RedHat' %}
|
||||||
commonpkgs:
|
commonpkgs:
|
||||||
pkg.installed:
|
pkg.installed:
|
||||||
- skip_suggestions: True
|
- skip_suggestions: True
|
||||||
- pkgs:
|
- pkgs:
|
||||||
- wget
|
|
||||||
- jq
|
|
||||||
- tcpdump
|
|
||||||
- httpd-tools
|
|
||||||
- net-tools
|
|
||||||
- curl
|
- curl
|
||||||
- sqlite
|
|
||||||
- mariadb-devel
|
|
||||||
- python3-dnf-plugin-versionlock
|
|
||||||
- nmap-ncat
|
|
||||||
- yum-utils
|
|
||||||
- device-mapper-persistent-data
|
- device-mapper-persistent-data
|
||||||
- lvm2
|
- fuse
|
||||||
- openssl
|
- fuse-libs
|
||||||
|
- fuse-overlayfs
|
||||||
|
- fuse-common
|
||||||
|
- fuse3
|
||||||
|
- fuse3-libs
|
||||||
- git
|
- git
|
||||||
|
- httpd-tools
|
||||||
|
- jq
|
||||||
|
- lvm2
|
||||||
|
{% if GLOBALS.os == 'CentOS Stream' %}
|
||||||
|
- MariaDB-devel
|
||||||
|
{% else %}
|
||||||
|
- mariadb-devel
|
||||||
|
{% endif %}
|
||||||
|
- net-tools
|
||||||
|
- nmap-ncat
|
||||||
|
- openssl
|
||||||
|
- procps-ng
|
||||||
|
- python3-dnf-plugin-versionlock
|
||||||
- python3-docker
|
- python3-docker
|
||||||
- python3-m2crypto
|
- python3-m2crypto
|
||||||
- rsync
|
|
||||||
- python3-rich
|
|
||||||
- python3-pyyaml
|
|
||||||
- python3-watchdog
|
|
||||||
- python3-packaging
|
- python3-packaging
|
||||||
|
- python3-pyyaml
|
||||||
|
- python3-rich
|
||||||
|
- python3-watchdog
|
||||||
|
- rsync
|
||||||
|
- sqlite
|
||||||
|
- tcpdump
|
||||||
- unzip
|
- unzip
|
||||||
|
- wget
|
||||||
|
- yum-utils
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|||||||
@@ -5,7 +5,16 @@
|
|||||||
# https://securityonion.net/license; you may not use this file except in compliance with the
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
# Elastic License 2.0.
|
# Elastic License 2.0.
|
||||||
|
|
||||||
ELASTIC_AGENT_TARBALL_VERSION="8.7.1"
|
# Elastic agent is not managed by salt. Because of this we must store this base information in a
|
||||||
|
# script that accompanies the soup system. Since so-common is one of those special soup files,
|
||||||
|
# and since this same logic is required during installation, it's included in this file.
|
||||||
|
ELASTIC_AGENT_TARBALL_VERSION="8.8.2"
|
||||||
|
ELASTIC_AGENT_URL="https://repo.securityonion.net/file/so-repo/prod/2.4/elasticagent/elastic-agent_SO-$ELASTIC_AGENT_TARBALL_VERSION.tar.gz"
|
||||||
|
ELASTIC_AGENT_MD5_URL="https://repo.securityonion.net/file/so-repo/prod/2.4/elasticagent/elastic-agent_SO-$ELASTIC_AGENT_TARBALL_VERSION.md5"
|
||||||
|
ELASTIC_AGENT_FILE="/nsm/elastic-fleet/artifacts/elastic-agent_SO-$ELASTIC_AGENT_TARBALL_VERSION.tar.gz"
|
||||||
|
ELASTIC_AGENT_MD5="/nsm/elastic-fleet/artifacts/elastic-agent_SO-$ELASTIC_AGENT_TARBALL_VERSION.md5"
|
||||||
|
ELASTIC_AGENT_EXPANSION_DIR=/nsm/elastic-fleet/artifacts/beats/elastic-agent
|
||||||
|
|
||||||
DEFAULT_SALT_DIR=/opt/so/saltstack/default
|
DEFAULT_SALT_DIR=/opt/so/saltstack/default
|
||||||
DOC_BASE_URL="https://docs.securityonion.net/en/2.4"
|
DOC_BASE_URL="https://docs.securityonion.net/en/2.4"
|
||||||
|
|
||||||
@@ -161,6 +170,34 @@ disable_fastestmirror() {
|
|||||||
sed -i 's/enabled=1/enabled=0/' /etc/yum/pluginconf.d/fastestmirror.conf
|
sed -i 's/enabled=1/enabled=0/' /etc/yum/pluginconf.d/fastestmirror.conf
|
||||||
}
|
}
|
||||||
|
|
||||||
|
download_and_verify() {
|
||||||
|
source_url=$1
|
||||||
|
source_md5_url=$2
|
||||||
|
dest_file=$3
|
||||||
|
md5_file=$4
|
||||||
|
expand_dir=$5
|
||||||
|
|
||||||
|
if [[ -n "$expand_dir" ]]; then
|
||||||
|
mkdir -p "$expand_dir"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! verify_md5_checksum "$dest_file" "$md5_file"; then
|
||||||
|
retry 15 10 "curl --fail --retry 5 --retry-delay 15 -L '$source_url' --output '$dest_file'" "" ""
|
||||||
|
retry 15 10 "curl --fail --retry 5 --retry-delay 15 -L '$source_md5_url' --output '$md5_file'" "" ""
|
||||||
|
|
||||||
|
if verify_md5_checksum "$dest_file" "$md5_file"; then
|
||||||
|
echo "Source file and checksum are good."
|
||||||
|
else
|
||||||
|
echo "Unable to download and verify the source file and checksum."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -n "$expand_dir" ]]; then
|
||||||
|
tar -xf "$dest_file" -C "$expand_dir"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
elastic_license() {
|
elastic_license() {
|
||||||
|
|
||||||
read -r -d '' message <<- EOM
|
read -r -d '' message <<- EOM
|
||||||
@@ -199,19 +236,20 @@ get_random_value() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
gpg_rpm_import() {
|
gpg_rpm_import() {
|
||||||
if [[ "$OS" == "rocky" ]]; then
|
if [[ $is_oracle ]]; then
|
||||||
if [[ "$WHATWOULDYOUSAYYAHDOHERE" == "setup" ]]; then
|
if [[ "$WHATWOULDYOUSAYYAHDOHERE" == "setup" ]]; then
|
||||||
local RPMKEYSLOC="../salt/repo/client/files/rocky/keys"
|
local RPMKEYSLOC="../salt/repo/client/files/$OS/keys"
|
||||||
else
|
else
|
||||||
local RPMKEYSLOC="$UPDATE_DIR/salt/repo/client/files/rocky/keys"
|
local RPMKEYSLOC="$UPDATE_DIR/salt/repo/client/files/$OS/keys"
|
||||||
fi
|
fi
|
||||||
|
RPMKEYS=('RPM-GPG-KEY-oracle' 'RPM-GPG-KEY-EPEL-9' 'SALT-PROJECT-GPG-PUBKEY-2023.pub' 'docker.pub' 'securityonion.pub' 'MariaDB-Server-GPG-KEY')
|
||||||
RPMKEYS=('RPM-GPG-KEY-rockyofficial' 'RPM-GPG-KEY-EPEL-9' 'SALT-PROJECT-GPG-PUBKEY-2023.pub' 'docker.pub' 'securityonion.pub')
|
for RPMKEY in "${RPMKEYS[@]}"; do
|
||||||
|
|
||||||
for RPMKEY in "${RPMKEYS[@]}"; do
|
|
||||||
rpm --import $RPMKEYSLOC/$RPMKEY
|
rpm --import $RPMKEYSLOC/$RPMKEY
|
||||||
echo "Imported $RPMKEY"
|
echo "Imported $RPMKEY"
|
||||||
done
|
done
|
||||||
|
elif [[ $is_rpm ]]; then
|
||||||
|
echo "Importing the security onion GPG key"
|
||||||
|
rpm --import ../salt/repo/client/files/oracle/keys/securityonion.pub
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -224,12 +262,15 @@ init_monitor() {
|
|||||||
|
|
||||||
if [[ $MONITORNIC == "bond0" ]]; then
|
if [[ $MONITORNIC == "bond0" ]]; then
|
||||||
BIFACES=$(lookup_bond_interfaces)
|
BIFACES=$(lookup_bond_interfaces)
|
||||||
|
for i in rx tx sg tso ufo gso gro lro rx-vlan-offload tx-vlan-offload generic-receive-offload generic-segmentation-offload tcp-segmentation-offload; do
|
||||||
|
ethtool -K "$MONITORNIC" "$i" off;
|
||||||
|
done
|
||||||
else
|
else
|
||||||
BIFACES=$MONITORNIC
|
BIFACES=$MONITORNIC
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for DEVICE_IFACE in $BIFACES; do
|
for DEVICE_IFACE in $BIFACES; do
|
||||||
for i in rx tx sg tso ufo gso gro lro; do
|
for i in rx tx sg tso ufo gso gro lro rx-vlan-offload tx-vlan-offload generic-receive-offload generic-segmentation-offload tcp-segmentation-offload; do
|
||||||
ethtool -K "$DEVICE_IFACE" "$i" off;
|
ethtool -K "$DEVICE_IFACE" "$i" off;
|
||||||
done
|
done
|
||||||
ip link set dev "$DEVICE_IFACE" arp off multicast off allmulticast off promisc on
|
ip link set dev "$DEVICE_IFACE" arp off multicast off allmulticast off promisc on
|
||||||
@@ -395,19 +436,22 @@ salt_minion_count() {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
set_cron_service_name() {
|
|
||||||
if [[ "$OS" == "rocky" ]]; then
|
|
||||||
cron_service_name="crond"
|
|
||||||
else
|
|
||||||
cron_service_name="cron"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
set_os() {
|
set_os() {
|
||||||
if [ -f /etc/redhat-release ]; then
|
if [ -f /etc/redhat-release ]; then
|
||||||
OS=rocky
|
if grep -q "Rocky Linux release 9" /etc/redhat-release; then
|
||||||
|
OS=rocky
|
||||||
|
OSVER=9
|
||||||
|
is_rocky=true
|
||||||
|
elif grep -q "CentOS Stream release 9" /etc/redhat-release; then
|
||||||
|
OS=centos
|
||||||
|
OSVER=9
|
||||||
|
is_centos=true
|
||||||
|
fi
|
||||||
|
cron_service_name="crond"
|
||||||
else
|
else
|
||||||
OS=ubuntu
|
OS=ubuntu
|
||||||
|
is_ubuntu=true
|
||||||
|
cron_service_name="cron"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -416,7 +460,7 @@ set_minionid() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
set_palette() {
|
set_palette() {
|
||||||
if [ "$OS" == ubuntu ]; then
|
if [[ $is_deb ]]; then
|
||||||
update-alternatives --set newt-palette /etc/newt/palette.original
|
update-alternatives --set newt-palette /etc/newt/palette.original
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@@ -463,6 +507,11 @@ has_uppercase() {
|
|||||||
|| return 1
|
|| return 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
update_elastic_agent() {
|
||||||
|
echo "Checking if Elastic Agent update is necessary..."
|
||||||
|
download_and_verify "$ELASTIC_AGENT_URL" "$ELASTIC_AGENT_MD5_URL" "$ELASTIC_AGENT_FILE" "$ELASTIC_AGENT_MD5" "$ELASTIC_AGENT_EXPANSION_DIR"
|
||||||
|
}
|
||||||
|
|
||||||
valid_cidr() {
|
valid_cidr() {
|
||||||
# Verify there is a backslash in the string
|
# Verify there is a backslash in the string
|
||||||
echo "$1" | grep -qP "^[^/]+/[^/]+$" || return 1
|
echo "$1" | grep -qP "^[^/]+/[^/]+$" || return 1
|
||||||
@@ -616,6 +665,23 @@ valid_username() {
|
|||||||
echo "$user" | grep -qP '^[a-z_]([a-z0-9_-]{0,31}|[a-z0-9_-]{0,30}\$)$' && return 0 || return 1
|
echo "$user" | grep -qP '^[a-z_]([a-z0-9_-]{0,31}|[a-z0-9_-]{0,30}\$)$' && return 0 || return 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
verify_md5_checksum() {
|
||||||
|
data_file=$1
|
||||||
|
md5_file=${2:-${data_file}.md5}
|
||||||
|
|
||||||
|
if [[ ! -f "$dest_file" || ! -f "$md5_file" ]]; then
|
||||||
|
return 2
|
||||||
|
fi
|
||||||
|
|
||||||
|
SOURCEHASH=$(md5sum "$data_file" | awk '{ print $1 }')
|
||||||
|
HASH=$(cat "$md5_file")
|
||||||
|
|
||||||
|
if [[ "$HASH" == "$SOURCEHASH" ]]; then
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
wait_for_web_response() {
|
wait_for_web_response() {
|
||||||
url=$1
|
url=$1
|
||||||
expected=$2
|
expected=$2
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ def output(options, console, code, data):
|
|||||||
def check_container_status(options, console):
|
def check_container_status(options, console):
|
||||||
code = 0
|
code = 0
|
||||||
cli = "docker"
|
cli = "docker"
|
||||||
proc = subprocess.run([cli, 'ps', '--format', '{{json .}}'], stdout=subprocess.PIPE, encoding="utf-8")
|
proc = subprocess.run([cli, 'ps', '--format', 'json'], stdout=subprocess.PIPE, encoding="utf-8")
|
||||||
if proc.returncode != 0:
|
if proc.returncode != 0:
|
||||||
fail("Container system error; unable to obtain container process statuses")
|
fail("Container system error; unable to obtain container process statuses")
|
||||||
|
|
||||||
|
|||||||
@@ -5,15 +5,15 @@
|
|||||||
# https://securityonion.net/license; you may not use this file except in compliance with the
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
# Elastic License 2.0.
|
# Elastic License 2.0.
|
||||||
|
|
||||||
|
source /usr/sbin/so-common
|
||||||
|
doc_desktop_url="$DOC_BASE_URL/desktop.html"
|
||||||
|
|
||||||
{# we only want the script to install the desktop if it is Rocky -#}
|
{# we only want the script to install the desktop if it is OEL -#}
|
||||||
{% if grains.os == 'Rocky' -%}
|
{% if grains.os == 'OEL' -%}
|
||||||
{# if this is a manager -#}
|
{# if this is a manager -#}
|
||||||
{% if grains.master == grains.id.split('_')|first -%}
|
{% if grains.master == grains.id.split('_')|first -%}
|
||||||
|
|
||||||
source /usr/sbin/so-common
|
pillar_file="/opt/so/saltstack/local/pillar/minions/adv_{{grains.id}}.sls"
|
||||||
doc_desktop_url="$DOC_BASE_URL/desktop.html"
|
|
||||||
pillar_file="/opt/so/saltstack/local/pillar/minions/{{grains.id}}.sls"
|
|
||||||
|
|
||||||
if [ -f "$pillar_file" ]; then
|
if [ -f "$pillar_file" ]; then
|
||||||
if ! grep -q "^desktop:$" "$pillar_file"; then
|
if ! grep -q "^desktop:$" "$pillar_file"; then
|
||||||
@@ -65,7 +65,7 @@ if [ -f "$pillar_file" ]; then
|
|||||||
fi
|
fi
|
||||||
else # desktop is already added
|
else # desktop is already added
|
||||||
echo "The desktop pillar already exists in $pillar_file."
|
echo "The desktop pillar already exists in $pillar_file."
|
||||||
echo "To enable/disable the gui, set 'desktop:gui:enabled' to true or false in $pillar_file."
|
echo "To enable/disable the gui, set 'desktop:gui:enabled' to true or false in $pillar_file. Alternatively, this can be set in the SOC UI under advanced."
|
||||||
echo "Additional documentation can be found at $doc_desktop_url."
|
echo "Additional documentation can be found at $doc_desktop_url."
|
||||||
fi
|
fi
|
||||||
else # if the pillar file doesn't exist
|
else # if the pillar file doesn't exist
|
||||||
@@ -75,17 +75,22 @@ fi
|
|||||||
{#- if this is not a manager #}
|
{#- if this is not a manager #}
|
||||||
{% else -%}
|
{% else -%}
|
||||||
|
|
||||||
echo "Since this is not a manager, the pillar values to enable Security Onion Desktop must be set manually. Please view the documentation at $doc_desktop_url."
|
echo "Since this is not a manager, the pillar values to enable Security Onion Desktop must be set manually. This can be enabled in the SOC UI under advanced by adding the following:"
|
||||||
|
echo "desktop:"
|
||||||
|
echo " gui:"
|
||||||
|
echo " enabled: true"
|
||||||
|
echo ""
|
||||||
|
echo "Please view the documentation at $doc_desktop_url."
|
||||||
|
|
||||||
{#- endif if this is a manager #}
|
{#- endif if this is a manager #}
|
||||||
{% endif -%}
|
{% endif -%}
|
||||||
|
|
||||||
{#- if not Rocky #}
|
{#- if not OEL #}
|
||||||
{%- else %}
|
{%- else %}
|
||||||
|
|
||||||
echo "The Security Onion Desktop can only be installed on Rocky Linux. Please view the documentation at $doc_desktop_url."
|
echo "The Security Onion Desktop can only be installed on Oracle Linux. Please view the documentation at $doc_desktop_url."
|
||||||
|
|
||||||
{#- endif grains.os == Rocky #}
|
{#- endif grains.os == OEL #}
|
||||||
{% endif -%}
|
{% endif -%}
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
|||||||
@@ -27,6 +27,8 @@ Imports one or more evtx files into Security Onion. The evtx files will be analy
|
|||||||
Options:
|
Options:
|
||||||
--json Outputs summary in JSON format. Implies --quiet.
|
--json Outputs summary in JSON format. Implies --quiet.
|
||||||
--quiet Silences progress information to stdout.
|
--quiet Silences progress information to stdout.
|
||||||
|
--shift Adds a time shift. Accepts a single argument that is intended to be the date of the last record, and shifts the dates of the previous records accordingly.
|
||||||
|
Ex. sudo so-import-evtx --shift "2023-08-01 01:01:01" example.evtx
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -44,6 +46,10 @@ while [[ $# -gt 0 ]]; do
|
|||||||
--quiet)
|
--quiet)
|
||||||
quiet=1
|
quiet=1
|
||||||
;;
|
;;
|
||||||
|
--shift)
|
||||||
|
SHIFTDATE=$1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
-*)
|
-*)
|
||||||
echo "Encountered unexpected parameter: $param"
|
echo "Encountered unexpected parameter: $param"
|
||||||
usage
|
usage
|
||||||
@@ -68,8 +74,10 @@ function status {
|
|||||||
function evtx2es() {
|
function evtx2es() {
|
||||||
EVTX=$1
|
EVTX=$1
|
||||||
HASH=$2
|
HASH=$2
|
||||||
|
SHIFTDATE=$3
|
||||||
|
|
||||||
docker run --rm \
|
docker run --rm \
|
||||||
|
-e "SHIFTTS=$SHIFTDATE" \
|
||||||
-v "$EVTX:/tmp/data.evtx" \
|
-v "$EVTX:/tmp/data.evtx" \
|
||||||
-v "/nsm/import/$HASH/evtx/:/tmp/evtx/" \
|
-v "/nsm/import/$HASH/evtx/:/tmp/evtx/" \
|
||||||
-v "/nsm/import/evtx-end_newest:/tmp/newest" \
|
-v "/nsm/import/evtx-end_newest:/tmp/newest" \
|
||||||
@@ -113,7 +121,9 @@ echo $END_NEWEST > /nsm/import/evtx-end_newest
|
|||||||
for EVTX in $INPUT_FILES; do
|
for EVTX in $INPUT_FILES; do
|
||||||
EVTX=$(/usr/bin/realpath "$EVTX")
|
EVTX=$(/usr/bin/realpath "$EVTX")
|
||||||
status "Processing Import: ${EVTX}"
|
status "Processing Import: ${EVTX}"
|
||||||
|
if ! [ -z "$SHIFTDATE" ]; then
|
||||||
|
status "- timeshifting logs to end date of $SHIFTDATE"
|
||||||
|
fi
|
||||||
# generate a unique hash to assist with dedupe checks
|
# generate a unique hash to assist with dedupe checks
|
||||||
HASH=$(md5sum "${EVTX}" | awk '{ print $1 }')
|
HASH=$(md5sum "${EVTX}" | awk '{ print $1 }')
|
||||||
HASH_DIR=/nsm/import/${HASH}
|
HASH_DIR=/nsm/import/${HASH}
|
||||||
@@ -136,7 +146,7 @@ for EVTX in $INPUT_FILES; do
|
|||||||
|
|
||||||
# import evtx and write them to import ingest pipeline
|
# import evtx and write them to import ingest pipeline
|
||||||
status "- importing logs to Elasticsearch..."
|
status "- importing logs to Elasticsearch..."
|
||||||
evtx2es "${EVTX}" $HASH
|
evtx2es "${EVTX}" $HASH "$SHIFTDATE"
|
||||||
if [[ $? -ne 0 ]]; then
|
if [[ $? -ne 0 ]]; then
|
||||||
INVALID_EVTXS_COUNT=$((INVALID_EVTXS_COUNT + 1))
|
INVALID_EVTXS_COUNT=$((INVALID_EVTXS_COUNT + 1))
|
||||||
status "- WARNING: This evtx file may not have fully imported successfully"
|
status "- WARNING: This evtx file may not have fully imported successfully"
|
||||||
@@ -222,4 +232,4 @@ if [[ $json -eq 1 ]]; then
|
|||||||
}'''
|
}'''
|
||||||
fi
|
fi
|
||||||
|
|
||||||
exit $RESULT
|
exit $RESULT
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||||
# https://securityonion.net/license; you may not use this file except in compliance with the
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
# Elastic License 2.0.
|
# Elastic License 2.0.
|
||||||
|
|
||||||
@@ -9,25 +9,26 @@
|
|||||||
|
|
||||||
. /usr/sbin/so-common
|
. /usr/sbin/so-common
|
||||||
|
|
||||||
appliance_check() {
|
{%- if salt['grains.get']('sosmodel', '') %}
|
||||||
{%- if salt['grains.get']('sosmodel', '') %}
|
{%- set model = salt['grains.get']('sosmodel') %}
|
||||||
APPLIANCE=1
|
model={{ model }}
|
||||||
{%- if grains['sosmodel'] in ['SO2AMI01', 'SO2GCI01', 'SO2AZI01'] %}
|
# Don't need cloud images to use this
|
||||||
exit 0
|
if [[ $model =~ ^(SO2AMI01|SO2AZI01|SO2GCI01)$ ]]; then
|
||||||
{%- endif %}
|
exit 0
|
||||||
DUDEYOUGOTADELL=$(dmidecode |grep Dell)
|
fi
|
||||||
if [[ -n $DUDEYOUGOTADELL ]]; then
|
{%- else %}
|
||||||
APPTYPE=dell
|
echo "This is not an appliance"
|
||||||
else
|
exit 0
|
||||||
APPTYPE=sm
|
{%- endif %}
|
||||||
fi
|
if [[ $model =~ ^(SOS10K|SOS500|SOS1000|SOS1000F|SOS4000|SOSSN7200|SOSSNNV|SOSMN)$ ]]; then
|
||||||
mkdir -p /opt/so/log/raid
|
is_bossraid=true
|
||||||
|
fi
|
||||||
{%- else %}
|
if [[ $model =~ ^(SOSSNNV|SOSMN)$ ]]; then
|
||||||
echo "This is not an appliance"
|
is_swraid=true
|
||||||
exit 0
|
fi
|
||||||
{%- endif %}
|
if [[ $model =~ ^(SOS10K|SOS500|SOS1000|SOS1000F|SOS4000|SOSSN7200)$ ]]; then
|
||||||
}
|
is_hwraid=true
|
||||||
|
fi
|
||||||
|
|
||||||
check_nsm_raid() {
|
check_nsm_raid() {
|
||||||
PERCCLI=$(/opt/raidtools/perccli/perccli64 /c0/v0 show|grep RAID|grep Optl)
|
PERCCLI=$(/opt/raidtools/perccli/perccli64 /c0/v0 show|grep RAID|grep Optl)
|
||||||
@@ -49,61 +50,44 @@ check_nsm_raid() {
|
|||||||
check_boss_raid() {
|
check_boss_raid() {
|
||||||
MVCLI=$(/usr/local/bin/mvcli info -o vd |grep status |grep functional)
|
MVCLI=$(/usr/local/bin/mvcli info -o vd |grep status |grep functional)
|
||||||
|
|
||||||
if [[ -n $DUDEYOUGOTADELL ]]; then
|
if [[ -n $MVCLI ]]; then
|
||||||
if [[ -n $MVCLI ]]; then
|
BOSSRAID=0
|
||||||
BOSSRAID=0
|
else
|
||||||
else
|
BOSSRAID=1
|
||||||
BOSSRAID=1
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
check_software_raid() {
|
check_software_raid() {
|
||||||
if [[ -n $DUDEYOUGOTADELL ]]; then
|
SWRC=$(grep "_" /proc/mdstat)
|
||||||
SWRC=$(grep "_" /proc/mdstat)
|
if [[ -n $SWRC ]]; then
|
||||||
|
# RAID is failed in some way
|
||||||
if [[ -n $SWRC ]]; then
|
SWRAID=1
|
||||||
# RAID is failed in some way
|
else
|
||||||
SWRAID=1
|
SWRAID=0
|
||||||
else
|
|
||||||
SWRAID=0
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# This script checks raid status if you use SO appliances
|
# Set everything to 0
|
||||||
|
SWRAID=0
|
||||||
|
BOSSRAID=0
|
||||||
|
HWRAID=0
|
||||||
|
|
||||||
# See if this is an appliance
|
if [[ $is_hwraid ]]; then
|
||||||
|
check_nsm_raid
|
||||||
appliance_check
|
fi
|
||||||
check_nsm_raid
|
if [[ $is_bossraid ]]; then
|
||||||
check_boss_raid
|
check_boss_raid
|
||||||
{%- if salt['grains.get']('sosmodel', '') %}
|
fi
|
||||||
{%- if grains['sosmodel'] in ['SOSMN', 'SOSSNNV'] %}
|
if [[ $is_swraid ]]; then
|
||||||
check_software_raid
|
check_software_raid
|
||||||
{%- endif %}
|
|
||||||
{%- endif %}
|
|
||||||
|
|
||||||
if [[ -n $SWRAID ]]; then
|
|
||||||
if [[ $SWRAID == '0' && $BOSSRAID == '0' ]]; then
|
|
||||||
RAIDSTATUS=0
|
|
||||||
else
|
|
||||||
RAIDSTATUS=1
|
|
||||||
fi
|
|
||||||
elif [[ -n $DUDEYOUGOTADELL ]]; then
|
|
||||||
if [[ $BOSSRAID == '0' && $HWRAID == '0' ]]; then
|
|
||||||
RAIDSTATUS=0
|
|
||||||
else
|
|
||||||
RAIDSTATUS=1
|
|
||||||
fi
|
|
||||||
elif [[ "$APPTYPE" == 'sm' ]]; then
|
|
||||||
if [[ -n "$HWRAID" ]]; then
|
|
||||||
RAIDSTATUS=0
|
|
||||||
else
|
|
||||||
RAIDSTATUS=1
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "nsmraid=$RAIDSTATUS" > /opt/so/log/raid/status.log
|
sum=$(($SWRAID + $BOSSRAID + $HWRAID))
|
||||||
|
|
||||||
|
if [[ $sum == "0" ]]; then
|
||||||
|
RAIDSTATUS=0
|
||||||
|
else
|
||||||
|
RAIDSTATUS=1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "nsmraid=$RAIDSTATUS" > /opt/so/log/raid/status.log
|
||||||
8
salt/desktop/files/00-background
Normal file
8
salt/desktop/files/00-background
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
# Specify the dconf path
|
||||||
|
[org/gnome/desktop/background]
|
||||||
|
|
||||||
|
# Specify the path to the desktop background image file
|
||||||
|
picture-uri='file:///usr/local/share/backgrounds/so-wallpaper.jpg'
|
||||||
|
|
||||||
|
# Specify one of the rendering options for the background image:
|
||||||
|
picture-options='zoom'
|
||||||
7
salt/desktop/files/session.jinja
Normal file
7
salt/desktop/files/session.jinja
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# This file is managed by Salt in the desktop.xwindows state
|
||||||
|
# It will not be overwritten if it already exists
|
||||||
|
|
||||||
|
[User]
|
||||||
|
Session=gnome-classic
|
||||||
|
Icon=/home/{{USERNAME}}/.face
|
||||||
|
SystemAccount=false
|
||||||
@@ -1,170 +1,280 @@
|
|||||||
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
||||||
|
|
||||||
{# we only want this state to run it is CentOS #}
|
{# we only want this state to run it is CentOS #}
|
||||||
{% if GLOBALS.os == 'Rocky' %}
|
{% if GLOBALS.os == 'OEL' %}
|
||||||
|
|
||||||
|
|
||||||
desktop_packages:
|
desktop_packages:
|
||||||
pkg.installed:
|
pkg.installed:
|
||||||
- pkgs:
|
- pkgs:
|
||||||
|
- ModemManager
|
||||||
|
- ModemManager-glib
|
||||||
- NetworkManager
|
- NetworkManager
|
||||||
- NetworkManager-adsl
|
- NetworkManager-adsl
|
||||||
- NetworkManager-bluetooth
|
- NetworkManager-bluetooth
|
||||||
- NetworkManager-l2tp-gnome
|
- NetworkManager-config-server
|
||||||
- NetworkManager-libreswan-gnome
|
- NetworkManager-libnm
|
||||||
- NetworkManager-openconnect-gnome
|
|
||||||
- NetworkManager-openvpn-gnome
|
|
||||||
- NetworkManager-ppp
|
|
||||||
- NetworkManager-pptp-gnome
|
|
||||||
- NetworkManager-team
|
- NetworkManager-team
|
||||||
- NetworkManager-tui
|
- NetworkManager-tui
|
||||||
- NetworkManager-wifi
|
- NetworkManager-wifi
|
||||||
- NetworkManager-wwan
|
- NetworkManager-wwan
|
||||||
|
- PackageKit
|
||||||
|
- PackageKit-command-not-found
|
||||||
|
- PackageKit-glib
|
||||||
- PackageKit-gstreamer-plugin
|
- PackageKit-gstreamer-plugin
|
||||||
- aajohan-comfortaa-fonts
|
- PackageKit-gtk3-module
|
||||||
- abattis-cantarell-fonts
|
|
||||||
- acl
|
|
||||||
- alsa-ucm
|
|
||||||
- alsa-utils
|
|
||||||
- anaconda
|
|
||||||
- anaconda-install-env-deps
|
|
||||||
- anaconda-live
|
|
||||||
- at
|
|
||||||
- attr
|
|
||||||
- audit
|
- audit
|
||||||
|
- audit-libs
|
||||||
- authselect
|
- authselect
|
||||||
|
- authselect-libs
|
||||||
|
- avahi
|
||||||
|
- avahi-glib
|
||||||
|
- avahi-libs
|
||||||
|
- baobab
|
||||||
- basesystem
|
- basesystem
|
||||||
- bash
|
|
||||||
- bash-completion
|
|
||||||
- bc
|
- bc
|
||||||
- blktrace
|
- bcache-tools
|
||||||
- bluez
|
- bluez
|
||||||
|
- bluez-libs
|
||||||
|
- bluez-obexd
|
||||||
- bolt
|
- bolt
|
||||||
- bpftool
|
|
||||||
- bzip2
|
- bzip2
|
||||||
|
- bzip2-libs
|
||||||
|
- c-ares
|
||||||
|
- ca-certificates
|
||||||
|
- cairo
|
||||||
|
- cairo-gobject
|
||||||
|
- cairomm
|
||||||
|
- checkpolicy
|
||||||
- chkconfig
|
- chkconfig
|
||||||
|
- chrome-gnome-shell
|
||||||
- chromium
|
- chromium
|
||||||
- chrony
|
- clutter
|
||||||
- cinnamon
|
- clutter-gst3
|
||||||
- cinnamon-control-center
|
- clutter-gtk
|
||||||
- cinnamon-screensaver
|
- cogl
|
||||||
- cockpit
|
- color-filesystem
|
||||||
- coreutils
|
- colord
|
||||||
- cpio
|
- colord-gtk
|
||||||
- cronie
|
- colord-libs
|
||||||
- crontabs
|
- conmon
|
||||||
- crypto-policies
|
- cups
|
||||||
- crypto-policies-scripts
|
- cups-client
|
||||||
- cryptsetup
|
- cups-filesystem
|
||||||
- curl
|
- cups-filters
|
||||||
- cyrus-sasl-plain
|
- cups-filters-libs
|
||||||
- dbus
|
- cups-ipptool
|
||||||
|
- cups-libs
|
||||||
|
- cups-pk-helper
|
||||||
|
- dconf
|
||||||
- dejavu-sans-fonts
|
- dejavu-sans-fonts
|
||||||
- dejavu-sans-mono-fonts
|
- dejavu-sans-mono-fonts
|
||||||
- dejavu-serif-fonts
|
- dejavu-serif-fonts
|
||||||
- dnf
|
- desktop-file-utils
|
||||||
- dnf-plugins-core
|
|
||||||
- dos2unix
|
|
||||||
- dosfstools
|
|
||||||
- dracut-config-rescue
|
|
||||||
- dracut-live
|
|
||||||
- dsniff
|
- dsniff
|
||||||
- e2fsprogs
|
|
||||||
- ed
|
|
||||||
- efi-filesystem
|
|
||||||
- efibootmgr
|
|
||||||
- efivar-libs
|
|
||||||
- eom
|
|
||||||
- ethtool
|
- ethtool
|
||||||
- f36-backgrounds-extras-gnome
|
- evolution-data-server
|
||||||
- f36-backgrounds-gnome
|
- evolution-data-server-langpacks
|
||||||
- f37-backgrounds-extras-gnome
|
|
||||||
- f37-backgrounds-gnome
|
|
||||||
- file
|
- file
|
||||||
- filesystem
|
- flac-libs
|
||||||
- firewall-config
|
- flashrom
|
||||||
- firewalld
|
- flatpak
|
||||||
- fprintd-pam
|
- flatpak-libs
|
||||||
- git
|
- flatpak-selinux
|
||||||
- glibc
|
- flatpak-session-helper
|
||||||
- glibc-all-langpacks
|
- fontconfig
|
||||||
|
- fonts-filesystem
|
||||||
|
- foomatic
|
||||||
|
- foomatic-db
|
||||||
|
- foomatic-db-filesystem
|
||||||
|
- foomatic-db-ppds
|
||||||
|
- freetype
|
||||||
|
- fuse
|
||||||
|
- fuse-common
|
||||||
|
- fuse-libs
|
||||||
|
- fuse-overlayfs
|
||||||
|
- fuse3
|
||||||
|
- fuse3-libs
|
||||||
|
- fwupd
|
||||||
|
- fwupd-plugin-flashrom
|
||||||
|
- gcr
|
||||||
|
- gcr-base
|
||||||
|
- gd
|
||||||
|
- gdbm-libs
|
||||||
|
- gdisk
|
||||||
|
- gdk-pixbuf2
|
||||||
|
- gdk-pixbuf2-modules
|
||||||
|
- gdm
|
||||||
|
- gedit
|
||||||
|
- geoclue2
|
||||||
|
- geoclue2-libs
|
||||||
|
- geocode-glib
|
||||||
|
- gettext
|
||||||
|
- gettext-libs
|
||||||
|
- ghostscript
|
||||||
|
- ghostscript-tools-fonts
|
||||||
|
- ghostscript-tools-printing
|
||||||
|
- giflib
|
||||||
|
- glx-utils
|
||||||
|
- gmp
|
||||||
|
- gnome-autoar
|
||||||
|
- gnome-bluetooth
|
||||||
|
- gnome-bluetooth-libs
|
||||||
- gnome-calculator
|
- gnome-calculator
|
||||||
|
- gnome-characters
|
||||||
|
- gnome-classic-session
|
||||||
|
- gnome-color-manager
|
||||||
|
- gnome-control-center
|
||||||
|
- gnome-control-center-filesystem
|
||||||
|
- gnome-desktop3
|
||||||
- gnome-disk-utility
|
- gnome-disk-utility
|
||||||
|
- gnome-font-viewer
|
||||||
|
- gnome-initial-setup
|
||||||
|
- gnome-keyring
|
||||||
|
- gnome-keyring-pam
|
||||||
|
- gnome-logs
|
||||||
|
- gnome-menus
|
||||||
|
- gnome-online-accounts
|
||||||
|
- gnome-remote-desktop
|
||||||
- gnome-screenshot
|
- gnome-screenshot
|
||||||
|
- gnome-session
|
||||||
|
- gnome-session-wayland-session
|
||||||
|
- gnome-session-xsession
|
||||||
|
- gnome-settings-daemon
|
||||||
|
- gnome-shell
|
||||||
|
- gnome-shell-extension-apps-menu
|
||||||
|
- gnome-shell-extension-background-logo
|
||||||
|
- gnome-shell-extension-common
|
||||||
|
- gnome-shell-extension-desktop-icons
|
||||||
|
- gnome-shell-extension-launch-new-instance
|
||||||
|
- gnome-shell-extension-places-menu
|
||||||
|
- gnome-shell-extension-window-list
|
||||||
|
- gnome-software
|
||||||
- gnome-system-monitor
|
- gnome-system-monitor
|
||||||
- gnome-terminal
|
- gnome-terminal
|
||||||
- gnupg2
|
- gnome-terminal-nautilus
|
||||||
|
- gnome-tour
|
||||||
|
- gnome-user-docs
|
||||||
|
- gnome-video-effects
|
||||||
|
- gobject-introspection
|
||||||
|
- gom
|
||||||
|
- google-droid-sans-fonts
|
||||||
|
- google-noto-cjk-fonts-common
|
||||||
- google-noto-emoji-color-fonts
|
- google-noto-emoji-color-fonts
|
||||||
|
- google-noto-fonts-common
|
||||||
- google-noto-sans-cjk-ttc-fonts
|
- google-noto-sans-cjk-ttc-fonts
|
||||||
- google-noto-sans-gurmukhi-fonts
|
- google-noto-sans-gurmukhi-fonts
|
||||||
- google-noto-sans-sinhala-vf-fonts
|
- google-noto-sans-sinhala-vf-fonts
|
||||||
- google-noto-serif-cjk-ttc-fonts
|
- google-noto-serif-cjk-ttc-fonts
|
||||||
- grub2-common
|
- gpgme
|
||||||
- grub2-pc-modules
|
- gpm-libs
|
||||||
- grub2-tools
|
- graphene
|
||||||
- grub2-tools-efi
|
- graphite2
|
||||||
- grub2-tools-extra
|
- gsettings-desktop-schemas
|
||||||
- grub2-tools-minimal
|
- gsm
|
||||||
- grubby
|
- gsound
|
||||||
|
- gspell
|
||||||
|
- gstreamer1
|
||||||
- gstreamer1-plugins-bad-free
|
- gstreamer1-plugins-bad-free
|
||||||
|
- gstreamer1-plugins-base
|
||||||
- gstreamer1-plugins-good
|
- gstreamer1-plugins-good
|
||||||
|
- gstreamer1-plugins-good-gtk
|
||||||
- gstreamer1-plugins-ugly-free
|
- gstreamer1-plugins-ugly-free
|
||||||
|
- gtk-update-icon-cache
|
||||||
|
- gtk2
|
||||||
|
- gtk3
|
||||||
|
- gtk4
|
||||||
|
- gtkmm30
|
||||||
|
- gtksourceview4
|
||||||
|
- gutenprint
|
||||||
|
- gutenprint-cups
|
||||||
|
- gutenprint-doc
|
||||||
|
- gutenprint-libs
|
||||||
|
- gvfs
|
||||||
|
- gvfs-client
|
||||||
|
- gvfs-fuse
|
||||||
|
- gvfs-goa
|
||||||
- gvfs-gphoto2
|
- gvfs-gphoto2
|
||||||
- gvfs-mtp
|
- gvfs-mtp
|
||||||
- gvfs-smb
|
- gvfs-smb
|
||||||
- hostname
|
- gzip
|
||||||
- hyperv-daemons
|
- harfbuzz
|
||||||
- ibus-anthy
|
- harfbuzz-icu
|
||||||
- ibus-hangul
|
- hdparm
|
||||||
- ibus-libpinyin
|
- hicolor-icon-theme
|
||||||
- ibus-libzhuyin
|
- highcontrast-icon-theme
|
||||||
- ibus-m17n
|
- hplip-common
|
||||||
- ibus-typing-booster
|
- hplip-libs
|
||||||
- imsettings-systemd
|
- hunspell
|
||||||
- initial-setup-gui
|
- hunspell-en
|
||||||
- initscripts
|
- hunspell-en-GB
|
||||||
|
- hunspell-en-US
|
||||||
|
- hunspell-filesystem
|
||||||
|
- hyphen
|
||||||
|
- ibus
|
||||||
|
- ibus-gtk3
|
||||||
|
- ibus-libs
|
||||||
|
- ibus-setup
|
||||||
|
- iio-sensor-proxy
|
||||||
|
- ima-evm-utils
|
||||||
|
- inih
|
||||||
- initscripts-rename-device
|
- initscripts-rename-device
|
||||||
- iproute
|
- initscripts-service
|
||||||
- iproute-tc
|
- iso-codes
|
||||||
- iprutils
|
- jansson
|
||||||
- iputils
|
- jbig2dec-libs
|
||||||
- irqbalance
|
- jbigkit-libs
|
||||||
- iwl100-firmware
|
|
||||||
- iwl1000-firmware
|
|
||||||
- iwl105-firmware
|
|
||||||
- iwl135-firmware
|
|
||||||
- iwl2000-firmware
|
|
||||||
- iwl2030-firmware
|
|
||||||
- iwl3160-firmware
|
|
||||||
- iwl5000-firmware
|
|
||||||
- iwl5150-firmware
|
|
||||||
- iwl6000g2a-firmware
|
|
||||||
- iwl6000g2b-firmware
|
|
||||||
- iwl6050-firmware
|
|
||||||
- iwl7260-firmware
|
|
||||||
- jomolhari-fonts
|
- jomolhari-fonts
|
||||||
|
- jose
|
||||||
|
- jq
|
||||||
|
- json-c
|
||||||
|
- json-glib
|
||||||
- julietaula-montserrat-fonts
|
- julietaula-montserrat-fonts
|
||||||
- kbd
|
- kbd
|
||||||
- kernel
|
- kbd-misc
|
||||||
- kernel-modules
|
|
||||||
- kernel-modules-extra
|
|
||||||
- kernel-tools
|
|
||||||
- kexec-tools
|
|
||||||
- khmer-os-system-fonts
|
- khmer-os-system-fonts
|
||||||
- kmod-kvdo
|
- langpacks-core-en
|
||||||
- kpatch
|
- langpacks-core-font-en
|
||||||
- kpatch-dnf
|
- langpacks-en
|
||||||
- ledmon
|
- lcms2
|
||||||
- less
|
- libICE
|
||||||
|
- libSM
|
||||||
|
- libX11
|
||||||
|
- libX11-common
|
||||||
|
- libX11-xcb
|
||||||
|
- libXau
|
||||||
|
- libXcomposite
|
||||||
|
- libXcursor
|
||||||
|
- libXdamage
|
||||||
|
- libXdmcp
|
||||||
|
- libXext
|
||||||
|
- libXfixes
|
||||||
|
- libXfont2
|
||||||
|
- libXft
|
||||||
|
- libXi
|
||||||
|
- libXinerama
|
||||||
|
- libXmu
|
||||||
|
- libXpm
|
||||||
|
- libXrandr
|
||||||
|
- libXrender
|
||||||
|
- libXres
|
||||||
|
- libXt
|
||||||
|
- libXtst
|
||||||
|
- libXv
|
||||||
|
- libXxf86dga
|
||||||
|
- libXxf86vm
|
||||||
|
- libappstream-glib
|
||||||
|
- liberation-fonts-common
|
||||||
- liberation-mono-fonts
|
- liberation-mono-fonts
|
||||||
- liberation-sans-fonts
|
- liberation-sans-fonts
|
||||||
- liberation-serif-fonts
|
- liberation-serif-fonts
|
||||||
- libertas-sd8787-firmware
|
- libertas-sd8787-firmware
|
||||||
- libstoragemgmt
|
- libglvnd-gles
|
||||||
- libsysfs
|
- libglvnd-glx
|
||||||
- lightdm
|
- libglvnd-opengl
|
||||||
- linux-firmware
|
- libgnomekbd
|
||||||
- logrotate
|
- libgomp
|
||||||
|
- libgphoto2
|
||||||
|
- lockdev
|
||||||
- lohit-assamese-fonts
|
- lohit-assamese-fonts
|
||||||
- lohit-bengali-fonts
|
- lohit-bengali-fonts
|
||||||
- lohit-devanagari-fonts
|
- lohit-devanagari-fonts
|
||||||
@@ -175,136 +285,160 @@ desktop_packages:
|
|||||||
- lohit-telugu-fonts
|
- lohit-telugu-fonts
|
||||||
- lshw
|
- lshw
|
||||||
- lsof
|
- lsof
|
||||||
- lsscsi
|
- mesa-dri-drivers
|
||||||
- lvm2
|
- mesa-filesystem
|
||||||
- mailcap
|
- mesa-libEGL
|
||||||
- man-db
|
- mesa-libGL
|
||||||
- man-pages
|
- mesa-libgbm
|
||||||
- mcelog
|
- mesa-libglapi
|
||||||
- mdadm
|
- mesa-libxatracker
|
||||||
- memtest86+
|
- mesa-vulkan-drivers
|
||||||
- metacity
|
|
||||||
- microcode_ctl
|
- microcode_ctl
|
||||||
- mlocate
|
- mobile-broadband-provider-info
|
||||||
|
- mono-devel
|
||||||
|
- mpfr
|
||||||
|
- mpg123-libs
|
||||||
|
- mtdev
|
||||||
- mtr
|
- mtr
|
||||||
- nano
|
- nautilus
|
||||||
- ncurses
|
- nautilus-extensions
|
||||||
- nemo-fileroller
|
|
||||||
- nemo-image-converter
|
|
||||||
- nemo-preview
|
|
||||||
- net-tools
|
- net-tools
|
||||||
- netronome-firmware
|
|
||||||
- ngrep
|
|
||||||
- nm-connection-editor
|
|
||||||
- nmap-ncat
|
|
||||||
- nvme-cli
|
- nvme-cli
|
||||||
- open-vm-tools-desktop
|
- open-vm-tools-desktop
|
||||||
- openssh-clients
|
- oracle-backgrounds
|
||||||
- openssh-server
|
- oracle-indexhtml
|
||||||
- p11-kit
|
- oracle-logos
|
||||||
- paktype-naskh-basic-fonts
|
- pcaudiolib
|
||||||
- parole
|
|
||||||
- parted
|
|
||||||
- passwd
|
|
||||||
- pciutils
|
- pciutils
|
||||||
|
- pinentry
|
||||||
|
- pinentry-gnome3
|
||||||
- pinfo
|
- pinfo
|
||||||
- pipewire
|
- pipewire
|
||||||
- pipewire-alsa
|
- pipewire-alsa
|
||||||
- pipewire-gstreamer
|
- pipewire-gstreamer
|
||||||
- pipewire-jack-audio-connection-kit
|
- pipewire-jack-audio-connection-kit
|
||||||
|
- pipewire-libs
|
||||||
- pipewire-pulseaudio
|
- pipewire-pulseaudio
|
||||||
- pipewire-utils
|
- pipewire-utils
|
||||||
|
- pixman
|
||||||
- plymouth
|
- plymouth
|
||||||
|
- plymouth-core-libs
|
||||||
|
- plymouth-graphics-libs
|
||||||
|
- plymouth-plugin-label
|
||||||
|
- plymouth-plugin-two-step
|
||||||
|
- plymouth-scripts
|
||||||
|
- plymouth-system-theme
|
||||||
|
- plymouth-theme-spinner
|
||||||
- policycoreutils
|
- policycoreutils
|
||||||
- powerline
|
- policycoreutils-python-utils
|
||||||
- ppp
|
|
||||||
- prefixdevname
|
|
||||||
- procps-ng
|
|
||||||
- psacct
|
|
||||||
- pt-sans-fonts
|
- pt-sans-fonts
|
||||||
- python3-libselinux
|
- pulseaudio-libs
|
||||||
- python3-scapy
|
- pulseaudio-libs-glib2
|
||||||
- qemu-guest-agent
|
- pulseaudio-utils
|
||||||
- quota
|
- sane-airscan
|
||||||
- realmd
|
- sane-backends
|
||||||
- redshift-gtk
|
- sane-backends-drivers-cameras
|
||||||
- rocky-backgrounds
|
|
||||||
- rocky-release
|
|
||||||
- rootfiles
|
|
||||||
- rpm
|
|
||||||
- rpm-plugin-audit
|
|
||||||
- rsync
|
|
||||||
- rsyslog
|
|
||||||
- rsyslog-gnutls
|
|
||||||
- rsyslog-gssapi
|
|
||||||
- rsyslog-relp
|
|
||||||
- salt-minion
|
|
||||||
- sane-backends-drivers-scanners
|
- sane-backends-drivers-scanners
|
||||||
- selinux-policy-targeted
|
- sane-backends-libs
|
||||||
- setroubleshoot
|
|
||||||
- setup
|
|
||||||
- sg3_utils
|
|
||||||
- sg3_utils-libs
|
|
||||||
- shadow-utils
|
|
||||||
- sil-abyssinica-fonts
|
- sil-abyssinica-fonts
|
||||||
- sil-nuosu-fonts
|
- sil-nuosu-fonts
|
||||||
- sil-padauk-fonts
|
- sil-padauk-fonts
|
||||||
- slick-greeter
|
|
||||||
- slick-greeter-cinnamon
|
|
||||||
- smartmontools
|
- smartmontools
|
||||||
- smc-meera-fonts
|
- smc-meera-fonts
|
||||||
- sos
|
- snappy
|
||||||
|
- sound-theme-freedesktop
|
||||||
|
- soundtouch
|
||||||
|
- securityonion-networkminer
|
||||||
|
- speech-dispatcher
|
||||||
|
- speech-dispatcher-espeak-ng
|
||||||
|
- speex
|
||||||
- spice-vdagent
|
- spice-vdagent
|
||||||
- ssldump
|
- switcheroo-control
|
||||||
- sssd
|
|
||||||
- sssd-common
|
|
||||||
- sssd-kcm
|
|
||||||
- stix-fonts
|
|
||||||
- strace
|
|
||||||
- sudo
|
|
||||||
- symlinks
|
- symlinks
|
||||||
- syslinux
|
- system-config-printer-libs
|
||||||
- systemd
|
- system-config-printer-udev
|
||||||
- systemd-udev
|
- taglib
|
||||||
- tar
|
|
||||||
- tcpdump
|
- tcpdump
|
||||||
- tcpflow
|
- tcpflow
|
||||||
- teamd
|
- thai-scalable-fonts-common
|
||||||
- thai-scalable-waree-fonts
|
- thai-scalable-waree-fonts
|
||||||
- time
|
- totem
|
||||||
- tmux
|
- totem-pl-parser
|
||||||
- tmux-powerline
|
- totem-video-thumbnailer
|
||||||
- transmission
|
- tpm2-tools
|
||||||
|
- tpm2-tss
|
||||||
|
- tracer-common
|
||||||
|
- tracker
|
||||||
|
- tracker-miners
|
||||||
- tree
|
- tree
|
||||||
- tuned
|
- tuned
|
||||||
|
- twolame-libs
|
||||||
|
- tzdata
|
||||||
|
- udisks2
|
||||||
|
- udisks2-iscsi
|
||||||
|
- udisks2-lvm2
|
||||||
- unzip
|
- unzip
|
||||||
|
- upower
|
||||||
|
- urw-base35-bookman-fonts
|
||||||
|
- urw-base35-c059-fonts
|
||||||
|
- urw-base35-d050000l-fonts
|
||||||
|
- urw-base35-fonts
|
||||||
|
- urw-base35-fonts-common
|
||||||
|
- urw-base35-gothic-fonts
|
||||||
|
- urw-base35-nimbus-mono-ps-fonts
|
||||||
|
- urw-base35-nimbus-roman-fonts
|
||||||
|
- urw-base35-nimbus-sans-fonts
|
||||||
|
- urw-base35-p052-fonts
|
||||||
|
- urw-base35-standard-symbols-ps-fonts
|
||||||
|
- urw-base35-z003-fonts
|
||||||
- usb_modeswitch
|
- usb_modeswitch
|
||||||
|
- usb_modeswitch-data
|
||||||
- usbutils
|
- usbutils
|
||||||
- util-linux
|
- usermode
|
||||||
- util-linux-user
|
- userspace-rcu
|
||||||
- vdo
|
- vdo
|
||||||
- vim-enhanced
|
- vulkan-loader
|
||||||
- vim-minimal
|
- wavpack
|
||||||
- vim-powerline
|
- webkit2gtk3
|
||||||
- virt-what
|
- webkit2gtk3-jsc
|
||||||
- wget
|
- webrtc-audio-processing
|
||||||
- whois
|
- whois
|
||||||
- which
|
- wireless-regdb
|
||||||
- wireplumber
|
- wireplumber
|
||||||
|
- wireplumber-libs
|
||||||
- wireshark
|
- wireshark
|
||||||
|
- woff2
|
||||||
- words
|
- words
|
||||||
|
- wpa_supplicant
|
||||||
|
- wpebackend-fdo
|
||||||
|
- xdg-dbus-proxy
|
||||||
|
- xdg-desktop-portal
|
||||||
|
- xdg-desktop-portal-gnome
|
||||||
|
- xdg-desktop-portal-gtk
|
||||||
|
- xdg-user-dirs
|
||||||
- xdg-user-dirs-gtk
|
- xdg-user-dirs-gtk
|
||||||
- xed
|
- xdg-utils
|
||||||
- xfsdump
|
- xkeyboard-config
|
||||||
- xfsprogs
|
- xorg-x11-drv-evdev
|
||||||
- xreader
|
- xorg-x11-drv-fbdev
|
||||||
- yum
|
- xorg-x11-drv-libinput
|
||||||
|
- xorg-x11-drv-vmware
|
||||||
|
- xorg-x11-drv-wacom
|
||||||
|
- xorg-x11-drv-wacom-serial-support
|
||||||
|
- xorg-x11-server-Xorg
|
||||||
|
- xorg-x11-server-Xwayland
|
||||||
|
- xorg-x11-server-common
|
||||||
|
- xorg-x11-server-utils
|
||||||
|
- xorg-x11-utils
|
||||||
|
- xorg-x11-xauth
|
||||||
|
- xorg-x11-xinit
|
||||||
|
- xorg-x11-xinit-session
|
||||||
- zip
|
- zip
|
||||||
|
|
||||||
{% else %}
|
{% else %}
|
||||||
|
|
||||||
desktop_packages_os_fail:
|
desktop_packages_os_fail:
|
||||||
test.fail_without_changes:
|
test.fail_without_changes:
|
||||||
- comment: 'SO desktop can only be installed on Rocky'
|
- comment: 'SO desktop can only be installed on Oracle Linux'
|
||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
||||||
|
|
||||||
{# we only want this state to run it is CentOS #}
|
{# we only want this state to run it is CentOS #}
|
||||||
{% if GLOBALS.os == 'Rocky' %}
|
{% if GLOBALS.os == 'OEL' %}
|
||||||
|
|
||||||
remove_graphical_target:
|
remove_graphical_target:
|
||||||
file.symlink:
|
file.symlink:
|
||||||
@@ -12,6 +12,6 @@ remove_graphical_target:
|
|||||||
{% else %}
|
{% else %}
|
||||||
desktop_trusted-ca_os_fail:
|
desktop_trusted-ca_os_fail:
|
||||||
test.fail_without_changes:
|
test.fail_without_changes:
|
||||||
- comment: 'SO Desktop can only be installed on Rocky'
|
- comment: 'SO Desktop can only be installed on Oracle Linux'
|
||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|||||||
4
salt/desktop/scripts/convert-gnome-classic.sh
Normal file
4
salt/desktop/scripts/convert-gnome-classic.sh
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
echo "Setting default session to gnome-classic"
|
||||||
|
cp /usr/share/accountsservice/user-templates/standard /etc/accountsservice/user-templates/
|
||||||
|
sed -i 's|Session=gnome|Session=gnome-classic|g' /etc/accountsservice/user-templates/standard
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
||||||
|
|
||||||
{# we only want this state to run it is CentOS #}
|
{# we only want this state to run it is CentOS #}
|
||||||
{% if GLOBALS.os == 'Rocky' %}
|
{% if GLOBALS.os == 'OEL' %}
|
||||||
|
|
||||||
{% set global_ca_text = [] %}
|
{% set global_ca_text = [] %}
|
||||||
{% set global_ca_server = [] %}
|
{% set global_ca_server = [] %}
|
||||||
@@ -31,6 +31,6 @@ update_ca_certs:
|
|||||||
|
|
||||||
desktop_trusted-ca_os_fail:
|
desktop_trusted-ca_os_fail:
|
||||||
test.fail_without_changes:
|
test.fail_without_changes:
|
||||||
- comment: 'SO Desktop can only be installed on CentOS'
|
- comment: 'SO Desktop can only be installed on Oracle Linux'
|
||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
||||||
|
|
||||||
{# we only want this state to run it is CentOS #}
|
{# we only want this state to run it is CentOS #}
|
||||||
{% if GLOBALS.os == 'Rocky' %}
|
{% if GLOBALS.os == 'OEL' %}
|
||||||
|
|
||||||
include:
|
include:
|
||||||
- desktop.packages
|
- desktop.packages
|
||||||
@@ -14,10 +14,48 @@ graphical_target:
|
|||||||
- require:
|
- require:
|
||||||
- desktop_packages
|
- desktop_packages
|
||||||
|
|
||||||
|
convert_gnome_classic:
|
||||||
|
cmd.script:
|
||||||
|
- name: salt://desktop/scripts/convert-gnome-classic.sh
|
||||||
|
|
||||||
|
{% for username in salt['file.find'](path='/home/',mindepth=1,maxdepth=1,type='d') %}
|
||||||
|
{% set username = username.split('/')[2] %}
|
||||||
|
{% if username != 'zeek' %}
|
||||||
|
{% if not salt['file.file_exists']('/var/lib/AccountsService/users/' ~ username) %}
|
||||||
|
|
||||||
|
{{username}}_session:
|
||||||
|
file.managed:
|
||||||
|
- name: /var/lib/AccountsService/users/{{username}}
|
||||||
|
- source: salt://desktop/files/session.jinja
|
||||||
|
- template: jinja
|
||||||
|
- defaults:
|
||||||
|
USERNAME: {{username}}
|
||||||
|
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
|
||||||
|
desktop_wallpaper:
|
||||||
|
file.managed:
|
||||||
|
- name: /usr/local/share/backgrounds/so-wallpaper.jpg
|
||||||
|
- source: salt://desktop/files/so-wallpaper.jpg
|
||||||
|
- makedirs: True
|
||||||
|
|
||||||
|
set_wallpaper:
|
||||||
|
file.managed:
|
||||||
|
- name: /etc/dconf/db/local.d/00-background
|
||||||
|
- source: salt://desktop/files/00-background
|
||||||
|
|
||||||
|
run_dconf_update:
|
||||||
|
cmd.run:
|
||||||
|
- name: 'dconf update'
|
||||||
|
- onchanges:
|
||||||
|
- file: set_wallpaper
|
||||||
|
|
||||||
{% else %}
|
{% else %}
|
||||||
|
|
||||||
desktop_xwindows_os_fail:
|
desktop_xwindows_os_fail:
|
||||||
test.fail_without_changes:
|
test.fail_without_changes:
|
||||||
- comment: 'SO Desktop can only be installed on Rocky'
|
- comment: 'SO Desktop can only be installed on Oracle Linux'
|
||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
docker:
|
docker:
|
||||||
bip: '172.17.0.1'
|
range: '172.17.1.0/24'
|
||||||
range: '172.17.0.0/24'
|
gateway: '172.17.1.1'
|
||||||
sorange: '172.17.1.0/24'
|
|
||||||
sobip: '172.17.1.1'
|
|
||||||
containers:
|
containers:
|
||||||
'so-dockerregistry':
|
'so-dockerregistry':
|
||||||
final_octet: 20
|
final_octet: 20
|
||||||
@@ -202,4 +200,4 @@ docker:
|
|||||||
final_octet: 99
|
final_octet: 99
|
||||||
custom_bind_mounts: []
|
custom_bind_mounts: []
|
||||||
extra_hosts: []
|
extra_hosts: []
|
||||||
extra_env: []
|
extra_env: []
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{% import_yaml 'docker/defaults.yaml' as DOCKERDEFAULTS %}
|
{% import_yaml 'docker/defaults.yaml' as DOCKERDEFAULTS %}
|
||||||
{% set DOCKER = salt['pillar.get']('docker', DOCKERDEFAULTS.docker, merge=True) %}
|
{% set DOCKER = salt['pillar.get']('docker', DOCKERDEFAULTS.docker, merge=True) %}
|
||||||
{% set RANGESPLIT = DOCKER.sorange.split('.') %}
|
{% set RANGESPLIT = DOCKER.range.split('.') %}
|
||||||
{% set FIRSTTHREE = RANGESPLIT[0] ~ '.' ~ RANGESPLIT[1] ~ '.' ~ RANGESPLIT[2] ~ '.' %}
|
{% set FIRSTTHREE = RANGESPLIT[0] ~ '.' ~ RANGESPLIT[1] ~ '.' ~ RANGESPLIT[2] ~ '.' %}
|
||||||
|
|
||||||
{% for container, vals in DOCKER.containers.items() %}
|
{% for container, vals in DOCKER.containers.items() %}
|
||||||
|
|||||||
@@ -12,7 +12,28 @@ dockergroup:
|
|||||||
- name: docker
|
- name: docker
|
||||||
- gid: 920
|
- gid: 920
|
||||||
|
|
||||||
{% if GLOBALS.os == 'Ubuntu' %}
|
{% if GLOBALS.os_family == 'Debian' %}
|
||||||
|
{% if grains.oscodename == 'bookworm' %}
|
||||||
|
dockerheldpackages:
|
||||||
|
pkg.installed:
|
||||||
|
- pkgs:
|
||||||
|
- containerd.io: 1.6.21-1
|
||||||
|
- docker-ce: 5:24.0.3-1~debian.12~bookworm
|
||||||
|
- docker-ce-cli: 5:24.0.3-1~debian.12~bookworm
|
||||||
|
- docker-ce-rootless-extras: 5:24.0.3-1~debian.12~bookworm
|
||||||
|
- hold: True
|
||||||
|
- update_holds: True
|
||||||
|
{% elif grains.oscodename == 'jammy' %}
|
||||||
|
dockerheldpackages:
|
||||||
|
pkg.installed:
|
||||||
|
- pkgs:
|
||||||
|
- containerd.io: 1.6.21-1
|
||||||
|
- docker-ce: 5:24.0.2-1~ubuntu.22.04~jammy
|
||||||
|
- docker-ce-cli: 5:24.0.2-1~ubuntu.22.04~jammy
|
||||||
|
- docker-ce-rootless-extras: 5:24.0.2-1~ubuntu.22.04~jammy
|
||||||
|
- hold: True
|
||||||
|
- update_holds: True
|
||||||
|
{% else %}
|
||||||
dockerheldpackages:
|
dockerheldpackages:
|
||||||
pkg.installed:
|
pkg.installed:
|
||||||
- pkgs:
|
- pkgs:
|
||||||
@@ -22,14 +43,15 @@ dockerheldpackages:
|
|||||||
- docker-ce-rootless-extras: 5:20.10.5~3-0~ubuntu-focal
|
- docker-ce-rootless-extras: 5:20.10.5~3-0~ubuntu-focal
|
||||||
- hold: True
|
- hold: True
|
||||||
- update_holds: True
|
- update_holds: True
|
||||||
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
dockerheldpackages:
|
dockerheldpackages:
|
||||||
pkg.installed:
|
pkg.installed:
|
||||||
- pkgs:
|
- pkgs:
|
||||||
- containerd.io: 1.6.21-3.1.el9
|
- containerd.io: 1.6.21-3.1.el9
|
||||||
- docker-ce: 24.0.2-1.el9
|
- docker-ce: 24.0.4-1.el9
|
||||||
- docker-ce-cli: 24.0.2-1.el9
|
- docker-ce-cli: 24.0.4-1.el9
|
||||||
- docker-ce-rootless-extras: 24.0.2-1.el9
|
- docker-ce-rootless-extras: 24.0.4-1.el9
|
||||||
- hold: True
|
- hold: True
|
||||||
- update_holds: True
|
- update_holds: True
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -80,8 +102,8 @@ dockerreserveports:
|
|||||||
sos_docker_net:
|
sos_docker_net:
|
||||||
docker_network.present:
|
docker_network.present:
|
||||||
- name: sobridge
|
- name: sobridge
|
||||||
- subnet: {{ DOCKER.sorange }}
|
- subnet: {{ DOCKER.range }}
|
||||||
- gateway: {{ DOCKER.sobip }}
|
- gateway: {{ DOCKER.gateway }}
|
||||||
- options:
|
- options:
|
||||||
com.docker.network.bridge.name: 'sobridge'
|
com.docker.network.bridge.name: 'sobridge'
|
||||||
com.docker.network.driver.mtu: '1500'
|
com.docker.network.driver.mtu: '1500'
|
||||||
|
|||||||
@@ -1,20 +1,12 @@
|
|||||||
docker:
|
docker:
|
||||||
bip:
|
gateway:
|
||||||
description: Bind IP for the default docker interface.
|
description: Gateway for the default docker interface.
|
||||||
helpLink: docker.html
|
helpLink: docker.html
|
||||||
advanced: True
|
advanced: True
|
||||||
range:
|
range:
|
||||||
description: Default docker IP range for containers.
|
description: Default docker IP range for containers.
|
||||||
helpLink: docker.html
|
helpLink: docker.html
|
||||||
advanced: True
|
advanced: True
|
||||||
sobip:
|
|
||||||
description: Bind IP for the SO docker interface.
|
|
||||||
helpLink: docker.html
|
|
||||||
advanced: True
|
|
||||||
sorange:
|
|
||||||
description: IP range for the SO docker containers.
|
|
||||||
helpLink: docker.html
|
|
||||||
advanced: True
|
|
||||||
containers:
|
containers:
|
||||||
so-curator: &dockerOptions
|
so-curator: &dockerOptions
|
||||||
final_octet:
|
final_octet:
|
||||||
@@ -68,4 +60,4 @@ docker:
|
|||||||
so-strelka-filestream: *dockerOptions
|
so-strelka-filestream: *dockerOptions
|
||||||
so-strelka-frontend: *dockerOptions
|
so-strelka-frontend: *dockerOptions
|
||||||
so-strelka-gatekeeper: *dockerOptions
|
so-strelka-gatekeeper: *dockerOptions
|
||||||
so-strelka-manager: *dockerOptions
|
so-strelka-manager: *dockerOptions
|
||||||
|
|||||||
@@ -28,6 +28,22 @@ elasticagentconfdir:
|
|||||||
- group: 939
|
- group: 939
|
||||||
- makedirs: True
|
- makedirs: True
|
||||||
|
|
||||||
|
elasticagentlogdir:
|
||||||
|
file.directory:
|
||||||
|
- name: /opt/so/log/elasticagent
|
||||||
|
- user: 949
|
||||||
|
- group: 939
|
||||||
|
- makedirs: True
|
||||||
|
|
||||||
|
elasticagent_sbin_jinja:
|
||||||
|
file.recurse:
|
||||||
|
- name: /usr/sbin
|
||||||
|
- source: salt://elasticagent/tools/sbin_jinja
|
||||||
|
- user: 949
|
||||||
|
- group: 939
|
||||||
|
- file_mode: 755
|
||||||
|
- template: jinja
|
||||||
|
|
||||||
# Create config
|
# Create config
|
||||||
create-elastic-agent-config:
|
create-elastic-agent-config:
|
||||||
file.managed:
|
file.managed:
|
||||||
@@ -37,7 +53,6 @@ create-elastic-agent-config:
|
|||||||
- group: 939
|
- group: 939
|
||||||
- template: jinja
|
- template: jinja
|
||||||
|
|
||||||
|
|
||||||
{% else %}
|
{% else %}
|
||||||
|
|
||||||
{{sls}}_state_not_allowed:
|
{{sls}}_state_not_allowed:
|
||||||
|
|||||||
@@ -33,19 +33,27 @@ so-elastic-agent:
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
- binds:
|
- binds:
|
||||||
- /opt/so/conf/elastic-agent/elastic-agent.yml:/usr/share/elastic-agent/elastic-agent.yml:ro
|
- /opt/so/conf/elastic-agent/elastic-agent.yml:/usr/share/elastic-agent/elastic-agent.yml:ro
|
||||||
|
- /opt/so/log/elasticagent:/usr/share/elastic-agent/logs
|
||||||
|
- /etc/pki/tls/certs/intca.crt:/etc/pki/tls/certs/intca.crt:ro
|
||||||
- /nsm:/nsm:ro
|
- /nsm:/nsm:ro
|
||||||
|
- /opt/so/log:/opt/so/log:ro
|
||||||
{% if DOCKER.containers['so-elastic-agent'].custom_bind_mounts %}
|
{% if DOCKER.containers['so-elastic-agent'].custom_bind_mounts %}
|
||||||
{% for BIND in DOCKER.containers['so-elastic-agent'].custom_bind_mounts %}
|
{% for BIND in DOCKER.containers['so-elastic-agent'].custom_bind_mounts %}
|
||||||
- {{ BIND }}
|
- {{ BIND }}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if DOCKER.containers['so-elastic-agent'].extra_env %}
|
|
||||||
- environment:
|
- environment:
|
||||||
|
- FLEET_CA=/etc/pki/tls/certs/intca.crt
|
||||||
|
- LOGS_PATH=logs
|
||||||
|
{% if DOCKER.containers['so-elastic-agent'].extra_env %}
|
||||||
{% for XTRAENV in DOCKER.containers['so-elastic-agent'].extra_env %}
|
{% for XTRAENV in DOCKER.containers['so-elastic-agent'].extra_env %}
|
||||||
- {{ XTRAENV }}
|
- {{ XTRAENV }}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
- require:
|
||||||
|
- file: create-elastic-agent-config
|
||||||
|
- watch:
|
||||||
|
- file: create-elastic-agent-config
|
||||||
|
|
||||||
delete_so-elastic-agent_so-status.disabled:
|
delete_so-elastic-agent_so-status.disabled:
|
||||||
file.uncomment:
|
file.uncomment:
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
{%- set ES_PASS = salt['pillar.get']('elasticsearch:auth:users:so_elastic_user:pass', '') %}
|
{%- set ES_PASS = salt['pillar.get']('elasticsearch:auth:users:so_elastic_user:pass', '') %}
|
||||||
|
|
||||||
id: aea1ba80-1065-11ee-a369-97538913b6a9
|
id: aea1ba80-1065-11ee-a369-97538913b6a9
|
||||||
revision: 2
|
revision: 1
|
||||||
outputs:
|
outputs:
|
||||||
default:
|
default:
|
||||||
type: elasticsearch
|
type: elasticsearch
|
||||||
@@ -11,7 +11,7 @@ outputs:
|
|||||||
- 'https://{{ GLOBALS.hostname }}:9200'
|
- 'https://{{ GLOBALS.hostname }}:9200'
|
||||||
username: '{{ ES_USER }}'
|
username: '{{ ES_USER }}'
|
||||||
password: '{{ ES_PASS }}'
|
password: '{{ ES_PASS }}'
|
||||||
ssl.verification_mode: none
|
ssl.verification_mode: full
|
||||||
output_permissions: {}
|
output_permissions: {}
|
||||||
agent:
|
agent:
|
||||||
download:
|
download:
|
||||||
@@ -22,56 +22,369 @@ agent:
|
|||||||
metrics: false
|
metrics: false
|
||||||
features: {}
|
features: {}
|
||||||
inputs:
|
inputs:
|
||||||
- id: logfile-logs-80ffa884-2cfc-459a-964a-34df25714d85
|
- id: logfile-logs-fefef78c-422f-4cfa-8abf-4cd1b9428f62
|
||||||
name: suricata-logs
|
name: import-evtx-logs
|
||||||
revision: 1
|
revision: 2
|
||||||
type: logfile
|
type: logfile
|
||||||
use_output: default
|
use_output: default
|
||||||
meta:
|
meta:
|
||||||
package:
|
package:
|
||||||
name: log
|
name: log
|
||||||
version:
|
version:
|
||||||
data_stream:
|
data_stream:
|
||||||
namespace: so
|
namespace: so
|
||||||
package_policy_id: 80ffa884-2cfc-459a-964a-34df25714d85
|
package_policy_id: fefef78c-422f-4cfa-8abf-4cd1b9428f62
|
||||||
streams:
|
streams:
|
||||||
- id: logfile-log.log-80ffa884-2cfc-459a-964a-34df25714d85
|
- id: logfile-log.log-fefef78c-422f-4cfa-8abf-4cd1b9428f62
|
||||||
|
data_stream:
|
||||||
|
dataset: import
|
||||||
|
paths:
|
||||||
|
- /nsm/import/*/evtx/*.json
|
||||||
|
processors:
|
||||||
|
- dissect:
|
||||||
|
field: log.file.path
|
||||||
|
tokenizer: '/nsm/import/%{import.id}/evtx/%{import.file}'
|
||||||
|
target_prefix: ''
|
||||||
|
- decode_json_fields:
|
||||||
|
fields:
|
||||||
|
- message
|
||||||
|
target: ''
|
||||||
|
- drop_fields:
|
||||||
|
ignore_missing: true
|
||||||
|
fields:
|
||||||
|
- host
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
dataset: system.security
|
||||||
|
type: logs
|
||||||
|
namespace: default
|
||||||
|
target: data_stream
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
dataset: system.security
|
||||||
|
module: system
|
||||||
|
imported: true
|
||||||
|
target: event
|
||||||
|
- then:
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
dataset: windows.sysmon_operational
|
||||||
|
target: data_stream
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
dataset: windows.sysmon_operational
|
||||||
|
module: windows
|
||||||
|
imported: true
|
||||||
|
target: event
|
||||||
|
if:
|
||||||
|
equals:
|
||||||
|
winlog.channel: Microsoft-Windows-Sysmon/Operational
|
||||||
|
- then:
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
dataset: system.application
|
||||||
|
target: data_stream
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
dataset: system.application
|
||||||
|
target: event
|
||||||
|
if:
|
||||||
|
equals:
|
||||||
|
winlog.channel: Application
|
||||||
|
- then:
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
dataset: system.system
|
||||||
|
target: data_stream
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
dataset: system.system
|
||||||
|
target: event
|
||||||
|
if:
|
||||||
|
equals:
|
||||||
|
winlog.channel: System
|
||||||
|
- then:
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
dataset: windows.powershell_operational
|
||||||
|
target: data_stream
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
dataset: windows.powershell_operational
|
||||||
|
module: windows
|
||||||
|
target: event
|
||||||
|
if:
|
||||||
|
equals:
|
||||||
|
winlog.channel: Microsoft-Windows-PowerShell/Operational
|
||||||
|
tags:
|
||||||
|
- import
|
||||||
|
- id: logfile-redis-fc98c947-7d17-4861-a318-7ad075f6d1b0
|
||||||
|
name: redis-logs
|
||||||
|
revision: 2
|
||||||
|
type: logfile
|
||||||
|
use_output: default
|
||||||
|
meta:
|
||||||
|
package:
|
||||||
|
name: redis
|
||||||
|
version:
|
||||||
|
data_stream:
|
||||||
|
namespace: default
|
||||||
|
package_policy_id: fc98c947-7d17-4861-a318-7ad075f6d1b0
|
||||||
|
streams:
|
||||||
|
- id: logfile-redis.log-fc98c947-7d17-4861-a318-7ad075f6d1b0
|
||||||
|
data_stream:
|
||||||
|
dataset: redis.log
|
||||||
|
type: logs
|
||||||
|
exclude_files:
|
||||||
|
- .gz$
|
||||||
|
paths:
|
||||||
|
- /opt/so/log/redis/redis.log
|
||||||
|
tags:
|
||||||
|
- redis-log
|
||||||
|
exclude_lines:
|
||||||
|
- '^\s+[\-`(''.|_]'
|
||||||
|
- id: logfile-logs-3b56803d-5ade-4c93-b25e-9b37182f66b8
|
||||||
|
name: import-suricata-logs
|
||||||
|
revision: 2
|
||||||
|
type: logfile
|
||||||
|
use_output: default
|
||||||
|
meta:
|
||||||
|
package:
|
||||||
|
name: log
|
||||||
|
version:
|
||||||
|
data_stream:
|
||||||
|
namespace: so
|
||||||
|
package_policy_id: 3b56803d-5ade-4c93-b25e-9b37182f66b8
|
||||||
|
streams:
|
||||||
|
- id: logfile-log.log-3b56803d-5ade-4c93-b25e-9b37182f66b8
|
||||||
|
data_stream:
|
||||||
|
dataset: import
|
||||||
|
pipeline: suricata.common
|
||||||
|
paths:
|
||||||
|
- /nsm/import/*/suricata/eve*.json
|
||||||
|
processors:
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
module: suricata
|
||||||
|
imported: true
|
||||||
|
category: network
|
||||||
|
target: event
|
||||||
|
- dissect:
|
||||||
|
field: log.file.path
|
||||||
|
tokenizer: '/nsm/import/%{import.id}/suricata/%{import.file}'
|
||||||
|
target_prefix: ''
|
||||||
|
- id: logfile-logs-c327e1a3-1ebe-449c-a8eb-f6f35032e69d
|
||||||
|
name: soc-server-logs
|
||||||
|
revision: 2
|
||||||
|
type: logfile
|
||||||
|
use_output: default
|
||||||
|
meta:
|
||||||
|
package:
|
||||||
|
name: log
|
||||||
|
version:
|
||||||
|
data_stream:
|
||||||
|
namespace: so
|
||||||
|
package_policy_id: c327e1a3-1ebe-449c-a8eb-f6f35032e69d
|
||||||
|
streams:
|
||||||
|
- id: logfile-log.log-c327e1a3-1ebe-449c-a8eb-f6f35032e69d
|
||||||
|
data_stream:
|
||||||
|
dataset: soc
|
||||||
|
pipeline: common
|
||||||
|
paths:
|
||||||
|
- /opt/so/log/soc/sensoroni-server.log
|
||||||
|
processors:
|
||||||
|
- decode_json_fields:
|
||||||
|
add_error_key: true
|
||||||
|
process_array: true
|
||||||
|
max_depth: 2
|
||||||
|
fields:
|
||||||
|
- message
|
||||||
|
target: soc
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
module: soc
|
||||||
|
dataset_temp: server
|
||||||
|
category: host
|
||||||
|
target: event
|
||||||
|
- rename:
|
||||||
|
ignore_missing: true
|
||||||
|
fields:
|
||||||
|
- from: soc.fields.sourceIp
|
||||||
|
to: source.ip
|
||||||
|
- from: soc.fields.status
|
||||||
|
to: http.response.status_code
|
||||||
|
- from: soc.fields.method
|
||||||
|
to: http.request.method
|
||||||
|
- from: soc.fields.path
|
||||||
|
to: url.path
|
||||||
|
- from: soc.message
|
||||||
|
to: event.action
|
||||||
|
- from: soc.level
|
||||||
|
to: log.level
|
||||||
|
tags:
|
||||||
|
- so-soc
|
||||||
|
- id: logfile-logs-906e0d4c-9ec3-4c6a-bef6-e347ec9fd073
|
||||||
|
name: soc-sensoroni-logs
|
||||||
|
revision: 2
|
||||||
|
type: logfile
|
||||||
|
use_output: default
|
||||||
|
meta:
|
||||||
|
package:
|
||||||
|
name: log
|
||||||
|
version:
|
||||||
|
data_stream:
|
||||||
|
namespace: so
|
||||||
|
package_policy_id: 906e0d4c-9ec3-4c6a-bef6-e347ec9fd073
|
||||||
|
streams:
|
||||||
|
- id: logfile-log.log-906e0d4c-9ec3-4c6a-bef6-e347ec9fd073
|
||||||
|
data_stream:
|
||||||
|
dataset: soc
|
||||||
|
pipeline: common
|
||||||
|
paths:
|
||||||
|
- /opt/so/log/sensoroni/sensoroni.log
|
||||||
|
processors:
|
||||||
|
- decode_json_fields:
|
||||||
|
add_error_key: true
|
||||||
|
process_array: true
|
||||||
|
max_depth: 2
|
||||||
|
fields:
|
||||||
|
- message
|
||||||
|
target: sensoroni
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
module: soc
|
||||||
|
dataset_temp: sensoroni
|
||||||
|
category: host
|
||||||
|
target: event
|
||||||
|
- rename:
|
||||||
|
ignore_missing: true
|
||||||
|
fields:
|
||||||
|
- from: sensoroni.fields.sourceIp
|
||||||
|
to: source.ip
|
||||||
|
- from: sensoroni.fields.status
|
||||||
|
to: http.response.status_code
|
||||||
|
- from: sensoroni.fields.method
|
||||||
|
to: http.request.method
|
||||||
|
- from: sensoroni.fields.path
|
||||||
|
to: url.path
|
||||||
|
- from: sensoroni.message
|
||||||
|
to: event.action
|
||||||
|
- from: sensoroni.level
|
||||||
|
to: log.level
|
||||||
|
- id: logfile-logs-df0d7f2c-221f-433b-b18b-d1cf83250515
|
||||||
|
name: soc-salt-relay-logs
|
||||||
|
revision: 2
|
||||||
|
type: logfile
|
||||||
|
use_output: default
|
||||||
|
meta:
|
||||||
|
package:
|
||||||
|
name: log
|
||||||
|
version:
|
||||||
|
data_stream:
|
||||||
|
namespace: so
|
||||||
|
package_policy_id: df0d7f2c-221f-433b-b18b-d1cf83250515
|
||||||
|
streams:
|
||||||
|
- id: logfile-log.log-df0d7f2c-221f-433b-b18b-d1cf83250515
|
||||||
|
data_stream:
|
||||||
|
dataset: soc
|
||||||
|
pipeline: common
|
||||||
|
paths:
|
||||||
|
- /opt/so/log/soc/salt-relay.log
|
||||||
|
processors:
|
||||||
|
- dissect:
|
||||||
|
field: message
|
||||||
|
tokenizer: '%{soc.ts} | %{event.action}'
|
||||||
|
target_prefix: ''
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
module: soc
|
||||||
|
dataset_temp: salt_relay
|
||||||
|
category: host
|
||||||
|
target: event
|
||||||
|
tags:
|
||||||
|
- so-soc
|
||||||
|
- id: logfile-logs-74bd2366-fe52-493c-bddc-843a017fc4d0
|
||||||
|
name: soc-auth-sync-logs
|
||||||
|
revision: 2
|
||||||
|
type: logfile
|
||||||
|
use_output: default
|
||||||
|
meta:
|
||||||
|
package:
|
||||||
|
name: log
|
||||||
|
version:
|
||||||
|
data_stream:
|
||||||
|
namespace: so
|
||||||
|
package_policy_id: 74bd2366-fe52-493c-bddc-843a017fc4d0
|
||||||
|
streams:
|
||||||
|
- id: logfile-log.log-74bd2366-fe52-493c-bddc-843a017fc4d0
|
||||||
|
data_stream:
|
||||||
|
dataset: soc
|
||||||
|
pipeline: common
|
||||||
|
paths:
|
||||||
|
- /opt/so/log/soc/sync.log
|
||||||
|
processors:
|
||||||
|
- dissect:
|
||||||
|
field: message
|
||||||
|
tokenizer: '%{event.action}'
|
||||||
|
target_prefix: ''
|
||||||
|
- add_fields:
|
||||||
|
fields:
|
||||||
|
module: soc
|
||||||
|
dataset_temp: auth_sync
|
||||||
|
category: host
|
||||||
|
target: event
|
||||||
|
tags:
|
||||||
|
- so-soc
|
||||||
|
- id: logfile-logs-d151d9bf-ff2a-4529-9520-c99244bc0253
|
||||||
|
name: suricata-logs
|
||||||
|
revision: 2
|
||||||
|
type: logfile
|
||||||
|
use_output: default
|
||||||
|
meta:
|
||||||
|
package:
|
||||||
|
name: log
|
||||||
|
version:
|
||||||
|
data_stream:
|
||||||
|
namespace: so
|
||||||
|
package_policy_id: d151d9bf-ff2a-4529-9520-c99244bc0253
|
||||||
|
streams:
|
||||||
|
- id: logfile-log.log-d151d9bf-ff2a-4529-9520-c99244bc0253
|
||||||
data_stream:
|
data_stream:
|
||||||
dataset: suricata
|
dataset: suricata
|
||||||
|
pipeline: suricata.common
|
||||||
paths:
|
paths:
|
||||||
- /nsm/suricata/eve*.json
|
- /nsm/suricata/eve*.json
|
||||||
processors:
|
processors:
|
||||||
- add_fields:
|
- add_fields:
|
||||||
target: event
|
|
||||||
fields:
|
fields:
|
||||||
category: network
|
|
||||||
module: suricata
|
module: suricata
|
||||||
pipeline: suricata.common
|
category: network
|
||||||
- id: logfile-logs-90103ac4-f6bd-4a4a-b596-952c332390fc
|
target: event
|
||||||
|
- id: logfile-logs-31f94d05-ae75-40ee-b9c5-0e0356eff327
|
||||||
name: strelka-logs
|
name: strelka-logs
|
||||||
revision: 1
|
revision: 2
|
||||||
type: logfile
|
type: logfile
|
||||||
use_output: default
|
use_output: default
|
||||||
meta:
|
meta:
|
||||||
package:
|
package:
|
||||||
name: log
|
name: log
|
||||||
version:
|
version:
|
||||||
data_stream:
|
data_stream:
|
||||||
namespace: so
|
namespace: so
|
||||||
package_policy_id: 90103ac4-f6bd-4a4a-b596-952c332390fc
|
package_policy_id: 31f94d05-ae75-40ee-b9c5-0e0356eff327
|
||||||
streams:
|
streams:
|
||||||
- id: logfile-log.log-90103ac4-f6bd-4a4a-b596-952c332390fc
|
- id: logfile-log.log-31f94d05-ae75-40ee-b9c5-0e0356eff327
|
||||||
data_stream:
|
data_stream:
|
||||||
dataset: strelka
|
dataset: strelka
|
||||||
|
pipeline: strelka.file
|
||||||
paths:
|
paths:
|
||||||
- /nsm/strelka/log/strelka.log
|
- /nsm/strelka/log/strelka.log
|
||||||
processors:
|
processors:
|
||||||
- add_fields:
|
- add_fields:
|
||||||
target: event
|
|
||||||
fields:
|
fields:
|
||||||
category: file
|
|
||||||
module: strelka
|
module: strelka
|
||||||
pipeline: strelka.file
|
category: file
|
||||||
|
target: event
|
||||||
- id: logfile-logs-6197fe84-9b58-4d9b-8464-3d517f28808d
|
- id: logfile-logs-6197fe84-9b58-4d9b-8464-3d517f28808d
|
||||||
name: zeek-logs
|
name: zeek-logs
|
||||||
revision: 1
|
revision: 1
|
||||||
|
|||||||
16
salt/elasticagent/tools/sbin_jinja/so-elastic-agent-inspect
Executable file
16
salt/elasticagent/tools/sbin_jinja/so-elastic-agent-inspect
Executable file
@@ -0,0 +1,16 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||||
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
|
# Elastic License 2.0.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
. /usr/sbin/so-common
|
||||||
|
|
||||||
|
{% if grains.role == 'so-heavynode' %}
|
||||||
|
docker exec so-elastic-agent /usr/share/elastic-agent/elastic-agent inspect
|
||||||
|
{% else %}
|
||||||
|
/bin/elastic-agent inspect
|
||||||
|
{% endif %}
|
||||||
17
salt/elasticagent/tools/sbin_jinja/so-elastic-agent-restart
Executable file
17
salt/elasticagent/tools/sbin_jinja/so-elastic-agent-restart
Executable file
@@ -0,0 +1,17 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||||
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
|
# Elastic License 2.0.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
. /usr/sbin/so-common
|
||||||
|
|
||||||
|
{% if grains.role == 'so-heavynode' %}
|
||||||
|
/usr/sbin/so-stop elastic-agent $1
|
||||||
|
/usr/sbin/so-start elasticagent $1
|
||||||
|
{% else %}
|
||||||
|
service elastic-agent restart
|
||||||
|
{% endif %}
|
||||||
@@ -5,6 +5,13 @@
|
|||||||
# https://securityonion.net/license; you may not use this file except in compliance with the
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
# Elastic License 2.0.
|
# Elastic License 2.0.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
. /usr/sbin/so-common
|
. /usr/sbin/so-common
|
||||||
|
|
||||||
/usr/sbin/so-restart elastic-agent $1
|
{% if grains.role == 'so-heavynode' %}
|
||||||
|
/usr/sbin/so-start elasticagent $1
|
||||||
|
{% else %}
|
||||||
|
service elastic-agent start
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
17
salt/elasticagent/tools/sbin_jinja/so-elastic-agent-status
Executable file
17
salt/elasticagent/tools/sbin_jinja/so-elastic-agent-status
Executable file
@@ -0,0 +1,17 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||||
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
|
# Elastic License 2.0.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
. /usr/sbin/so-common
|
||||||
|
|
||||||
|
{% if grains.role == 'so-heavynode' %}
|
||||||
|
docker exec so-elastic-agent /usr/share/elastic-agent/elastic-agent status
|
||||||
|
{% else %}
|
||||||
|
/bin/elastic-agent status
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
@@ -9,4 +9,9 @@
|
|||||||
|
|
||||||
. /usr/sbin/so-common
|
. /usr/sbin/so-common
|
||||||
|
|
||||||
|
{% if grains.role == 'so-heavynode' %}
|
||||||
/usr/sbin/so-stop elastic-agent $1
|
/usr/sbin/so-stop elastic-agent $1
|
||||||
|
{% else %}
|
||||||
|
service elastic-agent stop
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
17
salt/elasticagent/tools/sbin_jinja/so-elastic-agent-version
Executable file
17
salt/elasticagent/tools/sbin_jinja/so-elastic-agent-version
Executable file
@@ -0,0 +1,17 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||||
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
|
# Elastic License 2.0.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
. /usr/sbin/so-common
|
||||||
|
|
||||||
|
{% if grains.role == 'so-heavynode' %}
|
||||||
|
docker exec so-elastic-agent /usr/share/elastic-agent/elastic-agent version
|
||||||
|
{% else %}
|
||||||
|
/bin/elastic-agent version
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
@@ -45,6 +45,13 @@ eaconfdir:
|
|||||||
- group: 939
|
- group: 939
|
||||||
- makedirs: True
|
- makedirs: True
|
||||||
|
|
||||||
|
ealogdir:
|
||||||
|
file.directory:
|
||||||
|
- name: /opt/so/log/elasticfleet
|
||||||
|
- user: 947
|
||||||
|
- group: 939
|
||||||
|
- makedirs: True
|
||||||
|
|
||||||
eastatedir:
|
eastatedir:
|
||||||
file.directory:
|
file.directory:
|
||||||
- name: /opt/so/conf/elastic-fleet/state
|
- name: /opt/so/conf/elastic-fleet/state
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ elasticfleet:
|
|||||||
enabled: False
|
enabled: False
|
||||||
config:
|
config:
|
||||||
server:
|
server:
|
||||||
custom_fqdn: ''
|
custom_fqdn: []
|
||||||
enable_auto_configuration: True
|
enable_auto_configuration: True
|
||||||
endpoints_enrollment: ''
|
endpoints_enrollment: ''
|
||||||
es_token: ''
|
es_token: ''
|
||||||
@@ -28,7 +28,17 @@ elasticfleet:
|
|||||||
- aws
|
- aws
|
||||||
- azure
|
- azure
|
||||||
- cloudflare
|
- cloudflare
|
||||||
|
- elasticsearch
|
||||||
|
- endpoint
|
||||||
|
- fleet_server
|
||||||
- fim
|
- fim
|
||||||
- github
|
- github
|
||||||
- google_workspace
|
- google_workspace
|
||||||
|
- log
|
||||||
|
- osquery_manager
|
||||||
|
- redis
|
||||||
|
- system
|
||||||
|
- tcp
|
||||||
|
- udp
|
||||||
|
- windows
|
||||||
- 1password
|
- 1password
|
||||||
|
|||||||
@@ -15,15 +15,30 @@
|
|||||||
include:
|
include:
|
||||||
- elasticfleet.config
|
- elasticfleet.config
|
||||||
- elasticfleet.sostatus
|
- elasticfleet.sostatus
|
||||||
|
- ssl
|
||||||
|
|
||||||
{% if ELASTICFLEETMERGED.config.server.enable_auto_configuration and grains.role not in ['so-import', 'so-eval'] %}
|
# If enabled, automatically update Fleet Logstash Outputs
|
||||||
|
{% if ELASTICFLEETMERGED.config.server.enable_auto_configuration and grains.role not in ['so-import', 'so-eval', 'so-fleet'] %}
|
||||||
so-elastic-fleet-auto-configure-logstash-outputs:
|
so-elastic-fleet-auto-configure-logstash-outputs:
|
||||||
cmd.run:
|
cmd.run:
|
||||||
- name: /usr/sbin/so-elastic-fleet-outputs-update
|
- name: /usr/sbin/so-elastic-fleet-outputs-update
|
||||||
|
- retry: True
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
#so-elastic-fleet-auto-configure-server-urls:
|
# If enabled, automatically update Fleet Server URLs & ES Connection
|
||||||
# cmd.run:
|
{% if ELASTICFLEETMERGED.config.server.enable_auto_configuration and grains.role not in ['so-fleet'] %}
|
||||||
# - name: /usr/sbin/so-elastic-fleet-urls-update
|
so-elastic-fleet-auto-configure-server-urls:
|
||||||
|
cmd.run:
|
||||||
|
- name: /usr/sbin/so-elastic-fleet-urls-update
|
||||||
|
- retry: True
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
# Automatically update Fleet Server Elasticsearch URLs
|
||||||
|
{% if grains.role not in ['so-fleet'] %}
|
||||||
|
so-elastic-fleet-auto-configure-elasticsearch-urls:
|
||||||
|
cmd.run:
|
||||||
|
- name: /usr/sbin/so-elastic-fleet-es-url-update
|
||||||
|
- retry: True
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if SERVICETOKEN != '' %}
|
{% if SERVICETOKEN != '' %}
|
||||||
@@ -50,8 +65,15 @@ so-elastic-fleet:
|
|||||||
- {{ BINDING }}
|
- {{ BINDING }}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
- binds:
|
- binds:
|
||||||
- /etc/pki:/etc/pki:ro
|
- /etc/pki/elasticfleet-server.crt:/etc/pki/elasticfleet-server.crt:ro
|
||||||
#- /opt/so/conf/elastic-fleet/state:/usr/share/elastic-agent/state:rw
|
- /etc/pki/elasticfleet-server.key:/etc/pki/elasticfleet-server.key:ro
|
||||||
|
- /etc/pki/tls/certs/intca.crt:/etc/pki/tls/certs/intca.crt:ro
|
||||||
|
{% if GLOBALS.os_family == 'Debian' %}
|
||||||
|
- /etc/ssl/elasticfleet-server.crt:/etc/ssl/elasticfleet-server.crt:ro
|
||||||
|
- /etc/ssl/elasticfleet-server.key:/etc/ssl/elasticfleet-server.key:ro
|
||||||
|
- /etc/ssl/tls/certs/intca.crt:/etc/ssl/tls/certs/intca.crt:ro
|
||||||
|
{% endif %}
|
||||||
|
- /opt/so/log/elasticfleet:/usr/share/elastic-agent/logs
|
||||||
{% if DOCKER.containers['so-elastic-fleet'].custom_bind_mounts %}
|
{% if DOCKER.containers['so-elastic-fleet'].custom_bind_mounts %}
|
||||||
{% for BIND in DOCKER.containers['so-elastic-fleet'].custom_bind_mounts %}
|
{% for BIND in DOCKER.containers['so-elastic-fleet'].custom_bind_mounts %}
|
||||||
- {{ BIND }}
|
- {{ BIND }}
|
||||||
@@ -59,25 +81,39 @@ so-elastic-fleet:
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
- environment:
|
- environment:
|
||||||
- FLEET_SERVER_ENABLE=true
|
- FLEET_SERVER_ENABLE=true
|
||||||
- FLEET_URL=https://{{ GLOBALS.node_ip }}:8220
|
- FLEET_URL=https://{{ GLOBALS.hostname }}:8220
|
||||||
- FLEET_SERVER_ELASTICSEARCH_HOST=https://{{ GLOBALS.manager }}:9200
|
- FLEET_SERVER_ELASTICSEARCH_HOST=https://{{ GLOBALS.manager }}:9200
|
||||||
- FLEET_SERVER_SERVICE_TOKEN={{ SERVICETOKEN }}
|
- FLEET_SERVER_SERVICE_TOKEN={{ SERVICETOKEN }}
|
||||||
- FLEET_SERVER_POLICY_ID=FleetServer_{{ GLOBALS.hostname }}
|
- FLEET_SERVER_POLICY_ID=FleetServer_{{ GLOBALS.hostname }}
|
||||||
- FLEET_SERVER_ELASTICSEARCH_CA=/etc/pki/tls/certs/intca.crt
|
|
||||||
- FLEET_SERVER_CERT=/etc/pki/elasticfleet-server.crt
|
- FLEET_SERVER_CERT=/etc/pki/elasticfleet-server.crt
|
||||||
- FLEET_SERVER_CERT_KEY=/etc/pki/elasticfleet-server.key
|
- FLEET_SERVER_CERT_KEY=/etc/pki/elasticfleet-server.key
|
||||||
|
{% if GLOBALS.os_family == 'Debian' %}
|
||||||
|
- FLEET_CA=/etc/ssl/certs/intca.crt
|
||||||
|
- FLEET_SERVER_ELASTICSEARCH_CA=/etc/ssl/certs/intca.crt
|
||||||
|
{% else %}
|
||||||
- FLEET_CA=/etc/pki/tls/certs/intca.crt
|
- FLEET_CA=/etc/pki/tls/certs/intca.crt
|
||||||
|
- FLEET_SERVER_ELASTICSEARCH_CA=/etc/pki/tls/certs/intca.crt
|
||||||
|
{% endif %}
|
||||||
|
- LOGS_PATH=logs
|
||||||
{% if DOCKER.containers['so-elastic-fleet'].extra_env %}
|
{% if DOCKER.containers['so-elastic-fleet'].extra_env %}
|
||||||
{% for XTRAENV in DOCKER.containers['so-elastic-fleet'].extra_env %}
|
{% for XTRAENV in DOCKER.containers['so-elastic-fleet'].extra_env %}
|
||||||
- {{ XTRAENV }}
|
- {{ XTRAENV }}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
- watch:
|
||||||
|
- x509: etc_elasticfleet_key
|
||||||
|
- x509: etc_elasticfleet_crt
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if GLOBALS.role != "so-fleet" %}
|
{% if GLOBALS.role != "so-fleet" %}
|
||||||
so-elastic-fleet-integrations:
|
so-elastic-fleet-integrations:
|
||||||
cmd.run:
|
cmd.run:
|
||||||
- name: /usr/sbin/so-elastic-fleet-integration-policy-load
|
- name: /usr/sbin/so-elastic-fleet-integration-policy-load
|
||||||
|
|
||||||
|
so-elastic-agent-grid-upgrade:
|
||||||
|
cmd.run:
|
||||||
|
- name: /usr/sbin/so-elastic-agent-grid-upgrade
|
||||||
|
- retry: True
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
delete_so-elastic-fleet_so-status.disabled:
|
delete_so-elastic-fleet_so-status.disabled:
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
"logs-logfile": {
|
"logs-logfile": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"streams": {
|
"streams": {
|
||||||
"log.log": {
|
"log.logs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
"paths": [
|
"paths": [
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
"logs-logfile": {
|
"logs-logfile": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"streams": {
|
"streams": {
|
||||||
"log.log": {
|
"log.logs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
"paths": [
|
"paths": [
|
||||||
|
|||||||
@@ -5,17 +5,16 @@
|
|||||||
"package": {
|
"package": {
|
||||||
"name": "endpoint",
|
"name": "endpoint",
|
||||||
"title": "Elastic Defend",
|
"title": "Elastic Defend",
|
||||||
"version": ""
|
"version": "8.8.0"
|
||||||
},
|
},
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"policy_id": "endpoints-initial",
|
"policy_id": "endpoints-initial",
|
||||||
"vars": {},
|
|
||||||
"inputs": [{
|
"inputs": [{
|
||||||
"type": "endpoint",
|
"type": "ENDPOINT_INTEGRATION_CONFIG",
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"streams": [],
|
"streams": [],
|
||||||
"config": {
|
"config": {
|
||||||
"integration_config": {
|
"_config": {
|
||||||
"value": {
|
"value": {
|
||||||
"type": "endpoint",
|
"type": "endpoint",
|
||||||
"endpointConfig": {
|
"endpointConfig": {
|
||||||
@@ -25,4 +24,4 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}]
|
}]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,9 +13,14 @@
|
|||||||
"system.auth": {
|
"system.auth": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
|
"ignore_older": "72h",
|
||||||
"paths": [
|
"paths": [
|
||||||
"/var/log/auth.log*",
|
"/var/log/auth.log*",
|
||||||
"/var/log/secure*"
|
"/var/log/secure*"
|
||||||
|
],
|
||||||
|
"preserve_original_event": false,
|
||||||
|
"tags": [
|
||||||
|
"system-auth"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -24,34 +29,49 @@
|
|||||||
"vars": {
|
"vars": {
|
||||||
"paths": [
|
"paths": [
|
||||||
"/var/log/messages*",
|
"/var/log/messages*",
|
||||||
"/var/log/syslog*"
|
"/var/log/syslog*",
|
||||||
]
|
"/var/log/system*"
|
||||||
|
],
|
||||||
|
"tags": [],
|
||||||
|
"ignore_older": "72h"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"system-winlog": {
|
"system-winlog": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
|
||||||
"preserve_original_event": false
|
|
||||||
},
|
|
||||||
"streams": {
|
"streams": {
|
||||||
"system.application": {
|
"system.application": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
|
"preserve_original_event": false,
|
||||||
|
"ignore_older": "72h",
|
||||||
|
"language": 0,
|
||||||
"tags": []
|
"tags": []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"system.security": {
|
"system.security": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
|
"preserve_original_event": false,
|
||||||
|
"ignore_older": "72h",
|
||||||
|
"language": 0,
|
||||||
|
"tags": []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"system.system": {
|
||||||
|
"enabled": true,
|
||||||
|
"vars": {
|
||||||
|
"preserve_original_event": false,
|
||||||
|
"ignore_older": "72h",
|
||||||
|
"language": 0,
|
||||||
"tags": []
|
"tags": []
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"system-system/metrics": {
|
"system-system/metrics": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
"logs-logfile": {
|
"logs-logfile": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"streams": {
|
"streams": {
|
||||||
"log.log": {
|
"log.logs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
"paths": [
|
"paths": [
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
"logs-logfile": {
|
"logs-logfile": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"streams": {
|
"streams": {
|
||||||
"log.log": {
|
"log.logs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
"paths": [
|
"paths": [
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
"logs-logfile": {
|
"logs-logfile": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"streams": {
|
"streams": {
|
||||||
"log.log": {
|
"log.logs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
"paths": [
|
"paths": [
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
"logs-logfile": {
|
"logs-logfile": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"streams": {
|
"streams": {
|
||||||
"log.log": {
|
"log.logs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
"paths": [
|
"paths": [
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
"logs-logfile": {
|
"logs-logfile": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"streams": {
|
"streams": {
|
||||||
"log.log": {
|
"log.logs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
"paths": [
|
"paths": [
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
"logs-logfile": {
|
"logs-logfile": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"streams": {
|
"streams": {
|
||||||
"log.log": {
|
"log.logs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
"paths": [
|
"paths": [
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
"logs-logfile": {
|
"logs-logfile": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"streams": {
|
"streams": {
|
||||||
"log.log": {
|
"log.logs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
"paths": [
|
"paths": [
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
"logs-logfile": {
|
"logs-logfile": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"streams": {
|
"streams": {
|
||||||
"log.log": {
|
"log.logs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
"paths": [
|
"paths": [
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
"logs-logfile": {
|
"logs-logfile": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"streams": {
|
"streams": {
|
||||||
"log.log": {
|
"log.logs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
"paths": [
|
"paths": [
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
"logs-logfile": {
|
"logs-logfile": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"streams": {
|
"streams": {
|
||||||
"log.log": {
|
"log.logs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"vars": {
|
"vars": {
|
||||||
"paths": [
|
"paths": [
|
||||||
|
|||||||
@@ -1,106 +0,0 @@
|
|||||||
{
|
|
||||||
"package": {
|
|
||||||
"name": "elasticsearch",
|
|
||||||
"version": ""
|
|
||||||
},
|
|
||||||
"name": "elasticsearch-logs",
|
|
||||||
"namespace": "default",
|
|
||||||
"description": "Elasticsearch Logs",
|
|
||||||
"policy_id": "so-grid-nodes_heavy",
|
|
||||||
"inputs": {
|
|
||||||
"elasticsearch-logfile": {
|
|
||||||
"enabled": true,
|
|
||||||
"streams": {
|
|
||||||
"elasticsearch.audit": {
|
|
||||||
"enabled": false,
|
|
||||||
"vars": {
|
|
||||||
"paths": [
|
|
||||||
"/var/log/elasticsearch/*_audit.json"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"elasticsearch.deprecation": {
|
|
||||||
"enabled": false,
|
|
||||||
"vars": {
|
|
||||||
"paths": [
|
|
||||||
"/var/log/elasticsearch/*_deprecation.json"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"elasticsearch.gc": {
|
|
||||||
"enabled": false,
|
|
||||||
"vars": {
|
|
||||||
"paths": [
|
|
||||||
"/var/log/elasticsearch/gc.log.[0-9]*",
|
|
||||||
"/var/log/elasticsearch/gc.log"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"elasticsearch.server": {
|
|
||||||
"enabled": true,
|
|
||||||
"vars": {
|
|
||||||
"paths": [
|
|
||||||
"/opt/so/log/elasticsearch/*.log"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"elasticsearch.slowlog": {
|
|
||||||
"enabled": false,
|
|
||||||
"vars": {
|
|
||||||
"paths": [
|
|
||||||
"/var/log/elasticsearch/*_index_search_slowlog.json",
|
|
||||||
"/var/log/elasticsearch/*_index_indexing_slowlog.json"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"elasticsearch-elasticsearch/metrics": {
|
|
||||||
"enabled": false,
|
|
||||||
"vars": {
|
|
||||||
"hosts": [
|
|
||||||
"http://localhost:9200"
|
|
||||||
],
|
|
||||||
"scope": "node"
|
|
||||||
},
|
|
||||||
"streams": {
|
|
||||||
"elasticsearch.stack_monitoring.ccr": {
|
|
||||||
"enabled": false
|
|
||||||
},
|
|
||||||
"elasticsearch.stack_monitoring.cluster_stats": {
|
|
||||||
"enabled": false
|
|
||||||
},
|
|
||||||
"elasticsearch.stack_monitoring.enrich": {
|
|
||||||
"enabled": false
|
|
||||||
},
|
|
||||||
"elasticsearch.stack_monitoring.index": {
|
|
||||||
"enabled": false
|
|
||||||
},
|
|
||||||
"elasticsearch.stack_monitoring.index_recovery": {
|
|
||||||
"enabled": false,
|
|
||||||
"vars": {
|
|
||||||
"active.only": true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"elasticsearch.stack_monitoring.index_summary": {
|
|
||||||
"enabled": false
|
|
||||||
},
|
|
||||||
"elasticsearch.stack_monitoring.ml_job": {
|
|
||||||
"enabled": false
|
|
||||||
},
|
|
||||||
"elasticsearch.stack_monitoring.node": {
|
|
||||||
"enabled": false
|
|
||||||
},
|
|
||||||
"elasticsearch.stack_monitoring.node_stats": {
|
|
||||||
"enabled": false
|
|
||||||
},
|
|
||||||
"elasticsearch.stack_monitoring.pending_tasks": {
|
|
||||||
"enabled": false
|
|
||||||
},
|
|
||||||
"elasticsearch.stack_monitoring.shard": {
|
|
||||||
"enabled": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
{
|
|
||||||
"package": {
|
|
||||||
"name": "log",
|
|
||||||
"version": ""
|
|
||||||
},
|
|
||||||
"name": "kratos-logs",
|
|
||||||
"namespace": "so",
|
|
||||||
"description": "Kratos logs",
|
|
||||||
"policy_id": "so-grid-nodes_heavy",
|
|
||||||
"inputs": {
|
|
||||||
"logs-logfile": {
|
|
||||||
"enabled": true,
|
|
||||||
"streams": {
|
|
||||||
"log.log": {
|
|
||||||
"enabled": true,
|
|
||||||
"vars": {
|
|
||||||
"paths": [
|
|
||||||
"/opt/so/log/kratos/kratos.log"
|
|
||||||
],
|
|
||||||
"data_stream.dataset": "kratos",
|
|
||||||
"tags": ["so-kratos"],
|
|
||||||
"processors": "- decode_json_fields:\n fields: [\"message\"]\n target: \"\"\n add_error_key: true \n- add_fields:\n target: event\n fields:\n category: iam\n module: kratos",
|
|
||||||
"custom": "pipeline: kratos"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
"name": "osquery_manager",
|
"name": "osquery_manager",
|
||||||
"version": ""
|
"version": ""
|
||||||
},
|
},
|
||||||
"name": "osquery-grid-nodes",
|
"name": "osquery-grid-nodes_heavy",
|
||||||
"namespace": "default",
|
"namespace": "default",
|
||||||
"policy_id": "so-grid-nodes_heavy",
|
"policy_id": "so-grid-nodes_heavy",
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
|||||||
@@ -1,76 +0,0 @@
|
|||||||
{
|
|
||||||
"package": {
|
|
||||||
"name": "redis",
|
|
||||||
"version": ""
|
|
||||||
},
|
|
||||||
"name": "redis-logs",
|
|
||||||
"namespace": "default",
|
|
||||||
"description": "Redis logs",
|
|
||||||
"policy_id": "so-grid-nodes_heavy",
|
|
||||||
"inputs": {
|
|
||||||
"redis-logfile": {
|
|
||||||
"enabled": true,
|
|
||||||
"streams": {
|
|
||||||
"redis.log": {
|
|
||||||
"enabled": true,
|
|
||||||
"vars": {
|
|
||||||
"paths": [
|
|
||||||
"/opt/so/log/redis/redis.log"
|
|
||||||
],
|
|
||||||
"tags": [
|
|
||||||
"redis-log"
|
|
||||||
],
|
|
||||||
"preserve_original_event": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"redis-redis": {
|
|
||||||
"enabled": false,
|
|
||||||
"streams": {
|
|
||||||
"redis.slowlog": {
|
|
||||||
"enabled": false,
|
|
||||||
"vars": {
|
|
||||||
"hosts": [
|
|
||||||
"127.0.0.1:6379"
|
|
||||||
],
|
|
||||||
"password": ""
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"redis-redis/metrics": {
|
|
||||||
"enabled": false,
|
|
||||||
"vars": {
|
|
||||||
"hosts": [
|
|
||||||
"127.0.0.1:6379"
|
|
||||||
],
|
|
||||||
"idle_timeout": "20s",
|
|
||||||
"maxconn": 10,
|
|
||||||
"network": "tcp",
|
|
||||||
"password": ""
|
|
||||||
},
|
|
||||||
"streams": {
|
|
||||||
"redis.info": {
|
|
||||||
"enabled": false,
|
|
||||||
"vars": {
|
|
||||||
"period": "10s"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"redis.key": {
|
|
||||||
"enabled": false,
|
|
||||||
"vars": {
|
|
||||||
"key.patterns": "- limit: 20\n pattern: *\n",
|
|
||||||
"period": "10s"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"redis.keyspace": {
|
|
||||||
"enabled": false,
|
|
||||||
"vars": {
|
|
||||||
"period": "10s"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
{
|
|
||||||
"package": {
|
|
||||||
"name": "log",
|
|
||||||
"version": ""
|
|
||||||
},
|
|
||||||
"name": "soc-auth-sync-logs",
|
|
||||||
"namespace": "so",
|
|
||||||
"description": "Security Onion - Elastic Auth Sync - Logs",
|
|
||||||
"policy_id": "so-grid-nodes_heavy",
|
|
||||||
"inputs": {
|
|
||||||
"logs-logfile": {
|
|
||||||
"enabled": true,
|
|
||||||
"streams": {
|
|
||||||
"log.log": {
|
|
||||||
"enabled": true,
|
|
||||||
"vars": {
|
|
||||||
"paths": [
|
|
||||||
"/opt/so/log/soc/sync.log"
|
|
||||||
],
|
|
||||||
"data_stream.dataset": "soc",
|
|
||||||
"tags": ["so-soc"],
|
|
||||||
"processors": "- dissect:\n tokenizer: \"%{event.action}\"\n field: \"message\"\n target_prefix: \"\"\n- add_fields:\n target: event\n fields:\n category: host\n module: soc\n dataset_temp: auth_sync",
|
|
||||||
"custom": "pipeline: common"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
{
|
|
||||||
"package": {
|
|
||||||
"name": "log",
|
|
||||||
"version": ""
|
|
||||||
},
|
|
||||||
"name": "soc-salt-relay-logs",
|
|
||||||
"namespace": "so",
|
|
||||||
"description": "Security Onion - Salt Relay - Logs",
|
|
||||||
"policy_id": "so-grid-nodes_heavy",
|
|
||||||
"inputs": {
|
|
||||||
"logs-logfile": {
|
|
||||||
"enabled": true,
|
|
||||||
"streams": {
|
|
||||||
"log.log": {
|
|
||||||
"enabled": true,
|
|
||||||
"vars": {
|
|
||||||
"paths": [
|
|
||||||
"/opt/so/log/soc/salt-relay.log"
|
|
||||||
],
|
|
||||||
"data_stream.dataset": "soc",
|
|
||||||
"tags": ["so-soc"],
|
|
||||||
"processors": "- dissect:\n tokenizer: \"%{soc.ts} | %{event.action}\"\n field: \"message\"\n target_prefix: \"\"\n- add_fields:\n target: event\n fields:\n category: host\n module: soc\n dataset_temp: salt_relay",
|
|
||||||
"custom": "pipeline: common"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
{
|
|
||||||
"package": {
|
|
||||||
"name": "log",
|
|
||||||
"version": ""
|
|
||||||
},
|
|
||||||
"name": "soc-sensoroni-logs",
|
|
||||||
"namespace": "so",
|
|
||||||
"description": "Security Onion - Sensoroni - Logs",
|
|
||||||
"policy_id": "so-grid-nodes_heavy",
|
|
||||||
"inputs": {
|
|
||||||
"logs-logfile": {
|
|
||||||
"enabled": true,
|
|
||||||
"streams": {
|
|
||||||
"log.log": {
|
|
||||||
"enabled": true,
|
|
||||||
"vars": {
|
|
||||||
"paths": [
|
|
||||||
"/opt/so/log/sensoroni/sensoroni.log"
|
|
||||||
],
|
|
||||||
"data_stream.dataset": "soc",
|
|
||||||
"tags": [],
|
|
||||||
"processors": "- decode_json_fields:\n fields: [\"message\"]\n target: \"sensoroni\"\n process_array: true\n max_depth: 2\n add_error_key: true \n- add_fields:\n target: event\n fields:\n category: host\n module: soc\n dataset_temp: sensoroni\n- rename:\n fields:\n - from: \"sensoroni.fields.sourceIp\"\n to: \"source.ip\"\n - from: \"sensoroni.fields.status\"\n to: \"http.response.status_code\"\n - from: \"sensoroni.fields.method\"\n to: \"http.request.method\"\n - from: \"sensoroni.fields.path\"\n to: \"url.path\"\n - from: \"sensoroni.message\"\n to: \"event.action\"\n - from: \"sensoroni.level\"\n to: \"log.level\"\n ignore_missing: true",
|
|
||||||
"custom": "pipeline: common"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
{
|
|
||||||
"package": {
|
|
||||||
"name": "log",
|
|
||||||
"version": ""
|
|
||||||
},
|
|
||||||
"name": "soc-server-logs",
|
|
||||||
"namespace": "so",
|
|
||||||
"description": "Security Onion Console Logs",
|
|
||||||
"policy_id": "so-grid-nodes_heavy",
|
|
||||||
"inputs": {
|
|
||||||
"logs-logfile": {
|
|
||||||
"enabled": true,
|
|
||||||
"streams": {
|
|
||||||
"log.log": {
|
|
||||||
"enabled": true,
|
|
||||||
"vars": {
|
|
||||||
"paths": [
|
|
||||||
"/opt/so/log/soc/sensoroni-server.log"
|
|
||||||
],
|
|
||||||
"data_stream.dataset": "soc",
|
|
||||||
"tags": ["so-soc"],
|
|
||||||
"processors": "- decode_json_fields:\n fields: [\"message\"]\n target: \"soc\"\n process_array: true\n max_depth: 2\n add_error_key: true \n- add_fields:\n target: event\n fields:\n category: host\n module: soc\n dataset_temp: server\n- rename:\n fields:\n - from: \"soc.fields.sourceIp\"\n to: \"source.ip\"\n - from: \"soc.fields.status\"\n to: \"http.response.status_code\"\n - from: \"soc.fields.method\"\n to: \"http.request.method\"\n - from: \"soc.fields.path\"\n to: \"url.path\"\n - from: \"soc.message\"\n to: \"event.action\"\n - from: \"soc.level\"\n to: \"log.level\"\n ignore_missing: true",
|
|
||||||
"custom": "pipeline: common"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -4,7 +4,7 @@
|
|||||||
"name": "system",
|
"name": "system",
|
||||||
"version": ""
|
"version": ""
|
||||||
},
|
},
|
||||||
"name": "system-grid-nodes",
|
"name": "system-grid-nodes_heavy",
|
||||||
"namespace": "default",
|
"namespace": "default",
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"system-logfile": {
|
"system-logfile": {
|
||||||
|
|||||||
@@ -14,12 +14,14 @@ run_installer:
|
|||||||
- name: salt://elasticfleet/files/so_agent-installers/so-elastic-agent_linux_amd64
|
- name: salt://elasticfleet/files/so_agent-installers/so-elastic-agent_linux_amd64
|
||||||
- cwd: /opt/so
|
- cwd: /opt/so
|
||||||
- args: -token={{ GRIDNODETOKENGENERAL }}
|
- args: -token={{ GRIDNODETOKENGENERAL }}
|
||||||
|
- retry: True
|
||||||
{% else %}
|
{% else %}
|
||||||
run_installer:
|
run_installer:
|
||||||
cmd.script:
|
cmd.script:
|
||||||
- name: salt://elasticfleet/files/so_agent-installers/so-elastic-agent_linux_amd64
|
- name: salt://elasticfleet/files/so_agent-installers/so-elastic-agent_linux_amd64
|
||||||
- cwd: /opt/so
|
- cwd: /opt/so
|
||||||
- args: -token={{ GRIDNODETOKENHEAVY }}
|
- args: -token={{ GRIDNODETOKENHEAVY }}
|
||||||
|
- retry: True
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|||||||
@@ -12,10 +12,11 @@ elasticfleet:
|
|||||||
config:
|
config:
|
||||||
server:
|
server:
|
||||||
custom_fqdn:
|
custom_fqdn:
|
||||||
description: Custom FQDN for Agents to connect to.
|
description: Custom FQDN for Agents to connect to. One per line.
|
||||||
global: True
|
global: True
|
||||||
helpLink: elastic-fleet.html
|
helpLink: elastic-fleet.html
|
||||||
advanced: True
|
advanced: True
|
||||||
|
forcedType: "[]string"
|
||||||
enable_auto_configuration:
|
enable_auto_configuration:
|
||||||
description: Enable auto-configuration of Logstash Outputs & Fleet Host URLs.
|
description: Enable auto-configuration of Logstash Outputs & Fleet Host URLs.
|
||||||
global: True
|
global: True
|
||||||
|
|||||||
@@ -56,6 +56,11 @@ elastic_fleet_package_version_check() {
|
|||||||
curl -s -K /opt/so/conf/elasticsearch/curl.config -b "sid=$SESSIONCOOKIE" -L -X GET "localhost:5601/api/fleet/epm/packages/$PACKAGE" | jq -r '.item.version'
|
curl -s -K /opt/so/conf/elasticsearch/curl.config -b "sid=$SESSIONCOOKIE" -L -X GET "localhost:5601/api/fleet/epm/packages/$PACKAGE" | jq -r '.item.version'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
elastic_fleet_package_latest_version_check() {
|
||||||
|
PACKAGE=$1
|
||||||
|
curl -s -K /opt/so/conf/elasticsearch/curl.config -b "sid=$SESSIONCOOKIE" -L -X GET "localhost:5601/api/fleet/epm/packages/$PACKAGE" | jq -r '.item.latestVersion'
|
||||||
|
}
|
||||||
|
|
||||||
elastic_fleet_package_install() {
|
elastic_fleet_package_install() {
|
||||||
PKGKEY=$1
|
PKGKEY=$1
|
||||||
curl -s -K /opt/so/conf/elasticsearch/curl.config -b "sid=$SESSIONCOOKIE" -L -X POST -H 'kbn-xsrf: true' "localhost:5601/api/fleet/epm/packages/$PKGKEY"
|
curl -s -K /opt/so/conf/elasticsearch/curl.config -b "sid=$SESSIONCOOKIE" -L -X POST -H 'kbn-xsrf: true' "localhost:5601/api/fleet/epm/packages/$PKGKEY"
|
||||||
|
|||||||
@@ -9,16 +9,17 @@
|
|||||||
RETURN_CODE=0
|
RETURN_CODE=0
|
||||||
|
|
||||||
if [ ! -f /opt/so/state/eaintegrations.txt ]; then
|
if [ ! -f /opt/so/state/eaintegrations.txt ]; then
|
||||||
|
# First, check for any package upgrades
|
||||||
|
/usr/sbin/so-elastic-fleet-package-upgrade
|
||||||
|
|
||||||
# Initial Endpoints
|
# Initial Endpoints
|
||||||
for INTEGRATION in /opt/so/conf/elastic-fleet/integrations/endpoints-initial/*.json
|
for INTEGRATION in /opt/so/conf/elastic-fleet/integrations/endpoints-initial/*.json
|
||||||
do
|
do
|
||||||
printf "\n\nInitial Endpoints Policy - Loading $INTEGRATION\n"
|
printf "\n\nInitial Endpoints Policy - Loading $INTEGRATION\n"
|
||||||
elastic_fleet_integration_check "endpoints-initial" "$INTEGRATION"
|
elastic_fleet_integration_check "endpoints-initial" "$INTEGRATION"
|
||||||
if [ -n "$INTEGRATION_ID" ]; then
|
if [ -n "$INTEGRATION_ID" ]; then
|
||||||
if [ "$NAME" != "elastic-defend-endpoints" ]; then
|
printf "\n\nIntegration $NAME exists - Updating integration\n"
|
||||||
printf "\n\nIntegration $NAME exists - Updating integration\n"
|
elastic_fleet_integration_update "$INTEGRATION_ID" "@$INTEGRATION"
|
||||||
elastic_fleet_integration_update "$INTEGRATION_ID" "@$INTEGRATION"
|
|
||||||
fi
|
|
||||||
else
|
else
|
||||||
printf "\n\nIntegration does not exist - Creating integration\n"
|
printf "\n\nIntegration does not exist - Creating integration\n"
|
||||||
elastic_fleet_integration_create "@$INTEGRATION"
|
elastic_fleet_integration_create "@$INTEGRATION"
|
||||||
@@ -35,9 +36,7 @@ if [ ! -f /opt/so/state/eaintegrations.txt ]; then
|
|||||||
elastic_fleet_integration_update "$INTEGRATION_ID" "@$INTEGRATION"
|
elastic_fleet_integration_update "$INTEGRATION_ID" "@$INTEGRATION"
|
||||||
else
|
else
|
||||||
printf "\n\nIntegration does not exist - Creating integration\n"
|
printf "\n\nIntegration does not exist - Creating integration\n"
|
||||||
if [ "$NAME" != "elasticsearch-logs" ]; then
|
elastic_fleet_integration_create "@$INTEGRATION"
|
||||||
elastic_fleet_integration_create "@$INTEGRATION"
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
if [[ "$RETURN_CODE" != "1" ]]; then
|
if [[ "$RETURN_CODE" != "1" ]]; then
|
||||||
|
|||||||
15
salt/elasticfleet/tools/sbin/so-elastic-fleet-package-list
Executable file
15
salt/elasticfleet/tools/sbin/so-elastic-fleet-package-list
Executable file
@@ -0,0 +1,15 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||||
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
|
# Elastic License 2.0.
|
||||||
|
|
||||||
|
. /usr/sbin/so-elastic-fleet-common
|
||||||
|
|
||||||
|
# Let's snag a cookie from Kibana
|
||||||
|
SESSIONCOOKIE=$(curl -s -K /opt/so/conf/elasticsearch/curl.config -c - -X GET http://localhost:5601/ | grep sid | awk '{print $7}')
|
||||||
|
|
||||||
|
# List configured package policies
|
||||||
|
curl -s -K /opt/so/conf/elasticsearch/curl.config -b "sid=$SESSIONCOOKIE" -L -X GET "localhost:5601/api/fleet/epm/packages" -H 'kbn-xsrf: true' | jq
|
||||||
|
|
||||||
|
echo
|
||||||
@@ -11,6 +11,12 @@
|
|||||||
. /usr/sbin/so-common
|
. /usr/sbin/so-common
|
||||||
. /usr/sbin/so-elastic-fleet-common
|
. /usr/sbin/so-elastic-fleet-common
|
||||||
|
|
||||||
|
LOG="/opt/so/log/elasticfleet/so-elastic-agent-gen-installers.log"
|
||||||
|
|
||||||
|
# Check to see if we are already running
|
||||||
|
NUM_RUNNING=$(pgrep -cf "/bin/bash /sbin/so-elastic-agent-gen-installers")
|
||||||
|
[ "$NUM_RUNNING" -gt 1 ] && echo "$(date) - $NUM_RUNNING gen installers script processes running...exiting." >>$LOG && exit 0
|
||||||
|
|
||||||
for i in {1..30}
|
for i in {1..30}
|
||||||
do
|
do
|
||||||
ENROLLMENTOKEN=$(curl -K /opt/so/conf/elasticsearch/curl.config -L "localhost:5601/api/fleet/enrollment_api_keys" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' | jq .list | jq -r -c '.[] | select(.policy_id | contains("endpoints-initial")) | .api_key')
|
ENROLLMENTOKEN=$(curl -K /opt/so/conf/elasticsearch/curl.config -L "localhost:5601/api/fleet/enrollment_api_keys" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' | jq .list | jq -r -c '.[] | select(.policy_id | contains("endpoints-initial")) | .api_key')
|
||||||
|
|||||||
@@ -0,0 +1,38 @@
|
|||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0; you may not use
|
||||||
|
# this file except in compliance with the Elastic License 2.0.
|
||||||
|
|
||||||
|
. /usr/sbin/so-common
|
||||||
|
|
||||||
|
# Only run on Managers
|
||||||
|
if ! is_manager_node; then
|
||||||
|
printf "Not a Manager Node... Exiting"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Get current list of Grid Node Agents that need to be upgraded
|
||||||
|
RAW_JSON=$(curl -K /opt/so/conf/elasticsearch/curl.config -L "http://localhost:5601/api/fleet/agents?perPage=20&page=1&kuery=policy_id%20%3A%20so-grid-nodes_%2A&showInactive=false&showUpgradeable=true&getStatusSummary=true")
|
||||||
|
|
||||||
|
# Check to make sure that the server responded with good data - else, bail from script
|
||||||
|
CHECKSUM=$(jq -r '.page' <<< "$RAW_JSON")
|
||||||
|
if [ "$CHECKSUM" -ne 1 ]; then
|
||||||
|
printf "Failed to query for current Grid Agents...\n"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Generate list of Node Agents that need updates
|
||||||
|
OUTDATED_LIST=$(jq -r '.items | map(.id) | (tojson)' <<< "$RAW_JSON")
|
||||||
|
|
||||||
|
if [ "$OUTDATED_LIST" != '[]' ]; then
|
||||||
|
AGENTNUMBERS=$(jq -r '.total' <<< "$RAW_JSON")
|
||||||
|
printf "Initiating upgrades for $AGENTNUMBERS Agents to Elastic $ELASTIC_AGENT_TARBALL_VERSION...\n\n"
|
||||||
|
|
||||||
|
# Generate updated JSON payload
|
||||||
|
JSON_STRING=$(jq -n --arg ELASTICVERSION $ELASTIC_AGENT_TARBALL_VERSION --arg UPDATELIST $OUTDATED_LIST '{"version": $ELASTICVERSION,"agents": $UPDATELIST }')
|
||||||
|
|
||||||
|
# Update Node Agents
|
||||||
|
curl -K /opt/so/conf/elasticsearch/curl.config -L -X POST "http://localhost:5601/api/fleet/agents/bulk_upgrade" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' -d "$JSON_STRING"
|
||||||
|
else
|
||||||
|
printf "No Agents need updates... Exiting\n\n"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
16
salt/elasticfleet/tools/sbin_jinja/so-elastic-agent-inspect
Executable file
16
salt/elasticfleet/tools/sbin_jinja/so-elastic-agent-inspect
Executable file
@@ -0,0 +1,16 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||||
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
|
# Elastic License 2.0.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
. /usr/sbin/so-elastic-fleet-common
|
||||||
|
|
||||||
|
{% if grains.role == 'so-heavynode' %}
|
||||||
|
docker exec so-elastic-agent /usr/share/elastic-agent/elastic-agent inspect
|
||||||
|
{% else %}
|
||||||
|
/bin/elastic-agent inspect
|
||||||
|
{% endif %}
|
||||||
16
salt/elasticfleet/tools/sbin_jinja/so-elastic-agent-restart
Executable file
16
salt/elasticfleet/tools/sbin_jinja/so-elastic-agent-restart
Executable file
@@ -0,0 +1,16 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||||
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
|
# Elastic License 2.0.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
. /usr/sbin/so-elastic-fleet-common
|
||||||
|
|
||||||
|
{% if grains.role == 'so-heavynode' %}
|
||||||
|
docker exec so-elastic-agent service elastic-agent restart
|
||||||
|
{% else %}
|
||||||
|
service elastic-agent restart
|
||||||
|
{% endif %}
|
||||||
17
salt/elasticfleet/tools/sbin_jinja/so-elastic-agent-start
Executable file
17
salt/elasticfleet/tools/sbin_jinja/so-elastic-agent-start
Executable file
@@ -0,0 +1,17 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||||
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
|
# Elastic License 2.0.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
. /usr/sbin/so-elastic-fleet-common
|
||||||
|
|
||||||
|
{% if grains.role == 'so-heavynode' %}
|
||||||
|
docker exec so-elastic-agent service elastic-agent start
|
||||||
|
{% else %}
|
||||||
|
service elastic-agent start
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
17
salt/elasticfleet/tools/sbin_jinja/so-elastic-agent-status
Executable file
17
salt/elasticfleet/tools/sbin_jinja/so-elastic-agent-status
Executable file
@@ -0,0 +1,17 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||||
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
|
# Elastic License 2.0.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
. /usr/sbin/so-elastic-fleet-common
|
||||||
|
|
||||||
|
{% if grains.role == 'so-heavynode' %}
|
||||||
|
docker exec so-elastic-agent /usr/share/elastic-agent/elastic-agent status
|
||||||
|
{% else %}
|
||||||
|
/bin/elastic-agent status
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
17
salt/elasticfleet/tools/sbin_jinja/so-elastic-agent-stop
Executable file
17
salt/elasticfleet/tools/sbin_jinja/so-elastic-agent-stop
Executable file
@@ -0,0 +1,17 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||||
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
|
# Elastic License 2.0.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
. /usr/sbin/so-elastic-fleet-common
|
||||||
|
|
||||||
|
{% if grains.role == 'so-heavynode' %}
|
||||||
|
docker exec so-elastic-agent service elastic-agent stop
|
||||||
|
{% else %}
|
||||||
|
service elastic-agent stop
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
17
salt/elasticfleet/tools/sbin_jinja/so-elastic-agent-version
Executable file
17
salt/elasticfleet/tools/sbin_jinja/so-elastic-agent-version
Executable file
@@ -0,0 +1,17 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||||
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
|
# Elastic License 2.0.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
. /usr/sbin/so-elastic-fleet-common
|
||||||
|
|
||||||
|
{% if grains.role == 'so-heavynode' %}
|
||||||
|
docker exec so-elastic-agent /usr/share/elastic-agent/elastic-agent version
|
||||||
|
{% else %}
|
||||||
|
/bin/elastic-agent version
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
@@ -0,0 +1,64 @@
|
|||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0; you may not use
|
||||||
|
# this file except in compliance with the Elastic License 2.0.
|
||||||
|
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
||||||
|
|
||||||
|
. /usr/sbin/so-common
|
||||||
|
|
||||||
|
# Only run on Managers
|
||||||
|
if ! is_manager_node; then
|
||||||
|
printf "Not a Manager Node... Exiting"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
function update_es_urls() {
|
||||||
|
|
||||||
|
# Generate updated JSON payload
|
||||||
|
{% if grains.role not in ['so-import', 'so-eval'] %}
|
||||||
|
JSON_STRING=$(jq -n --arg UPDATEDLIST $NEW_LIST_JSON '{"name":"so-manager_elasticsearch","type":"elasticsearch","hosts": $UPDATEDLIST,"config_yaml":""}')
|
||||||
|
{%- else %}
|
||||||
|
JSON_STRING=$(jq -n --arg UPDATEDLIST $NEW_LIST_JSON '{"name":"so-manager_elasticsearch","type":"elasticsearch","hosts": $UPDATEDLIST,"is_default":true,"is_default_monitoring":true,"config_yaml":""}')
|
||||||
|
{%- endif %}
|
||||||
|
# Update Fleet Elasticsearch URLs
|
||||||
|
curl -K /opt/so/conf/elasticsearch/curl.config -L -X PUT "localhost:5601/api/fleet/outputs/so-manager_elasticsearch" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' -d "$JSON_STRING"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Get current list of Fleet Elasticsearch URLs
|
||||||
|
RAW_JSON=$(curl -K /opt/so/conf/elasticsearch/curl.config 'http://localhost:5601/api/fleet/outputs/so-manager_elasticsearch')
|
||||||
|
|
||||||
|
# Check to make sure that the server responded with good data - else, bail from script
|
||||||
|
CHECKSUM=$(jq -r '.item.id' <<< "$RAW_JSON")
|
||||||
|
if [ "$CHECKSUM" != "so-manager_elasticsearch" ]; then
|
||||||
|
printf "Failed to query for current Fleet Server Elasticsearch URLs..."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Get the current list of Fleet Server Elasticsearch & hash them
|
||||||
|
CURRENT_LIST=$(jq -c -r '.item.hosts' <<< "$RAW_JSON")
|
||||||
|
CURRENT_HASH=$(sha1sum <<< "$CURRENT_LIST" | awk '{print $1}')
|
||||||
|
|
||||||
|
# Create array & add initial elements
|
||||||
|
NEW_LIST=("https://{{ GLOBALS.hostname }}:9200")
|
||||||
|
|
||||||
|
|
||||||
|
# Sort & hash the new list of Fleet Elasticsearch URLs
|
||||||
|
NEW_LIST_JSON=$(jq --compact-output --null-input '$ARGS.positional' --args -- "${NEW_LIST[@]}")
|
||||||
|
NEW_HASH=$(sha1sum <<< "$NEW_LIST_JSON" | awk '{print $1}')
|
||||||
|
|
||||||
|
# Compare the current & new list of URLs - if different, update the Fleet Elasticsearch URLs
|
||||||
|
if [ "$1" = "--force" ]; then
|
||||||
|
printf "\nUpdating List, since --force was specified.\n"
|
||||||
|
printf "Current List: $CURRENT_LIST\nNew List: $NEW_LIST_JSON\n"
|
||||||
|
update_es_urls
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$NEW_HASH" = "$CURRENT_HASH" ]; then
|
||||||
|
printf "\nHashes match - no update needed.\n"
|
||||||
|
printf "Current List: $CURRENT_LIST\nNew List: $NEW_LIST_JSON\n"
|
||||||
|
exit 0
|
||||||
|
else
|
||||||
|
printf "\nHashes don't match - update needed.\n"
|
||||||
|
printf "Current List: $CURRENT_LIST\nNew List: $NEW_LIST_JSON\n"
|
||||||
|
update_es_urls
|
||||||
|
fi
|
||||||
@@ -2,7 +2,15 @@
|
|||||||
# or more contributor license agreements. Licensed under the Elastic License 2.0; you may not use
|
# or more contributor license agreements. Licensed under the Elastic License 2.0; you may not use
|
||||||
# this file except in compliance with the Elastic License 2.0.
|
# this file except in compliance with the Elastic License 2.0.
|
||||||
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
||||||
{% set CUSTOMFQDN = salt['pillar.get']('elasticfleet:config:server:custom_fqdn') %}
|
{% from 'elasticfleet/map.jinja' import ELASTICFLEETMERGED %}
|
||||||
|
|
||||||
|
. /usr/sbin/so-common
|
||||||
|
|
||||||
|
# Only run on Managers
|
||||||
|
if ! is_manager_node; then
|
||||||
|
printf "Not a Manager Node... Exiting"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
function update_logstash_outputs() {
|
function update_logstash_outputs() {
|
||||||
# Generate updated JSON payload
|
# Generate updated JSON payload
|
||||||
@@ -27,15 +35,20 @@ CURRENT_LIST=$(jq -c -r '.item.hosts' <<< "$RAW_JSON")
|
|||||||
CURRENT_HASH=$(sha1sum <<< "$CURRENT_LIST" | awk '{print $1}')
|
CURRENT_HASH=$(sha1sum <<< "$CURRENT_LIST" | awk '{print $1}')
|
||||||
|
|
||||||
# Create array & add initial elements
|
# Create array & add initial elements
|
||||||
if [ "{{ GLOBALS.manager_ip }}" = "{{ GLOBALS.url_base }}" ]; then
|
if [ "{{ GLOBALS.hostname }}" = "{{ GLOBALS.url_base }}" ]; then
|
||||||
NEW_LIST=("{{ GLOBALS.url_base }}:5055")
|
NEW_LIST=("{{ GLOBALS.url_base }}:5055")
|
||||||
else
|
else
|
||||||
NEW_LIST=("{{ GLOBALS.url_base }}:5055" "{{ GLOBALS.manager_ip }}:5055")
|
NEW_LIST=("{{ GLOBALS.url_base }}:5055" "{{ GLOBALS.hostname }}:5055")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
{% if CUSTOMFQDN != "" %}
|
# Query for FQDN entries & add them to the list
|
||||||
# Add Custom Hostname to list
|
{% if ELASTICFLEETMERGED.config.server.custom_fqdn | length > 0 %}
|
||||||
NEW_LIST+=("{{ CUSTOMFQDN }}:5055")
|
CUSTOMFQDNLIST=('{{ ELASTICFLEETMERGED.config.server.custom_fqdn | join(' ') }}')
|
||||||
|
readarray -t -d ' ' CUSTOMFQDN < <(printf '%s' "$CUSTOMFQDNLIST")
|
||||||
|
for CUSTOMNAME in "${CUSTOMFQDN[@]}"
|
||||||
|
do
|
||||||
|
NEW_LIST+=("$CUSTOMNAME:5055")
|
||||||
|
done
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
# Query for the current Grid Nodes that are running Logstash
|
# Query for the current Grid Nodes that are running Logstash
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0; you may not use
|
||||||
|
# this file except in compliance with the Elastic License 2.0.
|
||||||
|
{%- import_yaml 'elasticfleet/defaults.yaml' as ELASTICFLEETDEFAULTS %}
|
||||||
|
{%- set SUPPORTED_PACKAGES = salt['pillar.get']('elasticfleet:packages', default=ELASTICFLEETDEFAULTS.elasticfleet.packages, merge=True) %}
|
||||||
|
|
||||||
|
. /usr/sbin/so-elastic-fleet-common
|
||||||
|
|
||||||
|
{%- for PACKAGE in SUPPORTED_PACKAGES %}
|
||||||
|
echo "Upgrading {{ PACKAGE }} package..."
|
||||||
|
VERSION=$(elastic_fleet_package_latest_version_check "{{ PACKAGE }}")
|
||||||
|
elastic_fleet_package_install "{{ PACKAGE }}-$VERSION"
|
||||||
|
echo
|
||||||
|
{%- endfor %}
|
||||||
|
echo
|
||||||
@@ -6,6 +6,12 @@
|
|||||||
# this file except in compliance with the Elastic License 2.0.
|
# this file except in compliance with the Elastic License 2.0.
|
||||||
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
||||||
|
|
||||||
|
{% if GLOBALS.os_family == 'Debian' %}
|
||||||
|
INTCA=/etc/ssl/certs/intca.crt
|
||||||
|
{% else %}
|
||||||
|
INTCA=/etc/pki/tls/certs/intca.crt
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
. /usr/sbin/so-elastic-fleet-common
|
. /usr/sbin/so-elastic-fleet-common
|
||||||
|
|
||||||
printf "\n### Create ES Token ###\n"
|
printf "\n### Create ES Token ###\n"
|
||||||
@@ -13,7 +19,7 @@ ESTOKEN=$(curl -K /opt/so/conf/elasticsearch/curl.config -L -X POST "localhost:5
|
|||||||
|
|
||||||
### Create Outputs & Fleet URLs ###
|
### Create Outputs & Fleet URLs ###
|
||||||
printf "\nAdd Manager Elasticsearch Output...\n"
|
printf "\nAdd Manager Elasticsearch Output...\n"
|
||||||
ESCACRT=$(openssl x509 -in /etc/pki/tls/certs/intca.crt)
|
ESCACRT=$(openssl x509 -in $INTCA)
|
||||||
JSON_STRING=$( jq -n \
|
JSON_STRING=$( jq -n \
|
||||||
--arg ESCACRT "$ESCACRT" \
|
--arg ESCACRT "$ESCACRT" \
|
||||||
'{"name":"so-manager_elasticsearch","id":"so-manager_elasticsearch","type":"elasticsearch","hosts":["https://{{ GLOBALS.manager_ip }}:9200","https://{{ GLOBALS.manager }}:9200"],"is_default":true,"is_default_monitoring":true,"config_yaml":"","ssl":{"certificate_authorities": [$ESCACRT]}}' )
|
'{"name":"so-manager_elasticsearch","id":"so-manager_elasticsearch","type":"elasticsearch","hosts":["https://{{ GLOBALS.manager_ip }}:9200","https://{{ GLOBALS.manager }}:9200"],"is_default":true,"is_default_monitoring":true,"config_yaml":"","ssl":{"certificate_authorities": [$ESCACRT]}}' )
|
||||||
@@ -22,9 +28,9 @@ printf "\n\n"
|
|||||||
|
|
||||||
printf "\nCreate Logstash Output Config if node is not an Import or Eval install\n"
|
printf "\nCreate Logstash Output Config if node is not an Import or Eval install\n"
|
||||||
{% if grains.role not in ['so-import', 'so-eval'] %}
|
{% if grains.role not in ['so-import', 'so-eval'] %}
|
||||||
LOGSTASHCRT=$(openssl x509 -in /etc/pki/elasticfleet-agent.crt)
|
LOGSTASHCRT=$(openssl x509 -in /etc/pki/elasticfleet-logstash.crt)
|
||||||
LOGSTASHKEY=$(openssl rsa -in /etc/pki/elasticfleet-agent.key)
|
LOGSTASHKEY=$(openssl rsa -in /etc/pki/elasticfleet-logstash.key)
|
||||||
LOGSTASHCA=$(openssl x509 -in /etc/pki/tls/certs/intca.crt)
|
LOGSTASHCA=$(openssl x509 -in $INTCA)
|
||||||
JSON_STRING=$( jq -n \
|
JSON_STRING=$( jq -n \
|
||||||
--arg LOGSTASHCRT "$LOGSTASHCRT" \
|
--arg LOGSTASHCRT "$LOGSTASHCRT" \
|
||||||
--arg LOGSTASHKEY "$LOGSTASHKEY" \
|
--arg LOGSTASHKEY "$LOGSTASHKEY" \
|
||||||
@@ -35,12 +41,12 @@ curl -K /opt/so/conf/elasticsearch/curl.config -L -X POST "localhost:5601/api/fl
|
|||||||
printf "\n\n"
|
printf "\n\n"
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
|
|
||||||
# Add Manager IP & URL Base to Fleet Host URLs
|
# Add Manager Hostname & URL Base to Fleet Host URLs
|
||||||
printf "\nAdd SO-Manager Fleet URL\n"
|
printf "\nAdd SO-Manager Fleet URL\n"
|
||||||
if [ "{{ GLOBALS.manager_ip }}" = "{{ GLOBALS.url_base }}" ]; then
|
if [ "{{ GLOBALS.hostname }}" = "{{ GLOBALS.url_base }}" ]; then
|
||||||
JSON_STRING=$( jq -n '{"id":"grid-default","name":"grid-default","is_default":true,"host_urls":["https://{{ GLOBALS.url_base }}:8220"]}')
|
JSON_STRING=$( jq -n '{"id":"grid-default","name":"grid-default","is_default":true,"host_urls":["https://{{ GLOBALS.url_base }}:8220"]}')
|
||||||
else
|
else
|
||||||
JSON_STRING=$( jq -n '{"id":"grid-default","name":"grid-default","is_default":true,"host_urls":["https://{{ GLOBALS.url_base }}:8220", "https://{{ GLOBALS.manager_ip }}:8220"]}')
|
JSON_STRING=$( jq -n '{"id":"grid-default","name":"grid-default","is_default":true,"host_urls":["https://{{ GLOBALS.url_base }}:8220", "https://{{ GLOBALS.hostname }}:8220"]}')
|
||||||
fi
|
fi
|
||||||
|
|
||||||
## This array replaces whatever URLs are currently configured
|
## This array replaces whatever URLs are currently configured
|
||||||
|
|||||||
@@ -0,0 +1,80 @@
|
|||||||
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
|
# or more contributor license agreements. Licensed under the Elastic License 2.0; you may not use
|
||||||
|
# this file except in compliance with the Elastic License 2.0.
|
||||||
|
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
||||||
|
{% from 'elasticfleet/map.jinja' import ELASTICFLEETMERGED %}
|
||||||
|
|
||||||
|
. /usr/sbin/so-common
|
||||||
|
|
||||||
|
# Only run on Managers
|
||||||
|
if ! is_manager_node; then
|
||||||
|
printf "Not a Manager Node... Exiting"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
function update_fleet_urls() {
|
||||||
|
# Generate updated JSON payload
|
||||||
|
JSON_STRING=$(jq -n --arg UPDATEDLIST $NEW_LIST_JSON '{"name":"grid-default","is_default":true,"host_urls": $UPDATEDLIST}')
|
||||||
|
|
||||||
|
# Update Fleet Server URLs
|
||||||
|
curl -K /opt/so/conf/elasticsearch/curl.config -L -X PUT "localhost:5601/api/fleet/fleet_server_hosts/grid-default" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' -d "$JSON_STRING"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Get current list of Fleet Server URLs
|
||||||
|
RAW_JSON=$(curl -K /opt/so/conf/elasticsearch/curl.config 'http://localhost:5601/api/fleet/fleet_server_hosts/grid-default')
|
||||||
|
|
||||||
|
# Check to make sure that the server responded with good data - else, bail from script
|
||||||
|
CHECKSUM=$(jq -r '.item.id' <<< "$RAW_JSON")
|
||||||
|
if [ "$CHECKSUM" != "grid-default" ]; then
|
||||||
|
printf "Failed to query for current Fleet Server URLs..."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Get the current list of Fleet Server URLs & hash them
|
||||||
|
CURRENT_LIST=$(jq -c -r '.item.host_urls' <<< "$RAW_JSON")
|
||||||
|
CURRENT_HASH=$(sha1sum <<< "$CURRENT_LIST" | awk '{print $1}')
|
||||||
|
|
||||||
|
# Create array & add initial elements
|
||||||
|
if [ "{{ GLOBALS.hostname }}" = "{{ GLOBALS.url_base }}" ]; then
|
||||||
|
NEW_LIST=("https://{{ GLOBALS.url_base }}:8220")
|
||||||
|
else
|
||||||
|
NEW_LIST=("https://{{ GLOBALS.url_base }}:8220" "https://{{ GLOBALS.hostname }}:8220")
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Query for FQDN entries & add them to the list
|
||||||
|
{% if ELASTICFLEETMERGED.config.server.custom_fqdn | length > 0 %}
|
||||||
|
CUSTOMFQDNLIST=('{{ ELASTICFLEETMERGED.config.server.custom_fqdn | join(' ') }}')
|
||||||
|
readarray -t -d ' ' CUSTOMFQDN < <(printf '%s' "$CUSTOMFQDNLIST")
|
||||||
|
for CUSTOMNAME in "${CUSTOMFQDN[@]}"
|
||||||
|
do
|
||||||
|
NEW_LIST+=("https://$CUSTOMNAME:8220")
|
||||||
|
done
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
# Query for the current Grid Nodes that are running Logstash (which includes Fleet Nodes)
|
||||||
|
LOGSTASHNODES=$(salt-call --out=json pillar.get logstash:nodes | jq '.local')
|
||||||
|
|
||||||
|
# Query for Fleet Nodes & add them to the list (Hostname)
|
||||||
|
if grep -q "fleet" <<< $LOGSTASHNODES; then
|
||||||
|
readarray -t FLEETNODES < <(jq -r ' .fleet | keys_unsorted[]' <<< $LOGSTASHNODES)
|
||||||
|
for NODE in "${FLEETNODES[@]}"
|
||||||
|
do
|
||||||
|
NEW_LIST+=("https://$NODE:8220")
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Sort & hash the new list of Fleet Server URLs
|
||||||
|
NEW_LIST_JSON=$(jq --compact-output --null-input '$ARGS.positional' --args -- "${NEW_LIST[@]}")
|
||||||
|
NEW_HASH=$(sha1sum <<< "$NEW_LIST_JSON" | awk '{print $1}')
|
||||||
|
|
||||||
|
# Compare the current & new list of URLs - if different, update the Fleet Server URLs & regenerate the agent installer
|
||||||
|
if [ "$NEW_HASH" = "$CURRENT_HASH" ]; then
|
||||||
|
printf "\nHashes match - no update needed.\n"
|
||||||
|
printf "Current List: $CURRENT_LIST\nNew List: $NEW_LIST_JSON\n"
|
||||||
|
exit 0
|
||||||
|
else
|
||||||
|
printf "\nHashes don't match - update needed.\n"
|
||||||
|
printf "Current List: $CURRENT_LIST\nNew List: $NEW_LIST_JSON\n"
|
||||||
|
update_fleet_urls
|
||||||
|
/sbin/so-elastic-agent-gen-installers >> /opt/so/log/elasticfleet/so-elastic-agent-gen-installers.log &
|
||||||
|
fi
|
||||||
@@ -81,6 +81,8 @@ elasticsearch:
|
|||||||
managed: true
|
managed: true
|
||||||
composed_of:
|
composed_of:
|
||||||
- "so-data-streams-mappings"
|
- "so-data-streams-mappings"
|
||||||
|
- "so-fleet_globals-1"
|
||||||
|
- "so-fleet_agent_id_verification-1"
|
||||||
- "so-logs-mappings"
|
- "so-logs-mappings"
|
||||||
- "so-logs-settings"
|
- "so-logs-settings"
|
||||||
priority: 225
|
priority: 225
|
||||||
@@ -111,7 +113,7 @@ elasticsearch:
|
|||||||
name: elastic_agent
|
name: elastic_agent
|
||||||
managed_by: security_onion
|
managed_by: security_onion
|
||||||
managed: true
|
managed: true
|
||||||
so-logs-system.auth:
|
so-logs-system_x_auth:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -130,7 +132,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-system.syslog:
|
so-logs-system_x_syslog:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -149,7 +151,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-system.system:
|
so-logs-system_x_system:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -168,7 +170,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-system.application:
|
so-logs-system_x_application:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -187,7 +189,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-system.security:
|
so-logs-system_x_security:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -206,7 +208,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-windows.forwarded:
|
so-logs-windows_x_forwarded:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -224,7 +226,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-windows.powershell:
|
so-logs-windows_x_powershell:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -242,7 +244,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-windows.powershell_operational:
|
so-logs-windows_x_powershell_operational:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -260,7 +262,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-windows.sysmon_operational:
|
so-logs-windows_x_sysmon_operational:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -278,7 +280,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-aws.cloudtrail:
|
so-logs-aws_x_cloudtrail:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -296,7 +298,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-aws.cloudwatch_logs:
|
so-logs-aws_x_cloudwatch_logs:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -314,7 +316,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-aws.ec2_logs:
|
so-logs-aws_x_ec2_logs:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -332,7 +334,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-aws.elb_logs:
|
so-logs-aws_x_elb_logs:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -350,7 +352,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-aws.firewall_logs:
|
so-logs-aws_x_firewall_logs:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -368,7 +370,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-aws.route53_public_logs:
|
so-logs-aws_x_route53_public_logs:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -386,7 +388,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-aws.route53_resolver_logs:
|
so-logs-aws_x_route53_resolver_logs:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -404,7 +406,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-aws.s3access:
|
so-logs-aws_x_s3access:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -422,7 +424,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-aws.vpcflow:
|
so-logs-aws_x_vpcflow:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -440,7 +442,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-aws.waf:
|
so-logs-aws_x_waf:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -458,7 +460,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-azure.activitylogs:
|
so-logs-azure_x_activitylogs:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -476,7 +478,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-azure.application_gateway:
|
so-logs-azure_x_application_gateway:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -494,7 +496,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-azure.auditlogs:
|
so-logs-azure_x_auditlogs:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -512,7 +514,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-azure.eventhub:
|
so-logs-azure_x_eventhub:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -530,7 +532,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-azure.firewall_logs:
|
so-logs-azure_x_firewall_logs:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -548,7 +550,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-azure.identity_protection:
|
so-logs-azure_x_identity_protection:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -566,7 +568,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-azure.platformlogs:
|
so-logs-azure_x_platformlogs:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -584,7 +586,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-azure.provisioning:
|
so-logs-azure_x_provisioning:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -602,7 +604,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-azure.signinlogs:
|
so-logs-azure_x_signinlogs:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -620,7 +622,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-azure.springcloudlogs:
|
so-logs-azure_x_springcloudlogs:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -638,7 +640,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-cloudflare.audit:
|
so-logs-cloudflare_x_audit:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -656,7 +658,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-cloudflare.logpull:
|
so-logs-cloudflare_x_logpull:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -674,7 +676,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-fim.event:
|
so-logs-fim_x_event:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -692,7 +694,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-github.audit:
|
so-logs-github_x_audit:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -710,7 +712,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-github.code_scanning:
|
so-logs-github_x_code_scanning:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -728,7 +730,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-github.dependabot:
|
so-logs-github_x_dependabot:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -746,7 +748,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-github.issues:
|
so-logs-github_x_issues:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -764,7 +766,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-github.secret_scanning:
|
so-logs-github_x_secret_scanning:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -782,7 +784,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-google_workspace.access_transparency:
|
so-logs-google_workspace_x_access_transparency:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -800,7 +802,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-google_workspace.admin:
|
so-logs-google_workspace_x_admin:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -818,7 +820,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-google_workspace.alert:
|
so-logs-google_workspace_x_alert:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -836,7 +838,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-google_workspace.context_aware_access:
|
so-logs-google_workspace_x_context_aware_access:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -854,7 +856,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-google_workspace.device:
|
so-logs-google_workspace_x_device:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -872,7 +874,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-google_workspace.drive:
|
so-logs-google_workspace_x_drive:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -890,7 +892,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-google_workspace.gcp:
|
so-logs-google_workspace_x_gcp:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -908,7 +910,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-google_workspace.group_enterprise:
|
so-logs-google_workspace_x_group_enterprise:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -926,7 +928,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-google_workspace.groups:
|
so-logs-google_workspace_x_groups:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -944,7 +946,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-google_workspace.login:
|
so-logs-google_workspace_x_login:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -962,7 +964,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-google_workspace.rules:
|
so-logs-google_workspace_x_rules:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -980,7 +982,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-google_workspace.saml:
|
so-logs-google_workspace_x_saml:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -998,7 +1000,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-google_workspace.token:
|
so-logs-google_workspace_x_token:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -1016,7 +1018,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-google_workspace.user_accounts:
|
so-logs-google_workspace_x_user_accounts:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -1034,7 +1036,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-1password.item_usages:
|
so-logs-1password_x_item_usages:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -1052,7 +1054,7 @@ elasticsearch:
|
|||||||
data_stream:
|
data_stream:
|
||||||
hidden: false
|
hidden: false
|
||||||
allow_custom_routing: false
|
allow_custom_routing: false
|
||||||
so-logs-1password.signin_attempts:
|
so-logs-1password_x_signin_attempts:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -1087,7 +1089,7 @@ elasticsearch:
|
|||||||
name: elastic_agent
|
name: elastic_agent
|
||||||
managed_by: security_onion
|
managed_by: security_onion
|
||||||
managed: true
|
managed: true
|
||||||
so-logs-osquery-manager-action.responses:
|
so-logs-osquery-manager-action_x_responses:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -1104,7 +1106,7 @@ elasticsearch:
|
|||||||
name: elastic_agent
|
name: elastic_agent
|
||||||
managed_by: security_onion
|
managed_by: security_onion
|
||||||
managed: true
|
managed: true
|
||||||
so-logs-elastic_agent.apm_server:
|
so-logs-elastic_agent_x_apm_server:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -1158,7 +1160,7 @@ elasticsearch:
|
|||||||
name: elastic_agent
|
name: elastic_agent
|
||||||
managed_by: security_onion
|
managed_by: security_onion
|
||||||
managed: true
|
managed: true
|
||||||
so-logs-elastic_agent.auditbeat:
|
so-logs-elastic_agent_x_auditbeat:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -1212,7 +1214,7 @@ elasticsearch:
|
|||||||
name: elastic_agent
|
name: elastic_agent
|
||||||
managed_by: security_onion
|
managed_by: security_onion
|
||||||
managed: true
|
managed: true
|
||||||
so-logs-elastic_agent.cloudbeat:
|
so-logs-elastic_agent_x_cloudbeat:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -1263,7 +1265,7 @@ elasticsearch:
|
|||||||
name: elastic_agent
|
name: elastic_agent
|
||||||
managed_by: security_onion
|
managed_by: security_onion
|
||||||
managed: true
|
managed: true
|
||||||
so-logs-elastic_agent.endpoint_security:
|
so-logs-elastic_agent_x_endpoint_security:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -1312,7 +1314,399 @@ elasticsearch:
|
|||||||
name: elastic_agent
|
name: elastic_agent
|
||||||
managed_by: security_onion
|
managed_by: security_onion
|
||||||
managed: true
|
managed: true
|
||||||
so-logs-elastic_agent.filebeat:
|
so-logs-endpoint_x_alerts:
|
||||||
|
index_sorting: False
|
||||||
|
index_template:
|
||||||
|
index_patterns:
|
||||||
|
- "logs-endpoint.alerts-*"
|
||||||
|
template:
|
||||||
|
settings:
|
||||||
|
index:
|
||||||
|
number_of_replicas: 0
|
||||||
|
mapping:
|
||||||
|
total_fields:
|
||||||
|
limit: 5000
|
||||||
|
sort:
|
||||||
|
field: "@timestamp"
|
||||||
|
order: desc
|
||||||
|
composed_of:
|
||||||
|
- "event-mappings"
|
||||||
|
- "logs-endpoint.alerts@custom"
|
||||||
|
- "logs-endpoint.alerts@package"
|
||||||
|
- "so-fleet_globals-1"
|
||||||
|
- "so-fleet_agent_id_verification-1"
|
||||||
|
priority: 501
|
||||||
|
data_stream:
|
||||||
|
hidden: false
|
||||||
|
allow_custom_routing: false
|
||||||
|
policy:
|
||||||
|
phases:
|
||||||
|
hot:
|
||||||
|
min_age: 0ms
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 100
|
||||||
|
rollover:
|
||||||
|
max_age: 30d
|
||||||
|
max_primary_shard_size: 50gb
|
||||||
|
cold:
|
||||||
|
min_age: 30d
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 0
|
||||||
|
delete:
|
||||||
|
min_age: 365d
|
||||||
|
actions:
|
||||||
|
delete: {}
|
||||||
|
_meta:
|
||||||
|
package:
|
||||||
|
name: elastic_agent
|
||||||
|
managed_by: security_onion
|
||||||
|
managed: true
|
||||||
|
so-logs-endpoint_x_events_x_api:
|
||||||
|
index_sorting: False
|
||||||
|
index_template:
|
||||||
|
index_patterns:
|
||||||
|
- "logs-endpoint.events.api-*"
|
||||||
|
template:
|
||||||
|
settings:
|
||||||
|
index:
|
||||||
|
number_of_replicas: 0
|
||||||
|
mapping:
|
||||||
|
total_fields:
|
||||||
|
limit: 5000
|
||||||
|
sort:
|
||||||
|
field: "@timestamp"
|
||||||
|
order: desc
|
||||||
|
composed_of:
|
||||||
|
- "event-mappings"
|
||||||
|
- "logs-endpoint.events.api@custom"
|
||||||
|
- "logs-endpoint.events.api@package"
|
||||||
|
- "so-fleet_globals-1"
|
||||||
|
- "so-fleet_agent_id_verification-1"
|
||||||
|
priority: 501
|
||||||
|
data_stream:
|
||||||
|
hidden: false
|
||||||
|
allow_custom_routing: false
|
||||||
|
policy:
|
||||||
|
phases:
|
||||||
|
hot:
|
||||||
|
min_age: 0ms
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 100
|
||||||
|
rollover:
|
||||||
|
max_age: 30d
|
||||||
|
max_primary_shard_size: 50gb
|
||||||
|
cold:
|
||||||
|
min_age: 30d
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 0
|
||||||
|
delete:
|
||||||
|
min_age: 365d
|
||||||
|
actions:
|
||||||
|
delete: {}
|
||||||
|
_meta:
|
||||||
|
package:
|
||||||
|
name: elastic_agent
|
||||||
|
managed_by: security_onion
|
||||||
|
managed: true
|
||||||
|
so-logs-endpoint_x_events_x_file:
|
||||||
|
index_sorting: False
|
||||||
|
index_template:
|
||||||
|
index_patterns:
|
||||||
|
- "logs-endpoint.events.file-*"
|
||||||
|
template:
|
||||||
|
settings:
|
||||||
|
index:
|
||||||
|
number_of_replicas: 0
|
||||||
|
mapping:
|
||||||
|
total_fields:
|
||||||
|
limit: 5000
|
||||||
|
sort:
|
||||||
|
field: "@timestamp"
|
||||||
|
order: desc
|
||||||
|
composed_of:
|
||||||
|
- "event-mappings"
|
||||||
|
- "logs-endpoint.events.file@custom"
|
||||||
|
- "logs-endpoint.events.file@package"
|
||||||
|
- "so-fleet_globals-1"
|
||||||
|
- "so-fleet_agent_id_verification-1"
|
||||||
|
priority: 501
|
||||||
|
data_stream:
|
||||||
|
hidden: false
|
||||||
|
allow_custom_routing: false
|
||||||
|
policy:
|
||||||
|
phases:
|
||||||
|
hot:
|
||||||
|
min_age: 0ms
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 100
|
||||||
|
rollover:
|
||||||
|
max_age: 30d
|
||||||
|
max_primary_shard_size: 50gb
|
||||||
|
cold:
|
||||||
|
min_age: 30d
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 0
|
||||||
|
delete:
|
||||||
|
min_age: 365d
|
||||||
|
actions:
|
||||||
|
delete: {}
|
||||||
|
_meta:
|
||||||
|
package:
|
||||||
|
name: elastic_agent
|
||||||
|
managed_by: security_onion
|
||||||
|
managed: true
|
||||||
|
so-logs-endpoint_x_events_x_library:
|
||||||
|
index_sorting: False
|
||||||
|
index_template:
|
||||||
|
index_patterns:
|
||||||
|
- "logs-endpoint.events.library-*"
|
||||||
|
template:
|
||||||
|
settings:
|
||||||
|
index:
|
||||||
|
number_of_replicas: 0
|
||||||
|
mapping:
|
||||||
|
total_fields:
|
||||||
|
limit: 5000
|
||||||
|
sort:
|
||||||
|
field: "@timestamp"
|
||||||
|
order: desc
|
||||||
|
composed_of:
|
||||||
|
- "event-mappings"
|
||||||
|
- "logs-endpoint.events.library@custom"
|
||||||
|
- "logs-endpoint.events.library@package"
|
||||||
|
- "so-fleet_globals-1"
|
||||||
|
- "so-fleet_agent_id_verification-1"
|
||||||
|
priority: 501
|
||||||
|
data_stream:
|
||||||
|
hidden: false
|
||||||
|
allow_custom_routing: false
|
||||||
|
policy:
|
||||||
|
phases:
|
||||||
|
hot:
|
||||||
|
min_age: 0ms
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 100
|
||||||
|
rollover:
|
||||||
|
max_age: 30d
|
||||||
|
max_primary_shard_size: 50gb
|
||||||
|
cold:
|
||||||
|
min_age: 30d
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 0
|
||||||
|
delete:
|
||||||
|
min_age: 365d
|
||||||
|
actions:
|
||||||
|
delete: {}
|
||||||
|
_meta:
|
||||||
|
package:
|
||||||
|
name: elastic_agent
|
||||||
|
managed_by: security_onion
|
||||||
|
managed: true
|
||||||
|
so-logs-endpoint_x_events_x_network:
|
||||||
|
index_sorting: False
|
||||||
|
index_template:
|
||||||
|
index_patterns:
|
||||||
|
- "logs-endpoint.events.network-*"
|
||||||
|
template:
|
||||||
|
settings:
|
||||||
|
index:
|
||||||
|
number_of_replicas: 0
|
||||||
|
mapping:
|
||||||
|
total_fields:
|
||||||
|
limit: 5000
|
||||||
|
sort:
|
||||||
|
field: "@timestamp"
|
||||||
|
order: desc
|
||||||
|
composed_of:
|
||||||
|
- "event-mappings"
|
||||||
|
- "logs-endpoint.events.network@custom"
|
||||||
|
- "logs-endpoint.events.network@package"
|
||||||
|
- "so-fleet_globals-1"
|
||||||
|
- "so-fleet_agent_id_verification-1"
|
||||||
|
priority: 501
|
||||||
|
data_stream:
|
||||||
|
hidden: false
|
||||||
|
allow_custom_routing: false
|
||||||
|
policy:
|
||||||
|
phases:
|
||||||
|
hot:
|
||||||
|
min_age: 0ms
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 100
|
||||||
|
rollover:
|
||||||
|
max_age: 30d
|
||||||
|
max_primary_shard_size: 50gb
|
||||||
|
cold:
|
||||||
|
min_age: 30d
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 0
|
||||||
|
delete:
|
||||||
|
min_age: 365d
|
||||||
|
actions:
|
||||||
|
delete: {}
|
||||||
|
_meta:
|
||||||
|
package:
|
||||||
|
name: elastic_agent
|
||||||
|
managed_by: security_onion
|
||||||
|
managed: true
|
||||||
|
so-logs-endpoint_x_events_x_process:
|
||||||
|
index_sorting: False
|
||||||
|
index_template:
|
||||||
|
index_patterns:
|
||||||
|
- "logs-endpoint.events.process-*"
|
||||||
|
template:
|
||||||
|
settings:
|
||||||
|
index:
|
||||||
|
number_of_replicas: 0
|
||||||
|
mapping:
|
||||||
|
total_fields:
|
||||||
|
limit: 5000
|
||||||
|
sort:
|
||||||
|
field: "@timestamp"
|
||||||
|
order: desc
|
||||||
|
composed_of:
|
||||||
|
- "event-mappings"
|
||||||
|
- "logs-endpoint.events.process@custom"
|
||||||
|
- "logs-endpoint.events.process@package"
|
||||||
|
- "so-fleet_globals-1"
|
||||||
|
- "so-fleet_agent_id_verification-1"
|
||||||
|
priority: 501
|
||||||
|
data_stream:
|
||||||
|
hidden: false
|
||||||
|
allow_custom_routing: false
|
||||||
|
policy:
|
||||||
|
phases:
|
||||||
|
hot:
|
||||||
|
min_age: 0ms
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 100
|
||||||
|
rollover:
|
||||||
|
max_age: 30d
|
||||||
|
max_primary_shard_size: 50gb
|
||||||
|
cold:
|
||||||
|
min_age: 30d
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 0
|
||||||
|
delete:
|
||||||
|
min_age: 365d
|
||||||
|
actions:
|
||||||
|
delete: {}
|
||||||
|
_meta:
|
||||||
|
package:
|
||||||
|
name: elastic_agent
|
||||||
|
managed_by: security_onion
|
||||||
|
managed: true
|
||||||
|
so-logs-endpoint_x_events_x_registry:
|
||||||
|
index_sorting: False
|
||||||
|
index_template:
|
||||||
|
index_patterns:
|
||||||
|
- "logs-endpoint.events.registry-*"
|
||||||
|
template:
|
||||||
|
settings:
|
||||||
|
index:
|
||||||
|
number_of_replicas: 0
|
||||||
|
mapping:
|
||||||
|
total_fields:
|
||||||
|
limit: 5000
|
||||||
|
sort:
|
||||||
|
field: "@timestamp"
|
||||||
|
order: desc
|
||||||
|
composed_of:
|
||||||
|
- "event-mappings"
|
||||||
|
- "logs-endpoint.events.registry@custom"
|
||||||
|
- "logs-endpoint.events.registry@package"
|
||||||
|
- "so-fleet_globals-1"
|
||||||
|
- "so-fleet_agent_id_verification-1"
|
||||||
|
priority: 501
|
||||||
|
data_stream:
|
||||||
|
hidden: false
|
||||||
|
allow_custom_routing: false
|
||||||
|
policy:
|
||||||
|
phases:
|
||||||
|
hot:
|
||||||
|
min_age: 0ms
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 100
|
||||||
|
rollover:
|
||||||
|
max_age: 30d
|
||||||
|
max_primary_shard_size: 50gb
|
||||||
|
cold:
|
||||||
|
min_age: 30d
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 0
|
||||||
|
delete:
|
||||||
|
min_age: 365d
|
||||||
|
actions:
|
||||||
|
delete: {}
|
||||||
|
_meta:
|
||||||
|
package:
|
||||||
|
name: elastic_agent
|
||||||
|
managed_by: security_onion
|
||||||
|
managed: true
|
||||||
|
so-logs-endpoint_x_events_x_security:
|
||||||
|
index_sorting: False
|
||||||
|
index_template:
|
||||||
|
index_patterns:
|
||||||
|
- "logs-endpoint.events.security-*"
|
||||||
|
template:
|
||||||
|
settings:
|
||||||
|
index:
|
||||||
|
number_of_replicas: 0
|
||||||
|
mapping:
|
||||||
|
total_fields:
|
||||||
|
limit: 5000
|
||||||
|
sort:
|
||||||
|
field: "@timestamp"
|
||||||
|
order: desc
|
||||||
|
composed_of:
|
||||||
|
- "event-mappings"
|
||||||
|
- "logs-endpoint.events.security@custom"
|
||||||
|
- "logs-endpoint.events.security@package"
|
||||||
|
- "so-fleet_globals-1"
|
||||||
|
- "so-fleet_agent_id_verification-1"
|
||||||
|
priority: 501
|
||||||
|
data_stream:
|
||||||
|
hidden: false
|
||||||
|
allow_custom_routing: false
|
||||||
|
policy:
|
||||||
|
phases:
|
||||||
|
hot:
|
||||||
|
min_age: 0ms
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 100
|
||||||
|
rollover:
|
||||||
|
max_age: 30d
|
||||||
|
max_primary_shard_size: 50gb
|
||||||
|
cold:
|
||||||
|
min_age: 30d
|
||||||
|
actions:
|
||||||
|
set_priority:
|
||||||
|
priority: 0
|
||||||
|
delete:
|
||||||
|
min_age: 365d
|
||||||
|
actions:
|
||||||
|
delete: {}
|
||||||
|
_meta:
|
||||||
|
package:
|
||||||
|
name: elastic_agent
|
||||||
|
managed_by: security_onion
|
||||||
|
managed: true
|
||||||
|
so-logs-elastic_agent_x_filebeat:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -1361,7 +1755,7 @@ elasticsearch:
|
|||||||
name: elastic_agent
|
name: elastic_agent
|
||||||
managed_by: security_onion
|
managed_by: security_onion
|
||||||
managed: true
|
managed: true
|
||||||
so-logs-elastic_agent.fleet_server:
|
so-logs-elastic_agent_x_fleet_server:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -1407,7 +1801,7 @@ elasticsearch:
|
|||||||
name: elastic_agent
|
name: elastic_agent
|
||||||
managed_by: security_onion
|
managed_by: security_onion
|
||||||
managed: true
|
managed: true
|
||||||
so-logs-elastic_agent.heartbeat:
|
so-logs-elastic_agent_x_heartbeat:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -1513,7 +1907,7 @@ elasticsearch:
|
|||||||
name: elastic_agent
|
name: elastic_agent
|
||||||
managed_by: security_onion
|
managed_by: security_onion
|
||||||
managed: true
|
managed: true
|
||||||
so-logs-elastic_agent.metricbeat:
|
so-logs-elastic_agent_x_metricbeat:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -1562,7 +1956,7 @@ elasticsearch:
|
|||||||
name: elastic_agent
|
name: elastic_agent
|
||||||
managed_by: security_onion
|
managed_by: security_onion
|
||||||
managed: true
|
managed: true
|
||||||
so-logs-elastic_agent.osquerybeat:
|
so-logs-elastic_agent_x_osquerybeat:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
@@ -1611,7 +2005,7 @@ elasticsearch:
|
|||||||
name: elastic_agent
|
name: elastic_agent
|
||||||
managed_by: security_onion
|
managed_by: security_onion
|
||||||
managed: true
|
managed: true
|
||||||
so-logs-elastic_agent.packetbeat:
|
so-logs-elastic_agent_x_packetbeat:
|
||||||
index_sorting: False
|
index_sorting: False
|
||||||
index_template:
|
index_template:
|
||||||
index_patterns:
|
index_patterns:
|
||||||
|
|||||||
@@ -72,8 +72,13 @@
|
|||||||
{ "set": { "ignore_failure": true, "field": "event.module", "value": "elastic_agent" } },
|
{ "set": { "ignore_failure": true, "field": "event.module", "value": "elastic_agent" } },
|
||||||
{ "split": { "if": "ctx.event?.dataset != null && ctx.event.dataset.contains('.')", "field": "event.dataset", "separator": "\\.", "target_field": "module_temp" } },
|
{ "split": { "if": "ctx.event?.dataset != null && ctx.event.dataset.contains('.')", "field": "event.dataset", "separator": "\\.", "target_field": "module_temp" } },
|
||||||
{ "set": { "if": "ctx.module_temp != null", "override": true, "field": "event.module", "value": "{{module_temp.0}}" } },
|
{ "set": { "if": "ctx.module_temp != null", "override": true, "field": "event.module", "value": "{{module_temp.0}}" } },
|
||||||
{ "split": { "if": "ctx.event?.dataset != null && ctx.event.dataset.contains('.')", "field": "event.dataset", "separator": "\\.", "target_field": "dataset_tag_temp" } },
|
{ "gsub": { "if": "ctx.event?.dataset != null && ctx.event.dataset.contains('.')", "field": "event.dataset", "pattern": "^[^.]*.", "replacement": "", "target_field": "dataset_tag_temp" } },
|
||||||
{ "append": { "if": "ctx.dataset_tag_temp != null", "field": "tags", "value": "{{dataset_tag_temp.1}}" } },
|
{ "append": { "if": "ctx.dataset_tag_temp != null", "field": "tags", "value": "{{dataset_tag_temp}}" } },
|
||||||
|
{ "set": { "if": "ctx.network?.direction == 'egress'", "override": true, "field": "network.initiated", "value": "true" } },
|
||||||
|
{ "set": { "if": "ctx.network?.direction == 'ingress'", "override": true, "field": "network.initiated", "value": "false" } },
|
||||||
|
{ "set": { "if": "ctx.network?.type == 'ipv4'", "override": true, "field": "destination.ipv6", "value": "false" } },
|
||||||
|
{ "set": { "if": "ctx.network?.type == 'ipv6'", "override": true, "field": "destination.ipv6", "value": "true" } },
|
||||||
|
{"community_id":{ "if": "ctx.event?.dataset == 'endpoint.events.network'", "ignore_failure":true } },
|
||||||
{ "remove": { "field": [ "message2", "type", "fields", "category", "module", "dataset", "event.dataset_temp", "dataset_tag_temp", "module_temp" ], "ignore_missing": true, "ignore_failure": true } }
|
{ "remove": { "field": [ "message2", "type", "fields", "category", "module", "dataset", "event.dataset_temp", "dataset_tag_temp", "module_temp" ], "ignore_missing": true, "ignore_failure": true } }
|
||||||
],
|
],
|
||||||
"on_failure": [
|
"on_failure": [
|
||||||
|
|||||||
@@ -49,11 +49,10 @@
|
|||||||
"on_failure" : [ {"set" : {"field" : "error.message","value" : "{{ _ingest.on_failure_message }}"}}]
|
"on_failure" : [ {"set" : {"field" : "error.message","value" : "{{ _ingest.on_failure_message }}"}}]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{ "set": { "field": "_index", "value": "so-firewall", "override": true } },
|
|
||||||
{ "set": { "if": "ctx.network?.transport_id == '0'", "field": "network.transport", "value": "icmp", "override": true } },
|
{ "set": { "if": "ctx.network?.transport_id == '0'", "field": "network.transport", "value": "icmp", "override": true } },
|
||||||
{ "community_id": {} },
|
{ "community_id": {} },
|
||||||
{ "set": { "field": "module", "value": "pfsense", "override": true } },
|
{ "set": { "field": "event.module", "value": "pfsense", "override": true } },
|
||||||
{ "set": { "field": "dataset", "value": "firewall", "override": true } },
|
{ "set": { "field": "event.dataset", "value": "firewall", "override": true } },
|
||||||
{ "set": { "field": "category", "value": "network", "override": true } },
|
{ "set": { "field": "category", "value": "network", "override": true } },
|
||||||
{ "remove": { "field": ["real_message", "ip_sub_msg", "firewall.sub_message"], "ignore_failure": true } }
|
{ "remove": { "field": ["real_message", "ip_sub_msg", "firewall.sub_message"], "ignore_failure": true } }
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -63,7 +63,8 @@
|
|||||||
{ "set": { "if": "ctx.rule?.score != null && ctx.rule?.score >= 50 && ctx.rule?.score <=69", "field": "event.severity", "value": 2, "override": true } },
|
{ "set": { "if": "ctx.rule?.score != null && ctx.rule?.score >= 50 && ctx.rule?.score <=69", "field": "event.severity", "value": 2, "override": true } },
|
||||||
{ "set": { "if": "ctx.rule?.score != null && ctx.rule?.score >= 70 && ctx.rule?.score <=89", "field": "event.severity", "value": 3, "override": true } },
|
{ "set": { "if": "ctx.rule?.score != null && ctx.rule?.score >= 70 && ctx.rule?.score <=89", "field": "event.severity", "value": 3, "override": true } },
|
||||||
{ "set": { "if": "ctx.rule?.score != null && ctx.rule?.score >= 90", "field": "event.severity", "value": 4, "override": true } },
|
{ "set": { "if": "ctx.rule?.score != null && ctx.rule?.score >= 90", "field": "event.severity", "value": 4, "override": true } },
|
||||||
{ "set": { "if": "ctx.scan?.entropy?.entropy == 0", "field": "scan.entropy.entropy", "value": 0.0, "override": true } },
|
{ "set": { "if": "ctx.scan?.entropy?.entropy == 0", "field": "scan.entropy.entropy", "value": "0.0", "override": true } },
|
||||||
|
{ "set": { "if": "ctx.scan?.pe?.image_version == 0", "field": "scan.pe.image_version", "value": "0.0", "override": true } },
|
||||||
{ "set": { "field": "observer.name", "value": "{{agent.name}}" }},
|
{ "set": { "field": "observer.name", "value": "{{agent.name}}" }},
|
||||||
{ "convert" : { "field" : "scan.exiftool","type": "string", "ignore_missing":true }},
|
{ "convert" : { "field" : "scan.exiftool","type": "string", "ignore_missing":true }},
|
||||||
{ "remove": { "field": ["host", "path", "message", "exiftool", "scan.yara.meta"], "ignore_missing": true } },
|
{ "remove": { "field": ["host", "path", "message", "exiftool", "scan.yara.meta"], "ignore_missing": true } },
|
||||||
|
|||||||
@@ -46,28 +46,26 @@ elasticsearch:
|
|||||||
description: Max number of boolean clauses per query.
|
description: Max number of boolean clauses per query.
|
||||||
global: True
|
global: True
|
||||||
helpLink: elasticsearch.html
|
helpLink: elasticsearch.html
|
||||||
index_settings:
|
index_settings:
|
||||||
so-elasticsearch: &indexSettings
|
so-logs: &indexSettings
|
||||||
warm:
|
|
||||||
description: Age (in days) of this index before it will move to warm storage, if warm nodes are present. Once moved, events on this index can take longer to fetch.
|
|
||||||
global: True
|
|
||||||
helpLink: elasticsearch.html
|
|
||||||
close:
|
|
||||||
description: Age (in days) of this index before it will be closed. Once closed, events on this index cannot be retrieved without first re-opening the index.
|
|
||||||
global: True
|
|
||||||
helpLink: elasticsearch.html
|
|
||||||
delete:
|
|
||||||
description: Age (in days) of this index before it will be deleted. Once deleted, events are permanently unrecoverable.
|
|
||||||
global: True
|
|
||||||
helpLink: elasticsearch.html
|
|
||||||
index_sorting:
|
index_sorting:
|
||||||
description: Sorts the index by event time, at the cost of additional processing resource consumption.
|
description: Sorts the index by event time, at the cost of additional processing resource consumption.
|
||||||
global: True
|
global: True
|
||||||
helpLink: elasticsearch.html
|
helpLink: elasticsearch.html
|
||||||
index_template:
|
index_template:
|
||||||
|
index_patterns:
|
||||||
|
description: Patterns for matching multiple indices or tables.
|
||||||
|
forceType: "[]string"
|
||||||
|
multiline: True
|
||||||
|
global: True
|
||||||
|
helpLink: elasticsearch.html
|
||||||
template:
|
template:
|
||||||
settings:
|
settings:
|
||||||
index:
|
index:
|
||||||
|
number_of_replicas:
|
||||||
|
description: Number of replicas required for this index. Multiple replicas protects against data loss, but also increases storage costs.
|
||||||
|
global: True
|
||||||
|
helpLink: elasticsearch.html
|
||||||
mapping:
|
mapping:
|
||||||
total_fields:
|
total_fields:
|
||||||
limit:
|
limit:
|
||||||
@@ -75,17 +73,59 @@ elasticsearch:
|
|||||||
global: True
|
global: True
|
||||||
helpLink: elasticsearch.html
|
helpLink: elasticsearch.html
|
||||||
refresh_interval:
|
refresh_interval:
|
||||||
description: Seconds between index refreshes. Shorter intervals can cause query performance to suffer since this is a synchronous and resource-intensive operation.
|
description: Seconds between index refreshes. Shorter intervals can cause query performance to suffer since this is a synchronous and resource-intensive operation.
|
||||||
global: True
|
global: True
|
||||||
helpLink: elasticsearch.html
|
helpLink: elasticsearch.html
|
||||||
number_of_shards:
|
number_of_shards:
|
||||||
description: Number of shards required for this index. Using multiple shards increases fault tolerance, but also increases storage and network costs.
|
description: Number of shards required for this index. Using multiple shards increases fault tolerance, but also increases storage and network costs.
|
||||||
|
global: True
|
||||||
|
helpLink: elasticsearch.html
|
||||||
|
sort:
|
||||||
|
field:
|
||||||
|
description: The field to sort by. Must set index_sorting to True.
|
||||||
global: True
|
global: True
|
||||||
helpLink: elasticsearch.html
|
helpLink: elasticsearch.html
|
||||||
number_of_replicas:
|
order:
|
||||||
description: Number of replicas required for this index. Multiple replicas protects against data loss, but also increases storage costs.
|
description: The order to sort by. Must set index_sorting to True.
|
||||||
global: True
|
global: True
|
||||||
helpLink: elasticsearch.html
|
helpLink: elasticsearch.html
|
||||||
|
mappings:
|
||||||
|
_meta:
|
||||||
|
package:
|
||||||
|
name:
|
||||||
|
description: Meta settings for the mapping.
|
||||||
|
global: True
|
||||||
|
helpLink: elasticsearch.html
|
||||||
|
managed_by:
|
||||||
|
description: Meta settings for the mapping.
|
||||||
|
global: True
|
||||||
|
helpLink: elasticsearch.html
|
||||||
|
managed:
|
||||||
|
description: Meta settings for the mapping.
|
||||||
|
forcedType: bool
|
||||||
|
global: True
|
||||||
|
helpLink: elasticsearch.html
|
||||||
|
composed_of:
|
||||||
|
description: The index template is composed of these component templates.
|
||||||
|
forcedType: "[]string"
|
||||||
|
global: True
|
||||||
|
helpLink: elasticsearch.html
|
||||||
|
priority:
|
||||||
|
description: The priority of the index template.
|
||||||
|
forcedType: int
|
||||||
|
global: True
|
||||||
|
helpLink: elasticsearch.html
|
||||||
|
data_stream:
|
||||||
|
hidden:
|
||||||
|
description: Hide the data stream.
|
||||||
|
forcedType: bool
|
||||||
|
global: True
|
||||||
|
helpLink: elasticsearch.html
|
||||||
|
allow_custom_routing:
|
||||||
|
description: Allow custom routing for the data stream.
|
||||||
|
forcedType: bool
|
||||||
|
global: True
|
||||||
|
helpLink: elasticsearch.html
|
||||||
policy:
|
policy:
|
||||||
phases:
|
phases:
|
||||||
hot:
|
hot:
|
||||||
@@ -97,6 +137,7 @@ elasticsearch:
|
|||||||
set_priority:
|
set_priority:
|
||||||
priority:
|
priority:
|
||||||
description: Priority of index. This is used for recovery after a node restart. Indices with higher priorities are recovered before indices with lower priorities.
|
description: Priority of index. This is used for recovery after a node restart. Indices with higher priorities are recovered before indices with lower priorities.
|
||||||
|
forcedType: int
|
||||||
global: True
|
global: True
|
||||||
helpLink: elasticsearch.html
|
helpLink: elasticsearch.html
|
||||||
rollover:
|
rollover:
|
||||||
@@ -117,19 +158,111 @@ elasticsearch:
|
|||||||
set_priority:
|
set_priority:
|
||||||
priority:
|
priority:
|
||||||
description: Used for index recovery after a node restart. Indices with higher priorities are recovered before indices with lower priorities.
|
description: Used for index recovery after a node restart. Indices with higher priorities are recovered before indices with lower priorities.
|
||||||
|
forcedType: int
|
||||||
global: True
|
global: True
|
||||||
helpLink: elasticsearch.html
|
helpLink: elasticsearch.html
|
||||||
delete:
|
delete:
|
||||||
min_age:
|
min_age:
|
||||||
description: Minimum age of index. This determines when the index should be deleted.
|
description: Minimum age of index. This determines when the index should be deleted.
|
||||||
global: True
|
global: True
|
||||||
helpLink: elastic
|
helpLink: elasticsearch.html
|
||||||
|
_meta:
|
||||||
|
package:
|
||||||
|
name:
|
||||||
|
description: Meta settings for the mapping.
|
||||||
|
global: True
|
||||||
|
helpLink: elasticsearch.html
|
||||||
|
managed_by:
|
||||||
|
description: Meta settings for the mapping.
|
||||||
|
global: True
|
||||||
|
helpLink: elasticsearch.html
|
||||||
|
managed:
|
||||||
|
description: Meta settings for the mapping.
|
||||||
|
forcedType: bool
|
||||||
|
global: True
|
||||||
|
helpLink: elasticsearch.html
|
||||||
|
so-logs-system_x_auth: *indexSettings
|
||||||
|
so-logs-system_x_syslog: *indexSettings
|
||||||
|
so-logs-system_x_system: *indexSettings
|
||||||
|
so-logs-system_x_application: *indexSettings
|
||||||
|
so-logs-system_x_security: *indexSettings
|
||||||
|
so-logs-windows_x_forwarded: *indexSettings
|
||||||
|
so-logs-windows_x_powershell: *indexSettings
|
||||||
|
so-logs-windows_x_powershell_operational: *indexSettings
|
||||||
|
so-logs-windows_x_sysmon_operational: *indexSettings
|
||||||
|
so-logs-aws_x_cloudtrail: *indexSettings
|
||||||
|
so-logs-aws_x_cloudwatch_logs: *indexSettings
|
||||||
|
so-logs-aws_x_ec2_logs: *indexSettings
|
||||||
|
so-logs-aws_x_elb_logs: *indexSettings
|
||||||
|
so-logs-aws_x_firewall_logs: *indexSettings
|
||||||
|
so-logs-aws_x_route53_public_logs: *indexSettings
|
||||||
|
so-logs-aws_x_route53_resolver_logs: *indexSettings
|
||||||
|
so-logs-aws_x_s3access: *indexSettings
|
||||||
|
so-logs-aws_x_vpcflow: *indexSettings
|
||||||
|
so-logs-aws_x_waf: *indexSettings
|
||||||
|
so-logs-azure_x_activitylogs: *indexSettings
|
||||||
|
so-logs-azure_x_application_gateway: *indexSettings
|
||||||
|
so-logs-azure_x_auditlogs: *indexSettings
|
||||||
|
so-logs-azure_x_eventhub: *indexSettings
|
||||||
|
so-logs-azure_x_firewall_logs: *indexSettings
|
||||||
|
so-logs-azure_x_identity_protection: *indexSettings
|
||||||
|
so-logs-azure_x_platformlogs: *indexSettings
|
||||||
|
so-logs-azure_x_provisioning: *indexSettings
|
||||||
|
so-logs-azure_x_signinlogs: *indexSettings
|
||||||
|
so-logs-azure_x_springcloudlogs: *indexSettings
|
||||||
|
so-logs-cloudflare_x_audit: *indexSettings
|
||||||
|
so-logs-cloudflare_x_logpull: *indexSettings
|
||||||
|
so-logs-fim_x_event: *indexSettings
|
||||||
|
so-logs-github_x_audit: *indexSettings
|
||||||
|
so-logs-github_x_code_scanning: *indexSettings
|
||||||
|
so-logs-github_x_dependabot: *indexSettings
|
||||||
|
so-logs-github_x_issues: *indexSettings
|
||||||
|
so-logs-github_x_secret_scanning: *indexSettings
|
||||||
|
so-logs-google_workspace_x_access_transparency: *indexSettings
|
||||||
|
so-logs-google_workspace_x_admin: *indexSettings
|
||||||
|
so-logs-google_workspace_x_alert: *indexSettings
|
||||||
|
so-logs-google_workspace_x_context_aware_access: *indexSettings
|
||||||
|
so-logs-google_workspace_x_device: *indexSettings
|
||||||
|
so-logs-google_workspace_x_drive: *indexSettings
|
||||||
|
so-logs-google_workspace_x_gcp: *indexSettings
|
||||||
|
so-logs-google_workspace_x_group_enterprise: *indexSettings
|
||||||
|
so-logs-google_workspace_x_groups: *indexSettings
|
||||||
|
so-logs-google_workspace_x_login: *indexSettings
|
||||||
|
so-logs-google_workspace_x_rules: *indexSettings
|
||||||
|
so-logs-google_workspace_x_saml: *indexSettings
|
||||||
|
so-logs-google_workspace_x_token: *indexSettings
|
||||||
|
so-logs-google_workspace_x_user_accounts: *indexSettings
|
||||||
|
so-logs-1password_x_item_usages: *indexSettings
|
||||||
|
so-logs-1password_x_signin_attempts: *indexSettings
|
||||||
|
so-logs-osquery-manager-actions: *indexSettings
|
||||||
|
so-logs-osquery-manager-action_x_responses: *indexSettings
|
||||||
|
so-logs-elastic_agent_x_apm_server: *indexSettings
|
||||||
|
so-logs-elastic_agent_x_auditbeat: *indexSettings
|
||||||
|
so-logs-elastic_agent_x_cloudbeat: *indexSettings
|
||||||
|
so-logs-elastic_agent_x_endpoint_security: *indexSettings
|
||||||
|
so-logs-endpoint_x_alerts: *indexSettings
|
||||||
|
so-logs-endpoint_x_events_x_api: *indexSettings
|
||||||
|
so-logs-endpoint_x_events_x_file: *indexSettings
|
||||||
|
so-logs-endpoint_x_events_x_library: *indexSettings
|
||||||
|
so-logs-endpoint_x_events_x_network: *indexSettings
|
||||||
|
so-logs-endpoint_x_events_x_process: *indexSettings
|
||||||
|
so-logs-endpoint_x_events_x_registry: *indexSettings
|
||||||
|
so-logs-endpoint_x_events_x_security: *indexSettings
|
||||||
|
so-logs-elastic_agent_x_filebeat: *indexSettings
|
||||||
|
so-logs-elastic_agent_x_fleet_server: *indexSettings
|
||||||
|
so-logs-elastic_agent_x_heartbeat: *indexSettings
|
||||||
|
so-logs-elastic_agent: *indexSettings
|
||||||
|
so-logs-elastic_agent_x_metricbeat: *indexSettings
|
||||||
|
so-logs-elastic_agent_x_osquerybeat: *indexSettings
|
||||||
|
so-logs-elastic_agent_x_packetbeat: *indexSettings
|
||||||
|
so-case: *indexSettings
|
||||||
|
so-common: *indexSettings
|
||||||
so-endgame: *indexSettings
|
so-endgame: *indexSettings
|
||||||
so-firewall: *indexSettings
|
so-idh: *indexSettings
|
||||||
|
so-suricata: *indexSettings
|
||||||
so-import: *indexSettings
|
so-import: *indexSettings
|
||||||
so-kibana: *indexSettings
|
so-kratos: *indexSettings
|
||||||
so-logstash: *indexSettings
|
so-logstash: *indexSettings
|
||||||
so-osquery: *indexSettings
|
|
||||||
so-redis: *indexSettings
|
so-redis: *indexSettings
|
||||||
so-strelka: *indexSettings
|
so-strelka: *indexSettings
|
||||||
so-syslog: *indexSettings
|
so-syslog: *indexSettings
|
||||||
|
|||||||
@@ -1,9 +1,11 @@
|
|||||||
{% import_yaml 'elasticsearch/defaults.yaml' as ELASTICSEARCHDEFAULTS with context %}
|
{% import_yaml 'elasticsearch/defaults.yaml' as ELASTICSEARCHDEFAULTS with context %}
|
||||||
{%- set ES_INDEX_SETTINGS = salt['pillar.get']('elasticsearch:index_settings', default=ELASTICSEARCHDEFAULTS.elasticsearch.index_settings, merge=True) %}
|
{%- set ES_INDEX_SETTINGS_ORIG = salt['pillar.get']('elasticsearch:index_settings', default=ELASTICSEARCHDEFAULTS.elasticsearch.index_settings, merge=True) %}
|
||||||
{% for index, settings in ES_INDEX_SETTINGS.items() %}
|
{% set ES_INDEX_SETTINGS = {} %}
|
||||||
|
{% for index, settings in ES_INDEX_SETTINGS_ORIG.items() %}
|
||||||
{% if settings.index_template is defined %}
|
{% if settings.index_template is defined %}
|
||||||
{% if not settings.get('index_sorting', False) | to_bool and settings.index_template.template.settings.index.sort is defined %}
|
{% if not settings.get('index_sorting', False) | to_bool and settings.index_template.template.settings.index.sort is defined %}
|
||||||
{% do settings.index_template.template.settings.index.pop('sort') %}
|
{% do settings.index_template.template.settings.index.pop('sort') %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
{% do ES_INDEX_SETTINGS.update({index | replace("_x_", "."): ES_INDEX_SETTINGS_ORIG[index]}) %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|||||||
@@ -4,46 +4,6 @@
|
|||||||
"ecs_version": "1.12.2"
|
"ecs_version": "1.12.2"
|
||||||
},
|
},
|
||||||
"template": {
|
"template": {
|
||||||
"settings": {
|
|
||||||
"analysis": {
|
|
||||||
"analyzer": {
|
|
||||||
"es_security_analyzer": {
|
|
||||||
"type": "custom",
|
|
||||||
"char_filter": [
|
|
||||||
"whitespace_no_way"
|
|
||||||
],
|
|
||||||
"filter": [
|
|
||||||
"lowercase",
|
|
||||||
"trim"
|
|
||||||
],
|
|
||||||
"tokenizer": "keyword"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"char_filter": {
|
|
||||||
"whitespace_no_way": {
|
|
||||||
"type": "pattern_replace",
|
|
||||||
"pattern": "(\\s)+",
|
|
||||||
"replacement": "$1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"filter": {
|
|
||||||
"path_hierarchy_pattern_filter": {
|
|
||||||
"type": "pattern_capture",
|
|
||||||
"preserve_original": true,
|
|
||||||
"patterns": [
|
|
||||||
"((?:[^\\\\]*\\\\)*)(.*)",
|
|
||||||
"((?:[^/]*/)*)(.*)"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tokenizer": {
|
|
||||||
"path_tokenizer": {
|
|
||||||
"type": "path_hierarchy",
|
|
||||||
"delimiter": "\\"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"agent": {
|
"agent": {
|
||||||
@@ -52,69 +12,33 @@
|
|||||||
"properties": {
|
"properties": {
|
||||||
"original": {
|
"original": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ephemeral_id": {
|
"ephemeral_id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"id": {
|
"id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"type": {
|
"type": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"version": {
|
"version": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -4,46 +4,6 @@
|
|||||||
"ecs_version": "1.12.2"
|
"ecs_version": "1.12.2"
|
||||||
},
|
},
|
||||||
"template": {
|
"template": {
|
||||||
"settings": {
|
|
||||||
"analysis": {
|
|
||||||
"analyzer": {
|
|
||||||
"es_security_analyzer": {
|
|
||||||
"type": "custom",
|
|
||||||
"char_filter": [
|
|
||||||
"whitespace_no_way"
|
|
||||||
],
|
|
||||||
"filter": [
|
|
||||||
"lowercase",
|
|
||||||
"trim"
|
|
||||||
],
|
|
||||||
"tokenizer": "keyword"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"char_filter": {
|
|
||||||
"whitespace_no_way": {
|
|
||||||
"type": "pattern_replace",
|
|
||||||
"pattern": "(\\s)+",
|
|
||||||
"replacement": "$1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"filter": {
|
|
||||||
"path_hierarchy_pattern_filter": {
|
|
||||||
"type": "pattern_capture",
|
|
||||||
"preserve_original": true,
|
|
||||||
"patterns": [
|
|
||||||
"((?:[^\\\\]*\\\\)*)(.*)",
|
|
||||||
"((?:[^/]*/)*)(.*)"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tokenizer": {
|
|
||||||
"path_tokenizer": {
|
|
||||||
"type": "path_hierarchy",
|
|
||||||
"delimiter": "\\"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"@timestamp": {
|
"@timestamp": {
|
||||||
@@ -57,15 +17,9 @@
|
|||||||
},
|
},
|
||||||
"tags": {
|
"tags": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -4,59 +4,13 @@
|
|||||||
"ecs_version": "1.12.2"
|
"ecs_version": "1.12.2"
|
||||||
},
|
},
|
||||||
"template": {
|
"template": {
|
||||||
"settings": {
|
|
||||||
"analysis": {
|
|
||||||
"analyzer": {
|
|
||||||
"es_security_analyzer": {
|
|
||||||
"type": "custom",
|
|
||||||
"char_filter": [
|
|
||||||
"whitespace_no_way"
|
|
||||||
],
|
|
||||||
"filter": [
|
|
||||||
"lowercase",
|
|
||||||
"trim"
|
|
||||||
],
|
|
||||||
"tokenizer": "keyword"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"char_filter": {
|
|
||||||
"whitespace_no_way": {
|
|
||||||
"type": "pattern_replace",
|
|
||||||
"pattern": "(\\s)+",
|
|
||||||
"replacement": "$1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"filter": {
|
|
||||||
"path_hierarchy_pattern_filter": {
|
|
||||||
"type": "pattern_capture",
|
|
||||||
"preserve_original": true,
|
|
||||||
"patterns": [
|
|
||||||
"((?:[^\\\\]*\\\\)*)(.*)",
|
|
||||||
"((?:[^/]*/)*)(.*)"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tokenizer": {
|
|
||||||
"path_tokenizer": {
|
|
||||||
"type": "path_hierarchy",
|
|
||||||
"delimiter": "\\"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"client": {
|
"client": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"address": {
|
"address": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"as": {
|
"as": {
|
||||||
"properties": {
|
"properties": {
|
||||||
@@ -66,12 +20,6 @@
|
|||||||
"organization": {
|
"organization": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"name": {
|
"name": {
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword"
|
"type": "keyword"
|
||||||
}
|
}
|
||||||
@@ -84,118 +32,52 @@
|
|||||||
},
|
},
|
||||||
"domain": {
|
"domain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"geo": {
|
"geo": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"city_name": {
|
"city_name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"continent_code": {
|
"continent_code": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"continent_name": {
|
"continent_name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"country_iso_code": {
|
"country_iso_code": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"country_name": {
|
"country_name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"location": {
|
"location": {
|
||||||
"type": "geo_point"
|
"type": "geo_point"
|
||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"postal_code": {
|
"postal_code": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"region_iso_code": {
|
"region_iso_code": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"region_name": {
|
"region_name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"timezone": {
|
"timezone": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -204,13 +86,7 @@
|
|||||||
},
|
},
|
||||||
"mac": {
|
"mac": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"nat": {
|
"nat": {
|
||||||
"properties": {
|
"properties": {
|
||||||
@@ -230,63 +106,27 @@
|
|||||||
},
|
},
|
||||||
"registered_domain": {
|
"registered_domain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"subdomain": {
|
"subdomain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"top_level_domain": {
|
"top_level_domain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"user": {
|
"user": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"domain": {
|
"domain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"email": {
|
"email": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"full_name": {
|
"full_name": {
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword"
|
"type": "keyword"
|
||||||
},
|
},
|
||||||
@@ -294,75 +134,33 @@
|
|||||||
"properties": {
|
"properties": {
|
||||||
"domain": {
|
"domain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"id": {
|
"id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"hash": {
|
"hash": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"id": {
|
"id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword"
|
"type": "keyword"
|
||||||
},
|
},
|
||||||
"roles": {
|
"roles": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -371,4 +169,4 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -4,46 +4,6 @@
|
|||||||
"ecs_version": "1.12.2"
|
"ecs_version": "1.12.2"
|
||||||
},
|
},
|
||||||
"template": {
|
"template": {
|
||||||
"settings": {
|
|
||||||
"analysis": {
|
|
||||||
"analyzer": {
|
|
||||||
"es_security_analyzer": {
|
|
||||||
"type": "custom",
|
|
||||||
"char_filter": [
|
|
||||||
"whitespace_no_way"
|
|
||||||
],
|
|
||||||
"filter": [
|
|
||||||
"lowercase",
|
|
||||||
"trim"
|
|
||||||
],
|
|
||||||
"tokenizer": "keyword"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"char_filter": {
|
|
||||||
"whitespace_no_way": {
|
|
||||||
"type": "pattern_replace",
|
|
||||||
"pattern": "(\\s)+",
|
|
||||||
"replacement": "$1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"filter": {
|
|
||||||
"path_hierarchy_pattern_filter": {
|
|
||||||
"type": "pattern_capture",
|
|
||||||
"preserve_original": true,
|
|
||||||
"patterns": [
|
|
||||||
"((?:[^\\\\]*\\\\)*)(.*)",
|
|
||||||
"((?:[^/]*/)*)(.*)"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tokenizer": {
|
|
||||||
"path_tokenizer": {
|
|
||||||
"type": "path_hierarchy",
|
|
||||||
"delimiter": "\\"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"cloud": {
|
"cloud": {
|
||||||
@@ -52,57 +12,27 @@
|
|||||||
"properties": {
|
"properties": {
|
||||||
"id": {
|
"id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"availability_zone": {
|
"availability_zone": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"instance": {
|
"instance": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"id": {
|
"id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -110,13 +40,7 @@
|
|||||||
"properties": {
|
"properties": {
|
||||||
"type": {
|
"type": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -124,57 +48,27 @@
|
|||||||
"properties": {
|
"properties": {
|
||||||
"id": {
|
"id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"provider": {
|
"provider": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"region": {
|
"region": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"service": {
|
"service": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"name": {
|
"name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -183,4 +77,4 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -4,81 +4,23 @@
|
|||||||
"ecs_version": "1.12.2"
|
"ecs_version": "1.12.2"
|
||||||
},
|
},
|
||||||
"template": {
|
"template": {
|
||||||
"settings": {
|
|
||||||
"analysis": {
|
|
||||||
"analyzer": {
|
|
||||||
"es_security_analyzer": {
|
|
||||||
"type": "custom",
|
|
||||||
"char_filter": [
|
|
||||||
"whitespace_no_way"
|
|
||||||
],
|
|
||||||
"filter": [
|
|
||||||
"lowercase",
|
|
||||||
"trim"
|
|
||||||
],
|
|
||||||
"tokenizer": "keyword"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"char_filter": {
|
|
||||||
"whitespace_no_way": {
|
|
||||||
"type": "pattern_replace",
|
|
||||||
"pattern": "(\\s)+",
|
|
||||||
"replacement": "$1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"filter": {
|
|
||||||
"path_hierarchy_pattern_filter": {
|
|
||||||
"type": "pattern_capture",
|
|
||||||
"preserve_original": true,
|
|
||||||
"patterns": [
|
|
||||||
"((?:[^\\\\]*\\\\)*)(.*)",
|
|
||||||
"((?:[^/]*/)*)(.*)"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tokenizer": {
|
|
||||||
"path_tokenizer": {
|
|
||||||
"type": "path_hierarchy",
|
|
||||||
"delimiter": "\\"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"container": {
|
"container": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"id": {
|
"id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"image": {
|
"image": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"name": {
|
"name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"tag": {
|
"tag": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -87,27 +29,15 @@
|
|||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"runtime": {
|
"runtime": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -4,46 +4,6 @@
|
|||||||
"ecs_version": "1.12.2"
|
"ecs_version": "1.12.2"
|
||||||
},
|
},
|
||||||
"template": {
|
"template": {
|
||||||
"settings": {
|
|
||||||
"analysis": {
|
|
||||||
"analyzer": {
|
|
||||||
"es_security_analyzer": {
|
|
||||||
"type": "custom",
|
|
||||||
"char_filter": [
|
|
||||||
"whitespace_no_way"
|
|
||||||
],
|
|
||||||
"filter": [
|
|
||||||
"lowercase",
|
|
||||||
"trim"
|
|
||||||
],
|
|
||||||
"tokenizer": "keyword"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"char_filter": {
|
|
||||||
"whitespace_no_way": {
|
|
||||||
"type": "pattern_replace",
|
|
||||||
"pattern": "(\\s)+",
|
|
||||||
"replacement": "$1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"filter": {
|
|
||||||
"path_hierarchy_pattern_filter": {
|
|
||||||
"type": "pattern_capture",
|
|
||||||
"preserve_original": true,
|
|
||||||
"patterns": [
|
|
||||||
"((?:[^\\\\]*\\\\)*)(.*)",
|
|
||||||
"((?:[^/]*/)*)(.*)"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tokenizer": {
|
|
||||||
"path_tokenizer": {
|
|
||||||
"type": "path_hierarchy",
|
|
||||||
"delimiter": "\\"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"cyberarkpas": {
|
"cyberarkpas": {
|
||||||
@@ -52,565 +12,241 @@
|
|||||||
"properties": {
|
"properties": {
|
||||||
"action": {
|
"action": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"ca_properties": {
|
"ca_properties": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"address": {
|
"address": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"cpm_disabled": {
|
"cpm_disabled": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"cpm_error_details": {
|
"cpm_error_details": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"cpm_status": {
|
"cpm_status": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"creation_method": {
|
"creation_method": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"customer": {
|
"customer": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"database": {
|
"database": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"device_type": {
|
"device_type": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"dual_account_status": {
|
"dual_account_status": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"group_name": {
|
"group_name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"in_process": {
|
"in_process": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"index": {
|
"index": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"last_fail_date": {
|
"last_fail_date": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"last_success_change": {
|
"last_success_change": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"last_success_reconciliation": {
|
"last_success_reconciliation": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"last_success_verification": {
|
"last_success_verification": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"last_task": {
|
"last_task": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"logon_domain": {
|
"logon_domain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"other": {
|
"other": {
|
||||||
"type": "flattened"
|
"type": "flattened"
|
||||||
},
|
},
|
||||||
"policy_id": {
|
"policy_id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"port": {
|
"port": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"privcloud": {
|
"privcloud": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"reset_immediately": {
|
"reset_immediately": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"retries_count": {
|
"retries_count": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"sequence_id": {
|
"sequence_id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"tags": {
|
"tags": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"user_dn": {
|
"user_dn": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"user_name": {
|
"user_name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"virtual_username": {
|
"virtual_username": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"category": {
|
"category": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"desc": {
|
"desc": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"extra_details": {
|
"extra_details": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"ad_process_id": {
|
"ad_process_id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"ad_process_name": {
|
"ad_process_name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"application_type": {
|
"application_type": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"command": {
|
"command": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"connection_component_id": {
|
"connection_component_id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"dst_host": {
|
"dst_host": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"logon_account": {
|
"logon_account": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"managed_account": {
|
"managed_account": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"other": {
|
"other": {
|
||||||
"type": "flattened"
|
"type": "flattened"
|
||||||
},
|
},
|
||||||
"process_id": {
|
"process_id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"process_name": {
|
"process_name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"protocol": {
|
"protocol": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"psmid": {
|
"psmid": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"session_duration": {
|
"session_duration": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"session_id": {
|
"session_id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"src_host": {
|
"src_host": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"username": {
|
"username": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"file": {
|
"file": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"gateway_station": {
|
"gateway_station": {
|
||||||
"type": "ip"
|
"type": "ip"
|
||||||
},
|
},
|
||||||
"hostname": {
|
"hostname": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"iso_timestamp": {
|
"iso_timestamp": {
|
||||||
"type": "date"
|
"type": "date"
|
||||||
},
|
},
|
||||||
"issuer": {
|
"issuer": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"location": {
|
"location": {
|
||||||
"doc_values": false,
|
"doc_values": false,
|
||||||
"ignore_above": 4096,
|
"ignore_above": 4096,
|
||||||
"index": false,
|
"index": false,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"message": {
|
"message": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"message_id": {
|
"message_id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"product": {
|
"product": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"pvwa_details": {
|
"pvwa_details": {
|
||||||
"type": "flattened"
|
"type": "flattened"
|
||||||
@@ -619,99 +255,45 @@
|
|||||||
"doc_values": false,
|
"doc_values": false,
|
||||||
"ignore_above": 4096,
|
"ignore_above": 4096,
|
||||||
"index": false,
|
"index": false,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"reason": {
|
"reason": {
|
||||||
"norms": false,
|
"norms": false,
|
||||||
"type": "text",
|
"type": "text"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"rfc5424": {
|
"rfc5424": {
|
||||||
"type": "boolean"
|
"type": "boolean"
|
||||||
},
|
},
|
||||||
"safe": {
|
"safe": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"severity": {
|
"severity": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"source_user": {
|
"source_user": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"station": {
|
"station": {
|
||||||
"type": "ip"
|
"type": "ip"
|
||||||
},
|
},
|
||||||
"target_user": {
|
"target_user": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"timestamp": {
|
"timestamp": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"vendor": {
|
"vendor": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"version": {
|
"version": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -720,4 +302,4 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -4,46 +4,6 @@
|
|||||||
"ecs_version": "1.12.2"
|
"ecs_version": "1.12.2"
|
||||||
},
|
},
|
||||||
"template": {
|
"template": {
|
||||||
"settings": {
|
|
||||||
"analysis": {
|
|
||||||
"analyzer": {
|
|
||||||
"es_security_analyzer": {
|
|
||||||
"type": "custom",
|
|
||||||
"char_filter": [
|
|
||||||
"whitespace_no_way"
|
|
||||||
],
|
|
||||||
"filter": [
|
|
||||||
"lowercase",
|
|
||||||
"trim"
|
|
||||||
],
|
|
||||||
"tokenizer": "keyword"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"char_filter": {
|
|
||||||
"whitespace_no_way": {
|
|
||||||
"type": "pattern_replace",
|
|
||||||
"pattern": "(\\s)+",
|
|
||||||
"replacement": "$1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"filter": {
|
|
||||||
"path_hierarchy_pattern_filter": {
|
|
||||||
"type": "pattern_capture",
|
|
||||||
"preserve_original": true,
|
|
||||||
"patterns": [
|
|
||||||
"((?:[^\\\\]*\\\\)*)(.*)",
|
|
||||||
"((?:[^/]*/)*)(.*)"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tokenizer": {
|
|
||||||
"path_tokenizer": {
|
|
||||||
"type": "path_hierarchy",
|
|
||||||
"delimiter": "\\"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"data_stream": {
|
"data_stream": {
|
||||||
@@ -62,4 +22,4 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -4,59 +4,13 @@
|
|||||||
"ecs_version": "1.12.2"
|
"ecs_version": "1.12.2"
|
||||||
},
|
},
|
||||||
"template": {
|
"template": {
|
||||||
"settings": {
|
|
||||||
"analysis": {
|
|
||||||
"analyzer": {
|
|
||||||
"es_security_analyzer": {
|
|
||||||
"type": "custom",
|
|
||||||
"char_filter": [
|
|
||||||
"whitespace_no_way"
|
|
||||||
],
|
|
||||||
"filter": [
|
|
||||||
"lowercase",
|
|
||||||
"trim"
|
|
||||||
],
|
|
||||||
"tokenizer": "keyword"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"char_filter": {
|
|
||||||
"whitespace_no_way": {
|
|
||||||
"type": "pattern_replace",
|
|
||||||
"pattern": "(\\s)+",
|
|
||||||
"replacement": "$1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"filter": {
|
|
||||||
"path_hierarchy_pattern_filter": {
|
|
||||||
"type": "pattern_capture",
|
|
||||||
"preserve_original": true,
|
|
||||||
"patterns": [
|
|
||||||
"((?:[^\\\\]*\\\\)*)(.*)",
|
|
||||||
"((?:[^/]*/)*)(.*)"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tokenizer": {
|
|
||||||
"path_tokenizer": {
|
|
||||||
"type": "path_hierarchy",
|
|
||||||
"delimiter": "\\"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"destination": {
|
"destination": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"address": {
|
"address": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"as": {
|
"as": {
|
||||||
"properties": {
|
"properties": {
|
||||||
@@ -66,12 +20,6 @@
|
|||||||
"organization": {
|
"organization": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"name": {
|
"name": {
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword"
|
"type": "keyword"
|
||||||
}
|
}
|
||||||
@@ -84,118 +32,52 @@
|
|||||||
},
|
},
|
||||||
"domain": {
|
"domain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"geo": {
|
"geo": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"city_name": {
|
"city_name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"continent_code": {
|
"continent_code": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"continent_name": {
|
"continent_name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"country_iso_code": {
|
"country_iso_code": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"country_name": {
|
"country_name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"location": {
|
"location": {
|
||||||
"type": "geo_point"
|
"type": "geo_point"
|
||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"postal_code": {
|
"postal_code": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"region_iso_code": {
|
"region_iso_code": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"region_name": {
|
"region_name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"timezone": {
|
"timezone": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -204,13 +86,7 @@
|
|||||||
},
|
},
|
||||||
"mac": {
|
"mac": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"nat": {
|
"nat": {
|
||||||
"properties": {
|
"properties": {
|
||||||
@@ -230,63 +106,27 @@
|
|||||||
},
|
},
|
||||||
"registered_domain": {
|
"registered_domain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"subdomain": {
|
"subdomain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"top_level_domain": {
|
"top_level_domain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"user": {
|
"user": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"domain": {
|
"domain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"email": {
|
"email": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"full_name": {
|
"full_name": {
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword"
|
"type": "keyword"
|
||||||
},
|
},
|
||||||
@@ -294,75 +134,33 @@
|
|||||||
"properties": {
|
"properties": {
|
||||||
"domain": {
|
"domain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"id": {
|
"id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"hash": {
|
"hash": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"id": {
|
"id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword"
|
"type": "keyword"
|
||||||
},
|
},
|
||||||
"roles": {
|
"roles": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -371,4 +169,4 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -4,46 +4,6 @@
|
|||||||
"ecs_version": "1.12.2"
|
"ecs_version": "1.12.2"
|
||||||
},
|
},
|
||||||
"template": {
|
"template": {
|
||||||
"settings": {
|
|
||||||
"analysis": {
|
|
||||||
"analyzer": {
|
|
||||||
"es_security_analyzer": {
|
|
||||||
"type": "custom",
|
|
||||||
"char_filter": [
|
|
||||||
"whitespace_no_way"
|
|
||||||
],
|
|
||||||
"filter": [
|
|
||||||
"lowercase",
|
|
||||||
"trim"
|
|
||||||
],
|
|
||||||
"tokenizer": "keyword"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"char_filter": {
|
|
||||||
"whitespace_no_way": {
|
|
||||||
"type": "pattern_replace",
|
|
||||||
"pattern": "(\\s)+",
|
|
||||||
"replacement": "$1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"filter": {
|
|
||||||
"path_hierarchy_pattern_filter": {
|
|
||||||
"type": "pattern_capture",
|
|
||||||
"preserve_original": true,
|
|
||||||
"patterns": [
|
|
||||||
"((?:[^\\\\]*\\\\)*)(.*)",
|
|
||||||
"((?:[^/]*/)*)(.*)"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tokenizer": {
|
|
||||||
"path_tokenizer": {
|
|
||||||
"type": "path_hierarchy",
|
|
||||||
"delimiter": "\\"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"dll": {
|
"dll": {
|
||||||
@@ -52,56 +12,26 @@
|
|||||||
"properties": {
|
"properties": {
|
||||||
"digest_algorithm": {
|
"digest_algorithm": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"exists": {
|
"exists": {
|
||||||
"type": "boolean"
|
"type": "boolean"
|
||||||
},
|
},
|
||||||
"signing_id": {
|
"signing_id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"status": {
|
"status": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"subject_name": {
|
"subject_name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"team_id": {
|
"team_id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"timestamp": {
|
"timestamp": {
|
||||||
"type": "date"
|
"type": "date"
|
||||||
@@ -118,147 +48,63 @@
|
|||||||
"properties": {
|
"properties": {
|
||||||
"md5": {
|
"md5": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"sha1": {
|
"sha1": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"sha256": {
|
"sha256": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"sha512": {
|
"sha512": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"ssdeep": {
|
"ssdeep": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"path": {
|
"path": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"pe": {
|
"pe": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"architecture": {
|
"architecture": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"company": {
|
"company": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"description": {
|
"description": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"file_version": {
|
"file_version": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"imphash": {
|
"imphash": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"original_file_name": {
|
"original_file_name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"product": {
|
"product": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -267,4 +113,4 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -4,46 +4,6 @@
|
|||||||
"ecs_version": "1.12.2"
|
"ecs_version": "1.12.2"
|
||||||
},
|
},
|
||||||
"template": {
|
"template": {
|
||||||
"settings": {
|
|
||||||
"analysis": {
|
|
||||||
"analyzer": {
|
|
||||||
"es_security_analyzer": {
|
|
||||||
"type": "custom",
|
|
||||||
"char_filter": [
|
|
||||||
"whitespace_no_way"
|
|
||||||
],
|
|
||||||
"filter": [
|
|
||||||
"lowercase",
|
|
||||||
"trim"
|
|
||||||
],
|
|
||||||
"tokenizer": "keyword"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"char_filter": {
|
|
||||||
"whitespace_no_way": {
|
|
||||||
"type": "pattern_replace",
|
|
||||||
"pattern": "(\\s)+",
|
|
||||||
"replacement": "$1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"filter": {
|
|
||||||
"path_hierarchy_pattern_filter": {
|
|
||||||
"type": "pattern_capture",
|
|
||||||
"preserve_original": true,
|
|
||||||
"patterns": [
|
|
||||||
"((?:[^\\\\]*\\\\)*)(.*)",
|
|
||||||
"((?:[^/]*/)*)(.*)"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tokenizer": {
|
|
||||||
"path_tokenizer": {
|
|
||||||
"type": "path_hierarchy",
|
|
||||||
"delimiter": "\\"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"dns": {
|
"dns": {
|
||||||
@@ -52,141 +12,63 @@
|
|||||||
"properties": {
|
"properties": {
|
||||||
"class": {
|
"class": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"data": {
|
"data": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"ttl": {
|
"ttl": {
|
||||||
"type": "long"
|
"type": "long"
|
||||||
},
|
},
|
||||||
"type": {
|
"type": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"type": "object"
|
"type": "object"
|
||||||
},
|
},
|
||||||
"header_flags": {
|
"header_flags": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"id": {
|
"id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"op_code": {
|
"op_code": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"question": {
|
"question": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"class": {
|
"class": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"registered_domain": {
|
"registered_domain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"subdomain": {
|
"subdomain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"top_level_domain": {
|
"top_level_domain": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"type": {
|
"type": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -195,27 +77,15 @@
|
|||||||
},
|
},
|
||||||
"response_code": {
|
"response_code": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"type": {
|
"type": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -4,63 +4,17 @@
|
|||||||
"ecs_version": "1.12.2"
|
"ecs_version": "1.12.2"
|
||||||
},
|
},
|
||||||
"template": {
|
"template": {
|
||||||
"settings": {
|
|
||||||
"analysis": {
|
|
||||||
"analyzer": {
|
|
||||||
"es_security_analyzer": {
|
|
||||||
"type": "custom",
|
|
||||||
"char_filter": [
|
|
||||||
"whitespace_no_way"
|
|
||||||
],
|
|
||||||
"filter": [
|
|
||||||
"lowercase",
|
|
||||||
"trim"
|
|
||||||
],
|
|
||||||
"tokenizer": "keyword"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"char_filter": {
|
|
||||||
"whitespace_no_way": {
|
|
||||||
"type": "pattern_replace",
|
|
||||||
"pattern": "(\\s)+",
|
|
||||||
"replacement": "$1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"filter": {
|
|
||||||
"path_hierarchy_pattern_filter": {
|
|
||||||
"type": "pattern_capture",
|
|
||||||
"preserve_original": true,
|
|
||||||
"patterns": [
|
|
||||||
"((?:[^\\\\]*\\\\)*)(.*)",
|
|
||||||
"((?:[^/]*/)*)(.*)"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tokenizer": {
|
|
||||||
"path_tokenizer": {
|
|
||||||
"type": "path_hierarchy",
|
|
||||||
"delimiter": "\\"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"ecs": {
|
"ecs": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"version": {
|
"version": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -4,46 +4,6 @@
|
|||||||
"ecs_version": "1.12.2"
|
"ecs_version": "1.12.2"
|
||||||
},
|
},
|
||||||
"template": {
|
"template": {
|
||||||
"settings": {
|
|
||||||
"analysis": {
|
|
||||||
"analyzer": {
|
|
||||||
"es_security_analyzer": {
|
|
||||||
"type": "custom",
|
|
||||||
"char_filter": [
|
|
||||||
"whitespace_no_way"
|
|
||||||
],
|
|
||||||
"filter": [
|
|
||||||
"lowercase",
|
|
||||||
"trim"
|
|
||||||
],
|
|
||||||
"tokenizer": "keyword"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"char_filter": {
|
|
||||||
"whitespace_no_way": {
|
|
||||||
"type": "pattern_replace",
|
|
||||||
"pattern": "(\\s)+",
|
|
||||||
"replacement": "$1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"filter": {
|
|
||||||
"path_hierarchy_pattern_filter": {
|
|
||||||
"type": "pattern_capture",
|
|
||||||
"preserve_original": true,
|
|
||||||
"patterns": [
|
|
||||||
"((?:[^\\\\]*\\\\)*)(.*)",
|
|
||||||
"((?:[^/]*/)*)(.*)"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tokenizer": {
|
|
||||||
"path_tokenizer": {
|
|
||||||
"type": "path_hierarchy",
|
|
||||||
"delimiter": "\\"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"@timestamp": {
|
"@timestamp": {
|
||||||
@@ -57,15 +17,9 @@
|
|||||||
},
|
},
|
||||||
"tags": {
|
"tags": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -4,79 +4,23 @@
|
|||||||
"ecs_version": "1.12.2"
|
"ecs_version": "1.12.2"
|
||||||
},
|
},
|
||||||
"template": {
|
"template": {
|
||||||
"settings": {
|
|
||||||
"analysis": {
|
|
||||||
"analyzer": {
|
|
||||||
"es_security_analyzer": {
|
|
||||||
"type": "custom",
|
|
||||||
"char_filter": [
|
|
||||||
"whitespace_no_way"
|
|
||||||
],
|
|
||||||
"filter": [
|
|
||||||
"lowercase",
|
|
||||||
"trim"
|
|
||||||
],
|
|
||||||
"tokenizer": "keyword"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"char_filter": {
|
|
||||||
"whitespace_no_way": {
|
|
||||||
"type": "pattern_replace",
|
|
||||||
"pattern": "(\\s)+",
|
|
||||||
"replacement": "$1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"filter": {
|
|
||||||
"path_hierarchy_pattern_filter": {
|
|
||||||
"type": "pattern_capture",
|
|
||||||
"preserve_original": true,
|
|
||||||
"patterns": [
|
|
||||||
"((?:[^\\\\]*\\\\)*)(.*)",
|
|
||||||
"((?:[^/]*/)*)(.*)"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tokenizer": {
|
|
||||||
"path_tokenizer": {
|
|
||||||
"type": "path_hierarchy",
|
|
||||||
"delimiter": "\\"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"error": {
|
"error": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"code": {
|
"code": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"id": {
|
"id": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"message": {
|
"message": {
|
||||||
"type": "match_only_text"
|
"type": "match_only_text"
|
||||||
},
|
},
|
||||||
"stack_trace": {
|
"stack_trace": {
|
||||||
"fields": {
|
"fields": {
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
},
|
|
||||||
"text": {
|
"text": {
|
||||||
"type": "match_only_text"
|
"type": "match_only_text"
|
||||||
}
|
}
|
||||||
@@ -85,17 +29,11 @@
|
|||||||
},
|
},
|
||||||
"type": {
|
"type": {
|
||||||
"ignore_above": 1024,
|
"ignore_above": 1024,
|
||||||
"type": "keyword",
|
"type": "keyword"
|
||||||
"fields": {
|
|
||||||
"security": {
|
|
||||||
"type": "text",
|
|
||||||
"analyzer": "es_security_analyzer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user