mirror of
				https://github.com/wazuh/wazuh-docker.git
				synced 2025-11-04 05:53:16 +00:00 
			
		
		
		
	Compare commits
	
		
			450 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					98e96a5260 | ||
| 
						 | 
					84e57b9c9a | ||
| 
						 | 
					e13cfcf454 | ||
| 
						 | 
					e48255641f | ||
| 
						 | 
					05ef9b899b | ||
| 
						 | 
					c46b1c0d82 | ||
| 
						 | 
					3a3218f0d4 | ||
| 
						 | 
					dd86d1b707 | ||
| 
						 | 
					8aad8651d7 | ||
| 
						 | 
					3c073ab5ea | ||
| 
						 | 
					5106715b0c | ||
| 
						 | 
					89e0fc9604 | ||
| 
						 | 
					64f083631d | ||
| 
						 | 
					fa2f2b2a31 | ||
| 
						 | 
					8d1c239a3c | ||
| 
						 | 
					ded91b2f0a | ||
| 
						 | 
					d7e051af19 | ||
| 
						 | 
					b4db7f16cc | ||
| 
						 | 
					61bfe58491 | ||
| 
						 | 
					9d3701fa60 | ||
| 
						 | 
					c550c1a852 | ||
| 
						 | 
					1b41068618 | ||
| 
						 | 
					8ac3ea1e8a | ||
| 
						 | 
					893796c4a2 | ||
| 
						 | 
					d6a72c6fb1 | ||
| 
						 | 
					7172c818c7 | ||
| 
						 | 
					a2ee29bfd3 | ||
| 
						 | 
					e205c87d37 | ||
| 
						 | 
					545ef6851b | ||
| 
						 | 
					36c06dc4c8 | ||
| 
						 | 
					3fd3f42389 | ||
| 
						 | 
					b22fa235c7 | ||
| 
						 | 
					c3c8ea3d02 | ||
| 
						 | 
					905b4de859 | ||
| 
						 | 
					23d34f6a89 | ||
| 
						 | 
					8fa20abbbd | ||
| 
						 | 
					d9b053caf4 | ||
| 
						 | 
					d5dc67e9c3 | ||
| 
						 | 
					93c53a712d | ||
| 
						 | 
					5f3a0481ba | ||
| 
						 | 
					958e466682 | ||
| 
						 | 
					7d5b1c4f85 | ||
| 
						 | 
					d6b73cb3dc | ||
| 
						 | 
					62627e32fd | ||
| 
						 | 
					536dd51aa7 | ||
| 
						 | 
					088b855f73 | ||
| 
						 | 
					5769159cf9 | ||
| 
						 | 
					41515e9c49 | ||
| 
						 | 
					0fbbf5aee2 | ||
| 
						 | 
					37f565bb8a | ||
| 
						 | 
					2ac53b9b3d | ||
| 
						 | 
					d1c252c6c0 | ||
| 
						 | 
					e9f689dbfc | ||
| 
						 | 
					be19c70082 | ||
| 
						 | 
					0c6077c3e0 | ||
| 
						 | 
					de7754364d | ||
| 
						 | 
					73ada94ed6 | ||
| 
						 | 
					63817dfd55 | ||
| 
						 | 
					637110c278 | ||
| 
						 | 
					b18c068650 | ||
| 
						 | 
					9a871dbbcb | ||
| 
						 | 
					1fae0d3452 | ||
| 
						 | 
					0a4c057492 | ||
| 
						 | 
					2902a0ce0b | ||
| 
						 | 
					c0fb4172f3 | ||
| 
						 | 
					8886e2347e | ||
| 
						 | 
					f1d8565989 | ||
| 
						 | 
					e5abd5d24e | ||
| 
						 | 
					902b0d8e52 | ||
| 
						 | 
					b377a0f6eb | ||
| 
						 | 
					44e9bebed0 | ||
| 
						 | 
					760fc8ccbf | ||
| 
						 | 
					44303d3701 | ||
| 
						 | 
					c0d97893a4 | ||
| 
						 | 
					0826f2c176 | ||
| 
						 | 
					d531b8dd72 | ||
| 
						 | 
					41267d4ddf | ||
| 
						 | 
					67f34fb8fe | ||
| 
						 | 
					865f7625f4 | ||
| 
						 | 
					c56952eaa0 | ||
| 
						 | 
					cb7d8785c6 | ||
| 
						 | 
					f1001c2f25 | ||
| 
						 | 
					6c91bac96d | ||
| 
						 | 
					216b5a6818 | ||
| 
						 | 
					e19fa14013 | ||
| 
						 | 
					57c7eaa5af | ||
| 
						 | 
					fbe073612c | ||
| 
						 | 
					1dec665a97 | ||
| 
						 | 
					757e5dbf05 | ||
| 
						 | 
					32b1d88e36 | ||
| 
						 | 
					94be842afc | ||
| 
						 | 
					d20bbe247c | ||
| 
						 | 
					e01d39e138 | ||
| 
						 | 
					1eeca6267b | ||
| 
						 | 
					d755ffbac8 | ||
| 
						 | 
					221c3ccd24 | ||
| 
						 | 
					1ff589ccaf | ||
| 
						 | 
					d4c98491fc | ||
| 
						 | 
					673c28b637 | ||
| 
						 | 
					3953986652 | ||
| 
						 | 
					f2dab81387 | ||
| 
						 | 
					da82008a75 | ||
| 
						 | 
					54975ab099 | ||
| 
						 | 
					b27d991f0c | ||
| 
						 | 
					4d0aa57ed2 | ||
| 
						 | 
					1a75d4eb77 | ||
| 
						 | 
					247555b1b6 | ||
| 
						 | 
					442d457933 | ||
| 
						 | 
					0f65448718 | ||
| 
						 | 
					a9533264d6 | ||
| 
						 | 
					ce8dd29425 | ||
| 
						 | 
					a433989865 | ||
| 
						 | 
					ff1e5f991a | ||
| 
						 | 
					55ee49aff5 | ||
| 
						 | 
					75f92308a1 | ||
| 
						 | 
					61c37a78de | ||
| 
						 | 
					39208c513c | ||
| 
						 | 
					3650feeb0e | ||
| 
						 | 
					f4f99f17b7 | ||
| 
						 | 
					8e3b8aada8 | ||
| 
						 | 
					7abaea9b4c | ||
| 
						 | 
					303b64c7ae | ||
| 
						 | 
					2340db4079 | ||
| 
						 | 
					9159eda943 | ||
| 
						 | 
					d278782134 | ||
| 
						 | 
					77725b7eb2 | ||
| 
						 | 
					4e7c2cf72a | ||
| 
						 | 
					41196a5529 | ||
| 
						 | 
					8ce1f36f10 | ||
| 
						 | 
					e2e95a5c57 | ||
| 
						 | 
					2058734154 | ||
| 
						 | 
					4e34f1f7b7 | ||
| 
						 | 
					b259665fc6 | ||
| 
						 | 
					820079f1d0 | ||
| 
						 | 
					9a9fac6243 | ||
| 
						 | 
					11d15670f4 | ||
| 
						 | 
					e826236a28 | ||
| 
						 | 
					137989ddd1 | ||
| 
						 | 
					0d76a85ded | ||
| 
						 | 
					e95455a12b | ||
| 
						 | 
					887293d474 | ||
| 
						 | 
					ae20f302c0 | ||
| 
						 | 
					08314f9e2e | ||
| 
						 | 
					c6f1f31d57 | ||
| 
						 | 
					312466704d | ||
| 
						 | 
					d00fc0ccf6 | ||
| 
						 | 
					42ea26b3bd | ||
| 
						 | 
					fe75f8fb4e | ||
| 
						 | 
					8b1ed497ab | ||
| 
						 | 
					195b34c259 | ||
| 
						 | 
					08c9b95455 | ||
| 
						 | 
					028b5f6034 | ||
| 
						 | 
					cd7dc4c7cf | ||
| 
						 | 
					40faad148d | ||
| 
						 | 
					02aaf45e9d | ||
| 
						 | 
					cd9f211eb3 | ||
| 
						 | 
					20c8000fec | ||
| 
						 | 
					8ada4445b0 | ||
| 
						 | 
					1c69a38bd8 | ||
| 
						 | 
					615d6df29c | ||
| 
						 | 
					949a465855 | ||
| 
						 | 
					f7bbac5a08 | ||
| 
						 | 
					11820b01e9 | ||
| 
						 | 
					a8de452002 | ||
| 
						 | 
					c76681b3b9 | ||
| 
						 | 
					e25635cb25 | ||
| 
						 | 
					304eedcb51 | ||
| 
						 | 
					6123ab994c | ||
| 
						 | 
					2f58da59de | ||
| 
						 | 
					3279931813 | ||
| 
						 | 
					b039567e1c | ||
| 
						 | 
					3190c4246e | ||
| 
						 | 
					271f421cd4 | ||
| 
						 | 
					910e28956b | ||
| 
						 | 
					dcf8bb8060 | ||
| 
						 | 
					be9f3d1b90 | ||
| 
						 | 
					91625f412c | ||
| 
						 | 
					4c7dcb2ebf | ||
| 
						 | 
					8febf33d58 | ||
| 
						 | 
					3d19774d7e | ||
| 
						 | 
					e11e7a10b8 | ||
| 
						 | 
					7f73635651 | ||
| 
						 | 
					e9a0be25ce | ||
| 
						 | 
					c87580cfb5 | ||
| 
						 | 
					e0cd80c105 | ||
| 
						 | 
					796751aec9 | ||
| 
						 | 
					15205ada03 | ||
| 
						 | 
					c1bfc450ba | ||
| 
						 | 
					b08fd3e384 | ||
| 
						 | 
					fd08279f32 | ||
| 
						 | 
					f42b30b71d | ||
| 
						 | 
					7555453d55 | ||
| 
						 | 
					22b77749fa | ||
| 
						 | 
					6c094d07a6 | ||
| 
						 | 
					b6959c8b15 | ||
| 
						 | 
					28e21b0282 | ||
| 
						 | 
					b83dcc087e | ||
| 
						 | 
					19c23456ec | ||
| 
						 | 
					f99721e98b | ||
| 
						 | 
					38271d7797 | ||
| 
						 | 
					c278f6a503 | ||
| 
						 | 
					d6ba8c3661 | ||
| 
						 | 
					1db718ffc8 | ||
| 
						 | 
					cf137c6703 | ||
| 
						 | 
					6f966cb01a | ||
| 
						 | 
					8bc11c48d9 | ||
| 
						 | 
					be1bc64e0f | ||
| 
						 | 
					80e8057f79 | ||
| 
						 | 
					296de14886 | ||
| 
						 | 
					0245a7e0d8 | ||
| 
						 | 
					a9ea60b951 | ||
| 
						 | 
					b98d32d4ca | ||
| 
						 | 
					23cb7417bc | ||
| 
						 | 
					4c710e6c20 | ||
| 
						 | 
					adf95cd132 | ||
| 
						 | 
					f97a719304 | ||
| 
						 | 
					b6aa782730 | ||
| 
						 | 
					bf534b4143 | ||
| 
						 | 
					1d8d594a44 | ||
| 
						 | 
					a82cc9ec39 | ||
| 
						 | 
					265dfd39bf | ||
| 
						 | 
					8d9ad6152a | ||
| 
						 | 
					28641accc2 | ||
| 
						 | 
					5774b93977 | ||
| 
						 | 
					9c0676014c | ||
| 
						 | 
					f933733a85 | ||
| 
						 | 
					2f2b8bc1f5 | ||
| 
						 | 
					868424cdd2 | ||
| 
						 | 
					84c4aab03d | ||
| 
						 | 
					3d4521c7d8 | ||
| 
						 | 
					46ec0bd67f | ||
| 
						 | 
					61791c1984 | ||
| 
						 | 
					2fe1eaea8f | ||
| 
						 | 
					dc7691808b | ||
| 
						 | 
					c3375e0141 | ||
| 
						 | 
					5d98c157f8 | ||
| 
						 | 
					0f2b153123 | ||
| 
						 | 
					a84ff7b1ff | ||
| 
						 | 
					672d1fc67a | ||
| 
						 | 
					ecef793c7f | ||
| 
						 | 
					8fb1b51d08 | ||
| 
						 | 
					9b9c422dea | ||
| 
						 | 
					3059de4c9f | ||
| 
						 | 
					d6557165da | ||
| 
						 | 
					174cf64b9b | ||
| 
						 | 
					d3954c9f8d | ||
| 
						 | 
					6dbfc1bbbf | ||
| 
						 | 
					20d065cce3 | ||
| 
						 | 
					de41cd08c9 | ||
| 
						 | 
					1c80201dc9 | ||
| 
						 | 
					f5ba9370ea | ||
| 
						 | 
					94f62d25d3 | ||
| 
						 | 
					0384112385 | ||
| 
						 | 
					8d4c6c4170 | ||
| 
						 | 
					919eab0c84 | ||
| 
						 | 
					01e616ce76 | ||
| 
						 | 
					46740f306a | ||
| 
						 | 
					b718d753de | ||
| 
						 | 
					731d3c3622 | ||
| 
						 | 
					c17cc9a15b | ||
| 
						 | 
					8976d2f5b6 | ||
| 
						 | 
					03764ea251 | ||
| 
						 | 
					7c642638ff | ||
| 
						 | 
					6591e9ae68 | ||
| 
						 | 
					961b8bad21 | ||
| 
						 | 
					ddc03699e5 | ||
| 
						 | 
					b28ae3b3ab | ||
| 
						 | 
					67dc3e6e36 | ||
| 
						 | 
					a34e0af547 | ||
| 
						 | 
					42c2ea5dba | ||
| 
						 | 
					b95e02d41d | ||
| 
						 | 
					8e8b53e6e1 | ||
| 
						 | 
					40f55cfb53 | ||
| 
						 | 
					a626216643 | ||
| 
						 | 
					0d7d4694fd | ||
| 
						 | 
					8ae1cd3f9d | ||
| 
						 | 
					f06a7ec961 | ||
| 
						 | 
					3656850b56 | ||
| 
						 | 
					426670017f | ||
| 
						 | 
					22958aaf5e | ||
| 
						 | 
					35dfd86837 | ||
| 
						 | 
					d4b0d60a54 | ||
| 
						 | 
					19a5a37bdf | ||
| 
						 | 
					0e2d942666 | ||
| 
						 | 
					0c2cb412fb | ||
| 
						 | 
					8748cd1ae2 | ||
| 
						 | 
					604232960b | ||
| 
						 | 
					5e211d2b13 | ||
| 
						 | 
					1a60522c27 | ||
| 
						 | 
					e9c2f59c94 | ||
| 
						 | 
					451e91e407 | ||
| 
						 | 
					439a3fe252 | ||
| 
						 | 
					17389682a4 | ||
| 
						 | 
					719dc7dd16 | ||
| 
						 | 
					131c44ba63 | ||
| 
						 | 
					27a7479774 | ||
| 
						 | 
					fea54b3ca7 | ||
| 
						 | 
					f711968c2f | ||
| 
						 | 
					adfaab647d | ||
| 
						 | 
					237b180ff5 | ||
| 
						 | 
					01a0e3dabd | ||
| 
						 | 
					b3d576623e | ||
| 
						 | 
					0520a771fe | ||
| 
						 | 
					d5550caa26 | ||
| 
						 | 
					637d5ccae1 | ||
| 
						 | 
					95207b0777 | ||
| 
						 | 
					a40c510bba | ||
| 
						 | 
					7fdb1a91e5 | ||
| 
						 | 
					3b740e5dce | ||
| 
						 | 
					281f74582a | ||
| 
						 | 
					5418494f95 | ||
| 
						 | 
					c6314893f2 | ||
| 
						 | 
					5d5f01ab45 | ||
| 
						 | 
					4b1c420fdd | ||
| 
						 | 
					3d4a7073ef | ||
| 
						 | 
					c1ca498617 | ||
| 
						 | 
					ac92c2f1c0 | ||
| 
						 | 
					ec16fdf24c | ||
| 
						 | 
					525bb0ca2c | ||
| 
						 | 
					a8bd7cba31 | ||
| 
						 | 
					9fb941f3e5 | ||
| 
						 | 
					f67f8d1d3b | ||
| 
						 | 
					1645f8bac2 | ||
| 
						 | 
					7d394698a7 | ||
| 
						 | 
					73c25e86d6 | ||
| 
						 | 
					add81b07e4 | ||
| 
						 | 
					8f6d24de77 | ||
| 
						 | 
					2fdb06d824 | ||
| 
						 | 
					d578dfbd39 | ||
| 
						 | 
					d7e937d2f8 | ||
| 
						 | 
					0313563a0c | ||
| 
						 | 
					0f2fd84173 | ||
| 
						 | 
					437fbe63d1 | ||
| 
						 | 
					fb66a358c8 | ||
| 
						 | 
					83400ba1e5 | ||
| 
						 | 
					5555c1dd06 | ||
| 
						 | 
					0dd044de68 | ||
| 
						 | 
					8889c1237d | ||
| 
						 | 
					f220927849 | ||
| 
						 | 
					480f0b7bef | ||
| 
						 | 
					af8627b992 | ||
| 
						 | 
					384ed07584 | ||
| 
						 | 
					946e3d6c5c | ||
| 
						 | 
					259f18f96d | ||
| 
						 | 
					c22330761e | ||
| 
						 | 
					a453502e9b | ||
| 
						 | 
					de28f0babc | ||
| 
						 | 
					8795763cd2 | ||
| 
						 | 
					de1e435e26 | ||
| 
						 | 
					5591833d2f | ||
| 
						 | 
					8b2f64a3f8 | ||
| 
						 | 
					290affdaa3 | ||
| 
						 | 
					d1499136f6 | ||
| 
						 | 
					613dc9fbb7 | ||
| 
						 | 
					77520d56ea | ||
| 
						 | 
					111f04fb0b | ||
| 
						 | 
					30ed0e6bb4 | ||
| 
						 | 
					3ab210f8c0 | ||
| 
						 | 
					19fdf93942 | ||
| 
						 | 
					9ef724b46c | ||
| 
						 | 
					2e0a7b7c3d | ||
| 
						 | 
					66dda69a91 | ||
| 
						 | 
					cacc8fc3d3 | ||
| 
						 | 
					11b3160aa4 | ||
| 
						 | 
					bb7723d6be | ||
| 
						 | 
					54756054bc | ||
| 
						 | 
					e0c7194444 | ||
| 
						 | 
					ba3409acee | ||
| 
						 | 
					19e5c24a2e | ||
| 
						 | 
					b7a55ab174 | ||
| 
						 | 
					111cfca50c | ||
| 
						 | 
					704b183002 | ||
| 
						 | 
					579fa10551 | ||
| 
						 | 
					1bc73fb1c4 | ||
| 
						 | 
					dfa11c08a4 | ||
| 
						 | 
					ceb920e87a | ||
| 
						 | 
					330763bcb0 | ||
| 
						 | 
					571fad7a08 | ||
| 
						 | 
					ccc781023d | ||
| 
						 | 
					7e26034e22 | ||
| 
						 | 
					182029155e | ||
| 
						 | 
					872c121ba9 | ||
| 
						 | 
					7e8055f128 | ||
| 
						 | 
					469f7db61a | ||
| 
						 | 
					ec6bfa962d | ||
| 
						 | 
					5f063fc445 | ||
| 
						 | 
					9fdf342fa3 | ||
| 
						 | 
					b10a00cade | ||
| 
						 | 
					3d3a3d1274 | ||
| 
						 | 
					3a87d83deb | ||
| 
						 | 
					d22547b9c5 | ||
| 
						 | 
					bb11f13e86 | ||
| 
						 | 
					79ac17ddbd | ||
| 
						 | 
					59ad1b171c | ||
| 
						 | 
					894ba9df12 | ||
| 
						 | 
					5211401620 | ||
| 
						 | 
					65f499c042 | ||
| 
						 | 
					db3d37aef6 | ||
| 
						 | 
					b1e13d3b72 | ||
| 
						 | 
					baa24a7614 | ||
| 
						 | 
					4e975f8dd1 | ||
| 
						 | 
					dc34688b04 | ||
| 
						 | 
					f3ae530bfa | ||
| 
						 | 
					ae558612df | ||
| 
						 | 
					e1fc82af79 | ||
| 
						 | 
					5b03281631 | ||
| 
						 | 
					fe104c7ffb | ||
| 
						 | 
					2d77063934 | ||
| 
						 | 
					bbeb831ceb | ||
| 
						 | 
					0576fcaf52 | ||
| 
						 | 
					5d88983066 | ||
| 
						 | 
					95565df2f5 | ||
| 
						 | 
					70c3a2929e | ||
| 
						 | 
					ed5c5d70ba | ||
| 
						 | 
					97f5a6bf04 | ||
| 
						 | 
					b21c3769d3 | ||
| 
						 | 
					04389ad2ae | ||
| 
						 | 
					bfeb4b007a | ||
| 
						 | 
					7d06cb56ef | ||
| 
						 | 
					f678aaf1e0 | ||
| 
						 | 
					020031c81d | ||
| 
						 | 
					a40c870e78 | ||
| 
						 | 
					8746063177 | ||
| 
						 | 
					e39f5a9ab5 | ||
| 
						 | 
					316db4f384 | ||
| 
						 | 
					8b39bff31d | ||
| 
						 | 
					e99476a99b | ||
| 
						 | 
					c2712a3929 | ||
| 
						 | 
					cb06e15a74 | ||
| 
						 | 
					cb0bccc9b5 | ||
| 
						 | 
					65fd592d52 | ||
| 
						 | 
					86fbf77aa9 | ||
| 
						 | 
					8598da8100 | ||
| 
						 | 
					80bfc148d0 | ||
| 
						 | 
					eed0cd6930 | ||
| 
						 | 
					3adb7809dd | ||
| 
						 | 
					1505d063f5 | ||
| 
						 | 
					446ecd86e6 | ||
| 
						 | 
					ddcad44468 | ||
| 
						 | 
					2c848fb3e1 | ||
| 
						 | 
					3be8078248 | ||
| 
						 | 
					4478021f28 | ||
| 
						 | 
					8d8b9e1336 | ||
| 
						 | 
					e1ed44d847 | ||
| 
						 | 
					43d86dd5c8 | ||
| 
						 | 
					9cd399c2df | ||
| 
						 | 
					3e54eeb62f | ||
| 
						 | 
					a4be008028 | ||
| 
						 | 
					85e62cfd0e | ||
| 
						 | 
					84fe19e868 | 
							
								
								
									
										3
									
								
								.env
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										3
									
								
								.env
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,3 @@
 | 
				
			|||||||
 | 
					WAZUH_VERSION=4.6.0
 | 
				
			||||||
 | 
					WAZUH_IMAGE_VERSION=4.6.0
 | 
				
			||||||
 | 
					WAZUH_TAG_REVISION=1
 | 
				
			||||||
							
								
								
									
										34
									
								
								.github/.goss.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										34
									
								
								.github/.goss.yaml
									
									
									
									
										vendored
									
									
								
							@@ -56,7 +56,7 @@ package:
 | 
				
			|||||||
  wazuh-manager:
 | 
					  wazuh-manager:
 | 
				
			||||||
    installed: true
 | 
					    installed: true
 | 
				
			||||||
    versions:
 | 
					    versions:
 | 
				
			||||||
    - 4.3.0
 | 
					    - 4.6.0-1
 | 
				
			||||||
port:
 | 
					port:
 | 
				
			||||||
  tcp:1514:
 | 
					  tcp:1514:
 | 
				
			||||||
    listening: true
 | 
					    listening: true
 | 
				
			||||||
@@ -70,28 +70,6 @@ port:
 | 
				
			|||||||
    listening: true
 | 
					    listening: true
 | 
				
			||||||
    ip:
 | 
					    ip:
 | 
				
			||||||
    - 0.0.0.0
 | 
					    - 0.0.0.0
 | 
				
			||||||
user:
 | 
					 | 
				
			||||||
  wazuh:
 | 
					 | 
				
			||||||
    exists: true
 | 
					 | 
				
			||||||
    groups:
 | 
					 | 
				
			||||||
    - wazuh
 | 
					 | 
				
			||||||
    home: /var/ossec
 | 
					 | 
				
			||||||
    shell: /sbin/nologin
 | 
					 | 
				
			||||||
  wazuh:
 | 
					 | 
				
			||||||
    exists: true
 | 
					 | 
				
			||||||
    groups:
 | 
					 | 
				
			||||||
    - wazuh
 | 
					 | 
				
			||||||
    home: /var/ossec
 | 
					 | 
				
			||||||
    shell: /sbin/nologin
 | 
					 | 
				
			||||||
  wazuh:
 | 
					 | 
				
			||||||
    exists: true
 | 
					 | 
				
			||||||
    groups:
 | 
					 | 
				
			||||||
    - wazuh
 | 
					 | 
				
			||||||
    home: /var/ossec
 | 
					 | 
				
			||||||
    shell: /sbin/nologin
 | 
					 | 
				
			||||||
group:
 | 
					 | 
				
			||||||
  wazuh:
 | 
					 | 
				
			||||||
    exists: true
 | 
					 | 
				
			||||||
process:
 | 
					process:
 | 
				
			||||||
  filebeat:
 | 
					  filebeat:
 | 
				
			||||||
    running: true
 | 
					    running: true
 | 
				
			||||||
@@ -113,3 +91,13 @@ process:
 | 
				
			|||||||
    running: true
 | 
					    running: true
 | 
				
			||||||
  wazuh-modulesd:
 | 
					  wazuh-modulesd:
 | 
				
			||||||
    running: true
 | 
					    running: true
 | 
				
			||||||
 | 
					user:
 | 
				
			||||||
 | 
					  wazuh:
 | 
				
			||||||
 | 
					    exists: true
 | 
				
			||||||
 | 
					    groups:
 | 
				
			||||||
 | 
					    - wazuh
 | 
				
			||||||
 | 
					    home: /var/ossec
 | 
				
			||||||
 | 
					    shell: /sbin/nologin
 | 
				
			||||||
 | 
					group:
 | 
				
			||||||
 | 
					  wazuh:
 | 
				
			||||||
 | 
					    exists: true
 | 
				
			||||||
							
								
								
									
										18
									
								
								.github/multi-node-filebeat-check.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										18
									
								
								.github/multi-node-filebeat-check.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							@@ -0,0 +1,18 @@
 | 
				
			|||||||
 | 
					filebeatout1=$(docker exec multi-node_wazuh.master_1 sh -c 'filebeat test output')
 | 
				
			||||||
 | 
					filebeatstatus1=$(echo "${filebeatout1}" | grep -c OK)
 | 
				
			||||||
 | 
					if [[ filebeatstatus1 -eq 7 ]]; then
 | 
				
			||||||
 | 
					  echo "No errors in master filebeat"
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					  echo "Errors in master filebeat"
 | 
				
			||||||
 | 
					  echo "${filebeatout1}"
 | 
				
			||||||
 | 
					  exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					filebeatout2=$(docker exec multi-node_wazuh.worker_1 sh -c 'filebeat test output')
 | 
				
			||||||
 | 
					filebeatstatus2=$(echo "${filebeatout2}" | grep -c OK)
 | 
				
			||||||
 | 
					if [[ filebeatstatus2 -eq 7 ]]; then
 | 
				
			||||||
 | 
					 echo "No errors in worker filebeat"
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					 echo "Errors in worker filebeat"
 | 
				
			||||||
 | 
					 echo "${filebeatout2}"
 | 
				
			||||||
 | 
					 exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
							
								
								
									
										16
									
								
								.github/multi-node-log-check.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										16
									
								
								.github/multi-node-log-check.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							@@ -0,0 +1,16 @@
 | 
				
			|||||||
 | 
					log1=$(docker exec multi-node_wazuh.master_1 sh -c 'cat /var/ossec/logs/ossec.log' | grep -P "ERR|WARN|CRIT")
 | 
				
			||||||
 | 
					if [[ -z "$log1" ]]; then
 | 
				
			||||||
 | 
					  echo "No errors in master ossec.log"
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					  echo "Errors in master ossec.log:"
 | 
				
			||||||
 | 
					  echo "${log1}"
 | 
				
			||||||
 | 
					  exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					log2=$(docker exec multi-node_wazuh.worker_1 sh -c 'cat /var/ossec/logs/ossec.log' | grep -P "ERR|WARN|CRIT")
 | 
				
			||||||
 | 
					if [[ -z "${log2}" ]]; then
 | 
				
			||||||
 | 
					  echo "No errors in worker ossec.log"
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					  echo "Errors in worker ossec.log:"
 | 
				
			||||||
 | 
					  echo "${log2}"
 | 
				
			||||||
 | 
					  exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
							
								
								
									
										9
									
								
								.github/single-node-filebeat-check.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										9
									
								
								.github/single-node-filebeat-check.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							@@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					filebeatout=$(docker exec single-node_wazuh.manager_1 sh -c 'filebeat test output')
 | 
				
			||||||
 | 
					filebeatstatus=$(echo "${filebeatout}" | grep -c OK)
 | 
				
			||||||
 | 
					if [[ filebeatstatus -eq 7 ]]; then
 | 
				
			||||||
 | 
					  echo "No errors in filebeat"
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					  echo "Errors in filebeat"
 | 
				
			||||||
 | 
					  echo "${filebeatout}"
 | 
				
			||||||
 | 
					  exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
							
								
								
									
										8
									
								
								.github/single-node-log-check.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										8
									
								
								.github/single-node-log-check.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							@@ -0,0 +1,8 @@
 | 
				
			|||||||
 | 
					log=$(docker exec single-node_wazuh.manager_1 sh -c 'cat /var/ossec/logs/ossec.log' | grep -P "ERR|WARN|CRIT")
 | 
				
			||||||
 | 
					if [[ -z "$log" ]]; then
 | 
				
			||||||
 | 
					  echo "No errors in ossec.log"
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					  echo "Errors in ossec.log:"
 | 
				
			||||||
 | 
					  echo "${log}"
 | 
				
			||||||
 | 
					  exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
							
								
								
									
										301
									
								
								.github/workflows/push.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										301
									
								
								.github/workflows/push.yml
									
									
									
									
										vendored
									
									
								
							@@ -1,31 +1,310 @@
 | 
				
			|||||||
name: Wazuh Docker pipeline
 | 
					name: Wazuh Docker pipeline
 | 
				
			||||||
 | 
					
 | 
				
			||||||
on: [push]
 | 
					on: [pull_request]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
jobs:
 | 
					jobs:
 | 
				
			||||||
  build-stack:
 | 
					  build-docker-images:
 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    - name: Check out code
 | 
					    - name: Check out code
 | 
				
			||||||
      uses: actions/checkout@v2
 | 
					      uses: actions/checkout@v3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    - name: Build the docker-compose stack
 | 
					    - name: Build Wazuh images
 | 
				
			||||||
      run: docker-compose -f build-wazuh-images.yml up -d --build
 | 
					      run: build-docker-images/build-images.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    - name: Check running containers
 | 
					    - name: Create enviroment variables
 | 
				
			||||||
      run: docker ps -a
 | 
					      run: cat .env > $GITHUB_ENV
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    - name: Shutdown the stack
 | 
					    - name: Create backup Docker images
 | 
				
			||||||
      run: docker-compose -f build-wazuh-images.yml kill
 | 
					      run: |
 | 
				
			||||||
 | 
					        mkdir -p /home/runner/work/wazuh-docker/wazuh-docker/docker-images/
 | 
				
			||||||
 | 
					        docker save wazuh/wazuh-manager:${{env.WAZUH_IMAGE_VERSION}} -o /home/runner/work/wazuh-docker/wazuh-docker/docker-images/wazuh-manager.tar
 | 
				
			||||||
 | 
					        docker save wazuh/wazuh-indexer:${{env.WAZUH_IMAGE_VERSION}} -o /home/runner/work/wazuh-docker/wazuh-docker/docker-images/wazuh-indexer.tar
 | 
				
			||||||
 | 
					        docker save wazuh/wazuh-dashboard:${{env.WAZUH_IMAGE_VERSION}} -o /home/runner/work/wazuh-docker/wazuh-docker/docker-images/wazuh-dashboard.tar
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Temporarily save Wazuh manager Docker image
 | 
				
			||||||
 | 
					      uses: actions/upload-artifact@v3
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        name: docker-artifact-manager
 | 
				
			||||||
 | 
					        path: /home/runner/work/wazuh-docker/wazuh-docker/docker-images/wazuh-manager.tar
 | 
				
			||||||
 | 
					        retention-days: 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Temporarily save Wazuh indexer Docker image
 | 
				
			||||||
 | 
					      uses: actions/upload-artifact@v3
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        name: docker-artifact-indexer
 | 
				
			||||||
 | 
					        path: /home/runner/work/wazuh-docker/wazuh-docker/docker-images/wazuh-indexer.tar
 | 
				
			||||||
 | 
					        retention-days: 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Temporarily save Wazuh dashboard Docker image
 | 
				
			||||||
 | 
					      uses: actions/upload-artifact@v3
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        name: docker-artifact-dashboard
 | 
				
			||||||
 | 
					        path: /home/runner/work/wazuh-docker/wazuh-docker/docker-images/wazuh-dashboard.tar
 | 
				
			||||||
 | 
					        retention-days: 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    - name: Install Goss
 | 
					    - name: Install Goss
 | 
				
			||||||
      uses: e1himself/goss-installation-action@v1.0.3
 | 
					      uses: e1himself/goss-installation-action@v1.0.3
 | 
				
			||||||
      with:
 | 
					      with:
 | 
				
			||||||
        version: v0.3.16
 | 
					        version: v0.3.16
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    - name: Execute Goss tests (wazuh-odfe)
 | 
					    - name: Execute Goss tests (wazuh-manager)
 | 
				
			||||||
      run: dgoss run wazuh/wazuh-manager:4.3.0
 | 
					      run: dgoss run wazuh/wazuh-manager:${{env.WAZUH_IMAGE_VERSION}}
 | 
				
			||||||
      env:
 | 
					      env:
 | 
				
			||||||
        GOSS_SLEEP: 30
 | 
					        GOSS_SLEEP: 30
 | 
				
			||||||
        GOSS_FILE: .github/.goss.yaml
 | 
					        GOSS_FILE: .github/.goss.yaml
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  check-single-node:
 | 
				
			||||||
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
 | 
					    needs: build-docker-images
 | 
				
			||||||
 | 
					    steps:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check out code
 | 
				
			||||||
 | 
					      uses: actions/checkout@v3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Create enviroment variables
 | 
				
			||||||
 | 
					      run: cat .env > $GITHUB_ENV
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Retrieve saved Wazuh indexer Docker image
 | 
				
			||||||
 | 
					      uses: actions/download-artifact@v3
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        name: docker-artifact-indexer
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Retrieve saved Wazuh manager Docker image
 | 
				
			||||||
 | 
					      uses: actions/download-artifact@v3
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        name: docker-artifact-manager
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Retrieve saved Wazuh dashboard Docker image
 | 
				
			||||||
 | 
					      uses: actions/download-artifact@v3
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        name: docker-artifact-dashboard
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Docker load
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        docker load --input ./wazuh-indexer.tar
 | 
				
			||||||
 | 
					        docker load --input ./wazuh-dashboard.tar
 | 
				
			||||||
 | 
					        docker load --input ./wazuh-manager.tar
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Create single node certficates
 | 
				
			||||||
 | 
					      run: docker-compose -f single-node/generate-indexer-certs.yml run --rm generator
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Start single node stack
 | 
				
			||||||
 | 
					      run: docker-compose -f single-node/docker-compose.yml up -d
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check Wazuh indexer start
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					       sleep 60
 | 
				
			||||||
 | 
					       status_green="`curl -XGET "https://0.0.0.0:9200/_cluster/health" -u admin:SecretPassword -k -s | grep green | wc -l`"
 | 
				
			||||||
 | 
					       if [[ $status_green -eq 1 ]]; then
 | 
				
			||||||
 | 
					        curl -XGET "https://0.0.0.0:9200/_cluster/health" -u admin:SecretPassword -k -s
 | 
				
			||||||
 | 
					       else
 | 
				
			||||||
 | 
					        curl -XGET "https://0.0.0.0:9200/_cluster/health" -u admin:SecretPassword -k -s
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					       fi
 | 
				
			||||||
 | 
					       status_index="`curl -XGET "https://0.0.0.0:9200/_cat/indices" -u admin:SecretPassword -k -s | wc -l`"
 | 
				
			||||||
 | 
					       status_index_green="`curl -XGET "https://0.0.0.0:9200/_cat/indices" -u admin:SecretPassword -k -s | grep "green" | wc -l`"
 | 
				
			||||||
 | 
					       if [[ $status_index_green -eq $status_index ]]; then
 | 
				
			||||||
 | 
					        curl -XGET "https://0.0.0.0:9200/_cat/indices" -u admin:SecretPassword -k -s
 | 
				
			||||||
 | 
					       else
 | 
				
			||||||
 | 
					        curl -XGET "https://0.0.0.0:9200/_cat/indices" -u admin:SecretPassword -k -s
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					       fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check Wazuh indexer nodes
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					       nodes="`curl -XGET "https://0.0.0.0:9200/_cat/nodes" -u admin:SecretPassword -k -s | grep -E "indexer" | wc -l`"
 | 
				
			||||||
 | 
					       if [[ $nodes -eq 1 ]]; then
 | 
				
			||||||
 | 
					        echo "Wazuh indexer nodes: ${nodes}"
 | 
				
			||||||
 | 
					       else
 | 
				
			||||||
 | 
					        echo "Wazuh indexer nodes: ${nodes}"
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					       fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check documents into wazuh-alerts index
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					       docs="`curl -XGET "https://0.0.0.0:9200/wazuh-alerts*/_count" -u admin:SecretPassword -k -s | jq -r ".count"`"
 | 
				
			||||||
 | 
					       if [[ $docs -gt 100 ]]; then
 | 
				
			||||||
 | 
					        echo "wazuh-alerts index documents: ${docs}"
 | 
				
			||||||
 | 
					       else
 | 
				
			||||||
 | 
					        echo "wazuh-alerts index documents: ${docs}"
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					       fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check Wazuh templates
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					       qty_templates="`curl -XGET "https://0.0.0.0:9200/_cat/templates" -u admin:SecretPassword -k -s | grep -P "wazuh|wazuh-agent|wazuh-statistics" | wc -l`"
 | 
				
			||||||
 | 
					       templates="`curl -XGET "https://0.0.0.0:9200/_cat/templates" -u admin:SecretPassword -k -s | grep -P "wazuh|wazuh-agent|wazuh-statistics"`"
 | 
				
			||||||
 | 
					       if [[ $qty_templates -eq 3 ]]; then
 | 
				
			||||||
 | 
					        echo "wazuh templates:"
 | 
				
			||||||
 | 
					        echo "${templates}"
 | 
				
			||||||
 | 
					       else
 | 
				
			||||||
 | 
					        echo "wazuh templates:"
 | 
				
			||||||
 | 
					        echo "${templates}"
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					       fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check Wazuh manager start
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        services="`curl -k -s -X GET "https://0.0.0.0:55000/manager/status?pretty=true" -H  "Authorization: Bearer ${{env.TOKEN}}" | jq -r .data.affected_items | grep running | wc -l`"
 | 
				
			||||||
 | 
					        if [[ $services -gt 9 ]]; then
 | 
				
			||||||
 | 
					          echo "Wazuh Manager Services: ${services}"
 | 
				
			||||||
 | 
					          echo "OK"
 | 
				
			||||||
 | 
					        else
 | 
				
			||||||
 | 
					          echo "Wazuh indexer nodes: ${nodes}"
 | 
				
			||||||
 | 
					          curl -k -X GET "https://0.0.0.0:55000/manager/status?pretty=true" -H  "Authorization: Bearer ${{env.TOKEN}}" | jq -r .data.affected_items
 | 
				
			||||||
 | 
					          exit 1
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					      env:
 | 
				
			||||||
 | 
					        TOKEN: $(curl -s -u wazuh-wui:MyS3cr37P450r.*- -k -X GET "https://0.0.0.0:55000/security/user/authenticate?raw=true")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check errors in ossec.log
 | 
				
			||||||
 | 
					      run: ./.github/single-node-log-check.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check filebeat output
 | 
				
			||||||
 | 
					      run: ./.github/single-node-filebeat-check.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check Wazuh dashboard service URL
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					       status=$(curl -XGET --silent  https://0.0.0.0:443/app/status -k -u admin:SecretPassword -I -s | grep -E "^HTTP" | awk  '{print $2}')
 | 
				
			||||||
 | 
					       if [[ $status -eq 200 ]]; then
 | 
				
			||||||
 | 
					        echo "Wazuh dashboard status: ${status}"
 | 
				
			||||||
 | 
					       else
 | 
				
			||||||
 | 
					        echo "Wazuh dashboard status: ${status}"
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					       fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Stop single node stack
 | 
				
			||||||
 | 
					      run: docker-compose -f single-node/docker-compose.yml down
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  check-multi-node:
 | 
				
			||||||
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
 | 
					    needs: build-docker-images
 | 
				
			||||||
 | 
					    steps:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check out code
 | 
				
			||||||
 | 
					      uses: actions/checkout@v3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Create enviroment variables
 | 
				
			||||||
 | 
					      run: cat .env > $GITHUB_ENV
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Retrieve saved Wazuh dashboard Docker image
 | 
				
			||||||
 | 
					      uses: actions/download-artifact@v3
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        name: docker-artifact-dashboard
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Retrieve saved Wazuh manager Docker image
 | 
				
			||||||
 | 
					      uses: actions/download-artifact@v3
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        name: docker-artifact-manager
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Retrieve saved Wazuh indexer Docker image
 | 
				
			||||||
 | 
					      uses: actions/download-artifact@v3
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        name: docker-artifact-indexer
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Docker load
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        docker load --input ./wazuh-manager.tar
 | 
				
			||||||
 | 
					        docker load --input ./wazuh-indexer.tar
 | 
				
			||||||
 | 
					        docker load --input ./wazuh-dashboard.tar
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Create multi node certficates
 | 
				
			||||||
 | 
					      run: docker-compose -f multi-node/generate-indexer-certs.yml run --rm generator
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Start multi node stack
 | 
				
			||||||
 | 
					      run: docker-compose -f multi-node/docker-compose.yml up -d
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check Wazuh indexer start
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					       sleep 120
 | 
				
			||||||
 | 
					       status_green="`curl -XGET "https://0.0.0.0:9200/_cluster/health" -u admin:SecretPassword -k -s | grep green | wc -l`"
 | 
				
			||||||
 | 
					       if [[ $status_green -eq 1 ]]; then
 | 
				
			||||||
 | 
					        curl -XGET "https://0.0.0.0:9200/_cluster/health" -u admin:SecretPassword -k -s
 | 
				
			||||||
 | 
					       else
 | 
				
			||||||
 | 
					        curl -XGET "https://0.0.0.0:9200/_cluster/health" -u admin:SecretPassword -k -s
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					       fi
 | 
				
			||||||
 | 
					       status_index="`curl -XGET "https://0.0.0.0:9200/_cat/indices" -u admin:SecretPassword -k -s | wc -l`"
 | 
				
			||||||
 | 
					       status_index_green="`curl -XGET "https://0.0.0.0:9200/_cat/indices" -u admin:SecretPassword -k -s | grep -E "green" | wc -l`"
 | 
				
			||||||
 | 
					       if [[ $status_index_green -eq $status_index ]]; then
 | 
				
			||||||
 | 
					        curl -XGET "https://0.0.0.0:9200/_cat/indices" -u admin:SecretPassword -k -s
 | 
				
			||||||
 | 
					       else
 | 
				
			||||||
 | 
					        curl -XGET "https://0.0.0.0:9200/_cat/indices" -u admin:SecretPassword -k -s
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					       fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check Wazuh indexer nodes
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					       nodes="`curl -XGET "https://0.0.0.0:9200/_cat/nodes" -u admin:SecretPassword -k -s | grep -E "indexer" | wc -l`"
 | 
				
			||||||
 | 
					       if [[ $nodes -eq 3 ]]; then
 | 
				
			||||||
 | 
					        echo "Wazuh indexer nodes: ${nodes}"
 | 
				
			||||||
 | 
					       else
 | 
				
			||||||
 | 
					        echo "Wazuh indexer nodes: ${nodes}"
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					       fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check documents into wazuh-alerts index
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					       docs="`curl -XGET "https://0.0.0.0:9200/wazuh-alerts*/_count" -u admin:SecretPassword -k -s | jq -r ".count"`"
 | 
				
			||||||
 | 
					       if [[ $docs -gt 100 ]]; then
 | 
				
			||||||
 | 
					        echo "wazuh-alerts index documents: ${docs}"
 | 
				
			||||||
 | 
					       else
 | 
				
			||||||
 | 
					        echo "wazuh-alerts index documents: ${docs}"
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					       fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check Wazuh templates
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					       qty_templates="`curl -XGET "https://0.0.0.0:9200/_cat/templates" -u admin:SecretPassword -k -s | grep "wazuh" | wc -l`"
 | 
				
			||||||
 | 
					       templates="`curl -XGET "https://0.0.0.0:9200/_cat/templates" -u admin:SecretPassword -k -s | grep "wazuh"`"
 | 
				
			||||||
 | 
					       if [[ $qty_templates -eq 3 ]]; then
 | 
				
			||||||
 | 
					        echo "wazuh templates:"
 | 
				
			||||||
 | 
					        echo "${templates}"
 | 
				
			||||||
 | 
					       else
 | 
				
			||||||
 | 
					        echo "wazuh templates:"
 | 
				
			||||||
 | 
					        echo "${templates}"
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					       fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check Wazuh manager start
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        services="`curl -k -s -X GET "https://0.0.0.0:55000/manager/status?pretty=true" -H  "Authorization: Bearer ${{env.TOKEN}}" | jq -r .data.affected_items | grep running | wc -l`"
 | 
				
			||||||
 | 
					        if [[ $services -gt 10 ]]; then
 | 
				
			||||||
 | 
					          echo "Wazuh Manager Services: ${services}"
 | 
				
			||||||
 | 
					          echo "OK"
 | 
				
			||||||
 | 
					        else
 | 
				
			||||||
 | 
					          echo "Wazuh indexer nodes: ${nodes}"
 | 
				
			||||||
 | 
					          curl -k -s -X GET "https://0.0.0.0:55000/manager/status?pretty=true" -H  "Authorization: Bearer ${{env.TOKEN}}" | jq -r .data.affected_items
 | 
				
			||||||
 | 
					          exit 1
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					        nodes=$(curl -k -s -X GET "https://0.0.0.0:55000/cluster/nodes" -H "Authorization: Bearer ${{env.TOKEN}}" | jq -r ".data.affected_items[].name" | wc -l)
 | 
				
			||||||
 | 
					        if [[ $nodes -eq 2 ]]; then
 | 
				
			||||||
 | 
					         echo "Wazuh manager nodes: ${nodes}"
 | 
				
			||||||
 | 
					        else
 | 
				
			||||||
 | 
					         echo "Wazuh manager nodes: ${nodes}"
 | 
				
			||||||
 | 
					         exit 1
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					      env:
 | 
				
			||||||
 | 
					        TOKEN: $(curl -s -u wazuh-wui:MyS3cr37P450r.*- -k -X GET "https://0.0.0.0:55000/security/user/authenticate?raw=true")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check errors in ossec.log
 | 
				
			||||||
 | 
					      run: ./.github/multi-node-log-check.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check filebeat output
 | 
				
			||||||
 | 
					      run: ./.github/multi-node-filebeat-check.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Check Wazuh dashboard service URL
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					       status=$(curl -XGET --silent  https://0.0.0.0:443/app/status -k -u admin:SecretPassword -I | grep -E "^HTTP" | awk  '{print $2}')
 | 
				
			||||||
 | 
					       if [[ $status -eq 200 ]]; then
 | 
				
			||||||
 | 
					        echo "Wazuh dashboard status: ${status}"
 | 
				
			||||||
 | 
					       else
 | 
				
			||||||
 | 
					        echo "Wazuh dashboard status: ${status}"
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					       fi
 | 
				
			||||||
							
								
								
									
										127
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										127
									
								
								CHANGELOG.md
									
									
									
									
									
								
							@@ -1,11 +1,138 @@
 | 
				
			|||||||
# Change Log
 | 
					# Change Log
 | 
				
			||||||
All notable changes to this project will be documented in this file.
 | 
					All notable changes to this project will be documented in this file.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.6.0
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.6.0](https://github.com/wazuh/wazuh/blob/v4.6.0/CHANGELOG.md#v460)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.5.4
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.5.4](https://github.com/wazuh/wazuh/blob/v4.5.4/CHANGELOG.md#v454)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.5.3
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.5.3](https://github.com/wazuh/wazuh/blob/v4.5.3/CHANGELOG.md#v453)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.5.2
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.5.2](https://github.com/wazuh/wazuh/blob/v4.5.2/CHANGELOG.md#v452)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.5.1
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.5.1](https://github.com/wazuh/wazuh/blob/v4.5.1/CHANGELOG.md#v451)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.5.0
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.5.0](https://github.com/wazuh/wazuh/blob/v4.5.0/CHANGELOG.md#v450)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.4.5
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.4.5](https://github.com/wazuh/wazuh/blob/v4.4.5/CHANGELOG.md#v445)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.4.4
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.4.4](https://github.com/wazuh/wazuh/blob/v4.4.4/CHANGELOG.md#v444)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.4.3
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.4.3](https://github.com/wazuh/wazuh/blob/v4.4.3/CHANGELOG.md#v443)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.4.2
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.4.2](https://github.com/wazuh/wazuh/blob/v4.4.2/CHANGELOG.md#v442)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.4.1
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.4.1](https://github.com/wazuh/wazuh/blob/v4.4.1/CHANGELOG.md#v441)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.4.0
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.4.0](https://github.com/wazuh/wazuh/blob/v4.4.0/CHANGELOG.md#v440)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.3.11
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.3.11](https://github.com/wazuh/wazuh/blob/v4.3.11/CHANGELOG.md#v4311)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.3.10
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.3.10](https://github.com/wazuh/wazuh/blob/v4.3.10/CHANGELOG.md#v4310)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.3.9
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.3.9](https://github.com/wazuh/wazuh/blob/v4.3.9/CHANGELOG.md#v439)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.3.8
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.3.8](https://github.com/wazuh/wazuh/blob/v4.3.8/CHANGELOG.md#v438)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.3.7
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.3.7](https://github.com/wazuh/wazuh/blob/v4.3.7/CHANGELOG.md#v437)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.3.6
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.3.6](https://github.com/wazuh/wazuh/blob/v4.3.6/CHANGELOG.md#v436)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.3.5
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.3.5](https://github.com/wazuh/wazuh/blob/v4.3.5/CHANGELOG.md#v435)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.3.4
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.3.4](https://github.com/wazuh/wazuh/blob/v4.3.4/CHANGELOG.md#v434)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.3.3
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.3.3](https://github.com/wazuh/wazuh/blob/v4.3.3/CHANGELOG.md#v433)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.3.2
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.3.2](https://github.com/wazuh/wazuh/blob/v4.3.2/CHANGELOG.md#v432)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.3.1
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.3.1](https://github.com/wazuh/wazuh/blob/v4.3.1/CHANGELOG.md#v431)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Wazuh Docker v4.3.0
 | 
					## Wazuh Docker v4.3.0
 | 
				
			||||||
### Added
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Update Wazuh to version [4.3.0](https://github.com/wazuh/wazuh/blob/v4.3.0/CHANGELOG.md#v430)
 | 
					- Update Wazuh to version [4.3.0](https://github.com/wazuh/wazuh/blob/v4.3.0/CHANGELOG.md#v430)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.2.7
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.2.7](https://github.com/wazuh/wazuh/blob/v4.2.7/CHANGELOG.md#v427)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Wazuh Docker v4.2.6
 | 
				
			||||||
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Update Wazuh to version [4.2.6](https://github.com/wazuh/wazuh/blob/v4.2.6/CHANGELOG.md#v426)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Wazuh Docker v4.2.5
 | 
					## Wazuh Docker v4.2.5
 | 
				
			||||||
### Added
 | 
					### Added
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										2
									
								
								LICENSE
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								LICENSE
									
									
									
									
									
								
							@@ -1,5 +1,5 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 Portions Copyright (C) 2021 Wazuh, Inc.
 | 
					 Portions Copyright (C) 2017, Wazuh Inc.
 | 
				
			||||||
 Based on work Copyright (C) 2003 - 2013 Trend Micro, Inc.
 | 
					 Based on work Copyright (C) 2003 - 2013 Trend Micro, Inc.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 This program is a free software; you can redistribute it and/or modify
 | 
					 This program is a free software; you can redistribute it and/or modify
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										37
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										37
									
								
								README.md
									
									
									
									
									
								
							@@ -36,13 +36,13 @@ Default values are included when available.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
### Wazuh
 | 
					### Wazuh
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
API_USERNAME="wazuh"                                # Wazuh API username
 | 
					API_USERNAME="wazuh-wui"                            # Wazuh API username
 | 
				
			||||||
API_PASSWORD="wazuh"                                # Wazuh API password - Must comply with requirements
 | 
					API_PASSWORD="MyS3cr37P450r.*-"                     # Wazuh API password - Must comply with requirements
 | 
				
			||||||
                                                    # (8+ length, uppercase, lowercase, specials chars)
 | 
					                                                    # (8+ length, uppercase, lowercase, specials chars)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
INDEXER_URL=https://wazuh.indexer:9200              # Wazuh indexer URL
 | 
					INDEXER_URL=https://wazuh.indexer:9200              # Wazuh indexer URL
 | 
				
			||||||
INDEXER_USERNAME=admin                              # Wazuh indexer Username
 | 
					INDEXER_USERNAME=admin                              # Wazuh indexer Username
 | 
				
			||||||
INDEXER_PASSWORD=admin                              # Wazuh indexer Password
 | 
					INDEXER_PASSWORD=SecretPassword                     # Wazuh indexer Password
 | 
				
			||||||
FILEBEAT_SSL_VERIFICATION_MODE=full                 # Filebeat SSL Verification mode (full or none)
 | 
					FILEBEAT_SSL_VERIFICATION_MODE=full                 # Filebeat SSL Verification mode (full or none)
 | 
				
			||||||
SSL_CERTIFICATE_AUTHORITIES=""                      # Path of Filebeat SSL CA
 | 
					SSL_CERTIFICATE_AUTHORITIES=""                      # Path of Filebeat SSL CA
 | 
				
			||||||
SSL_CERTIFICATE=""                                  # Path of Filebeat SSL Certificate
 | 
					SSL_CERTIFICATE=""                                  # Path of Filebeat SSL Certificate
 | 
				
			||||||
@@ -78,10 +78,12 @@ API_SELECTOR=true               Defines if the user is allowed to change the sel
 | 
				
			|||||||
IP_SELECTOR=true                # Defines if the user is allowed to change the selected index pattern directly from the Wazuh app top menu
 | 
					IP_SELECTOR=true                # Defines if the user is allowed to change the selected index pattern directly from the Wazuh app top menu
 | 
				
			||||||
IP_IGNORE="[]"                  # List of index patterns to be ignored
 | 
					IP_IGNORE="[]"                  # List of index patterns to be ignored
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DASHBOARD_USERNAME=kibanaserver     # Custom user saved in the dashboard keystore
 | 
				
			||||||
 | 
					DASHBOARD_PASSWORD=kibanaserver     # Custom password saved in the dashboard keystore
 | 
				
			||||||
WAZUH_MONITORING_ENABLED=true       # Custom settings to enable/disable wazuh-monitoring indices
 | 
					WAZUH_MONITORING_ENABLED=true       # Custom settings to enable/disable wazuh-monitoring indices
 | 
				
			||||||
WAZUH_MONITORING_FREQUENCY=900      # Custom setting to set the frequency for wazuh-monitoring indices cron task
 | 
					WAZUH_MONITORING_FREQUENCY=900      # Custom setting to set the frequency for wazuh-monitoring indices cron task
 | 
				
			||||||
WAZUH_MONITORING_SHARDS=2           # Configure wazuh-monitoring-* indices shards and replicas
 | 
					WAZUH_MONITORING_SHARDS=2           # Configure wazuh-monitoring-* indices shards and replicas
 | 
				
			||||||
WAZUH_MONITORING_REPLICAS=0         #
 | 
					WAZUH_MONITORING_REPLICAS=0         ##
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Directory structure
 | 
					## Directory structure
 | 
				
			||||||
@@ -193,7 +195,32 @@ WAZUH_MONITORING_REPLICAS=0         #
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
| Wazuh version | ODFE    | XPACK  |
 | 
					| Wazuh version | ODFE    | XPACK  |
 | 
				
			||||||
|---------------|---------|--------|
 | 
					|---------------|---------|--------|
 | 
				
			||||||
 | 
					| v4.6.0        |         |        |
 | 
				
			||||||
 | 
					| v4.5.4        |         |        |
 | 
				
			||||||
 | 
					| v4.5.3        |         |        |
 | 
				
			||||||
 | 
					| v4.5.2        |         |        |
 | 
				
			||||||
 | 
					| v4.5.1        |         |        |
 | 
				
			||||||
 | 
					| v4.5.0        |         |        |
 | 
				
			||||||
 | 
					| v4.4.5        |         |        |
 | 
				
			||||||
 | 
					| v4.4.4        |         |        |
 | 
				
			||||||
 | 
					| v4.4.3        |         |        |
 | 
				
			||||||
 | 
					| v4.4.2        |         |        |
 | 
				
			||||||
 | 
					| v4.4.1        |         |        |
 | 
				
			||||||
 | 
					| v4.4.0        |         |        |
 | 
				
			||||||
 | 
					| v4.3.11       |         |        |
 | 
				
			||||||
 | 
					| v4.3.10       |         |        |
 | 
				
			||||||
 | 
					| v4.3.9        |         |        |
 | 
				
			||||||
 | 
					| v4.3.8        |         |        |
 | 
				
			||||||
 | 
					| v4.3.7        |         |        |
 | 
				
			||||||
 | 
					| v4.3.6        |         |        |
 | 
				
			||||||
 | 
					| v4.3.5        |         |        |
 | 
				
			||||||
 | 
					| v4.3.4        |         |        |
 | 
				
			||||||
 | 
					| v4.3.3        |         |        |
 | 
				
			||||||
 | 
					| v4.3.2        |         |        |
 | 
				
			||||||
 | 
					| v4.3.1        |         |        |
 | 
				
			||||||
| v4.3.0        |         |        |
 | 
					| v4.3.0        |         |        |
 | 
				
			||||||
 | 
					| v4.2.7        | 1.13.2  | 7.11.2 |
 | 
				
			||||||
 | 
					| v4.2.6        | 1.13.2  | 7.11.2 |
 | 
				
			||||||
| v4.2.5        | 1.13.2  | 7.11.2 |
 | 
					| v4.2.5        | 1.13.2  | 7.11.2 |
 | 
				
			||||||
| v4.2.4        | 1.13.2  | 7.11.2 |
 | 
					| v4.2.4        | 1.13.2  | 7.11.2 |
 | 
				
			||||||
| v4.2.3        | 1.13.2  | 7.11.2 |
 | 
					| v4.2.3        | 1.13.2  | 7.11.2 |
 | 
				
			||||||
@@ -223,7 +250,7 @@ We thank you them and everyone else who has contributed to this project.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
## License and copyright
 | 
					## License and copyright
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Wazuh Docker Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					Wazuh Docker Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Web references
 | 
					## Web references
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										4
									
								
								VERSION
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								VERSION
									
									
									
									
									
								
							@@ -1,2 +1,2 @@
 | 
				
			|||||||
WAZUH-DOCKER_VERSION="4.3.0"
 | 
					WAZUH-DOCKER_VERSION="4.6.0"
 | 
				
			||||||
REVISION="43100"
 | 
					REVISION="40603"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,7 +1,32 @@
 | 
				
			|||||||
# Wazuh Docker Image Builder
 | 
					# Wazuh Docker Image Builder
 | 
				
			||||||
 | 
					
 | 
				
			||||||
This stack allows you to build the Wazuh manager, indexer, and dashboard images locally by running the command:
 | 
					The creation of the images for the Wazuh stack deployment in Docker is done with the build-images.yml script
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To execute the process, the following must be executed in the root of the wazuh-docker repository:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
$ docker-compose build
 | 
					$ build-docker-images/build-images.sh
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This script initializes the environment variables needed to build each of the images.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The script allows you to build images from other versions of Wazuh, to do this you must use the -v or --version argument:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					$ build-docker-images/build-images.sh -v 4.5.2
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To get all the available script options use the -h or --help option:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					$ build-docker-images/build-images.sh -h
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Usage: build-docker-images/build-images.sh [OPTIONS]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    -d, --dev <ref>              [Optional] Set the development stage you want to build, example rc1 or beta1, not used by default.
 | 
				
			||||||
 | 
					    -f, --filebeat-module <ref>  [Optional] Set Filebeat module version. By default 0.2.
 | 
				
			||||||
 | 
					    -r, --revision <rev>         [Optional] Package revision. By default 1
 | 
				
			||||||
 | 
					    -v, --version <ver>          [Optional] Set the Wazuh version should be builded. By default, 4.6.0.
 | 
				
			||||||
 | 
					    -h, --help                   Show this help.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
							
								
								
									
										140
									
								
								build-docker-images/build-images.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										140
									
								
								build-docker-images/build-images.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,140 @@
 | 
				
			|||||||
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Wazuh package generator
 | 
				
			||||||
 | 
					# Copyright (C) 2023, Wazuh Inc.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# This program is a free software; you can redistribute it
 | 
				
			||||||
 | 
					# and/or modify it under the terms of the GNU General Public
 | 
				
			||||||
 | 
					# License (version 2) as published by the FSF - Free Software
 | 
				
			||||||
 | 
					# Foundation.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					WAZUH_IMAGE_VERSION="4.6.0"
 | 
				
			||||||
 | 
					WAZUH_TAG_REVISION="1"
 | 
				
			||||||
 | 
					WAZUH_DEV_STAGE=""
 | 
				
			||||||
 | 
					FILEBEAT_MODULE_VERSION="0.2"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# -----------------------------------------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					trap ctrl_c INT
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					clean() {
 | 
				
			||||||
 | 
					    exit_code=$1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    exit ${exit_code}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ctrl_c() {
 | 
				
			||||||
 | 
					    clean 1
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# -----------------------------------------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					build() {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    WAZUH_VERSION="$(echo $WAZUH_IMAGE_VERSION | sed -e 's/\.//g')"
 | 
				
			||||||
 | 
					    FILEBEAT_TEMPLATE_BRANCH="${WAZUH_IMAGE_VERSION}"
 | 
				
			||||||
 | 
					    WAZUH_FILEBEAT_MODULE="wazuh-filebeat-${FILEBEAT_MODULE_VERSION}.tar.gz"
 | 
				
			||||||
 | 
					    WAZUH_UI_REVISION="${WAZUH_TAG_REVISION}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if  [ "${WAZUH_DEV_STAGE}" ];then
 | 
				
			||||||
 | 
					        FILEBEAT_TEMPLATE_BRANCH="v${FILEBEAT_TEMPLATE_BRANCH}-${WAZUH_DEV_STAGE,,}"
 | 
				
			||||||
 | 
					        if ! curl --output /dev/null --silent --head --fail "https://github.com/wazuh/wazuh/tree/${FILEBEAT_TEMPLATE_BRANCH}"; then
 | 
				
			||||||
 | 
					            echo "The indicated branch does not exist in the wazuh/wazuh repository: ${FILEBEAT_TEMPLATE_BRANCH}"
 | 
				
			||||||
 | 
					            clean 1
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					    else
 | 
				
			||||||
 | 
					        if curl --output /dev/null --silent --head --fail "https://github.com/wazuh/wazuh/tree/v${FILEBEAT_TEMPLATE_BRANCH}"; then
 | 
				
			||||||
 | 
					            FILEBEAT_TEMPLATE_BRANCH="v${FILEBEAT_TEMPLATE_BRANCH}"
 | 
				
			||||||
 | 
					        elif curl --output /dev/null --silent --head --fail "https://github.com/wazuh/wazuh/tree/${FILEBEAT_TEMPLATE_BRANCH}"; then
 | 
				
			||||||
 | 
					            FILEBEAT_TEMPLATE_BRANCH="${FILEBEAT_TEMPLATE_BRANCH}"
 | 
				
			||||||
 | 
					        else
 | 
				
			||||||
 | 
					            WAZUH_MASTER_VERSION="$(curl -s https://raw.githubusercontent.com/wazuh/wazuh/master/src/VERSION | sed -e 's/v//g')"
 | 
				
			||||||
 | 
					            if [ "${FILEBEAT_TEMPLATE_BRANCH}" == "${WAZUH_MASTER_VERSION}" ]; then
 | 
				
			||||||
 | 
					                FILEBEAT_TEMPLATE_BRANCH="master"
 | 
				
			||||||
 | 
					            else
 | 
				
			||||||
 | 
					                echo "The indicated branch does not exist in the wazuh/wazuh repository: ${FILEBEAT_TEMPLATE_BRANCH}"
 | 
				
			||||||
 | 
					                clean 1
 | 
				
			||||||
 | 
					            fi
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    echo WAZUH_VERSION=$WAZUH_IMAGE_VERSION > .env
 | 
				
			||||||
 | 
					    echo WAZUH_IMAGE_VERSION=$WAZUH_IMAGE_VERSION >> .env
 | 
				
			||||||
 | 
					    echo WAZUH_TAG_REVISION=$WAZUH_TAG_REVISION >> .env
 | 
				
			||||||
 | 
					    echo FILEBEAT_TEMPLATE_BRANCH=$FILEBEAT_TEMPLATE_BRANCH >> .env
 | 
				
			||||||
 | 
					    echo WAZUH_FILEBEAT_MODULE=$WAZUH_FILEBEAT_MODULE >> .env
 | 
				
			||||||
 | 
					    echo WAZUH_UI_REVISION=$WAZUH_UI_REVISION >> .env
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    docker-compose -f build-docker-images/build-images.yml --env-file .env build --no-cache
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    return 0
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# -----------------------------------------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					help() {
 | 
				
			||||||
 | 
					    echo
 | 
				
			||||||
 | 
					    echo "Usage: $0 [OPTIONS]"
 | 
				
			||||||
 | 
					    echo
 | 
				
			||||||
 | 
					    echo "    -d, --dev <ref>              [Optional] Set the development stage you want to build, example rc1 or beta1, not used by default."
 | 
				
			||||||
 | 
					    echo "    -f, --filebeat-module <ref>  [Optional] Set Filebeat module version. By default ${FILEBEAT_MODULE_VERSION}."
 | 
				
			||||||
 | 
					    echo "    -r, --revision <rev>         [Optional] Package revision. By default ${WAZUH_TAG_REVISION}"
 | 
				
			||||||
 | 
					    echo "    -v, --version <ver>          [Optional] Set the Wazuh version should be builded. By default, ${WAZUH_IMAGE_VERSION}."
 | 
				
			||||||
 | 
					    echo "    -h, --help                   Show this help."
 | 
				
			||||||
 | 
					    echo
 | 
				
			||||||
 | 
					    exit $1
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# -----------------------------------------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					main() {
 | 
				
			||||||
 | 
					    while [ -n "${1}" ]
 | 
				
			||||||
 | 
					    do
 | 
				
			||||||
 | 
					        case "${1}" in
 | 
				
			||||||
 | 
					        "-h"|"--help")
 | 
				
			||||||
 | 
					            help 0
 | 
				
			||||||
 | 
					            ;;
 | 
				
			||||||
 | 
					        "-d"|"--dev")
 | 
				
			||||||
 | 
					            if [ -n "${2}" ]; then
 | 
				
			||||||
 | 
					                WAZUH_DEV_STAGE="${2}"
 | 
				
			||||||
 | 
					                shift 2
 | 
				
			||||||
 | 
					            else
 | 
				
			||||||
 | 
					                help 1
 | 
				
			||||||
 | 
					            fi
 | 
				
			||||||
 | 
					            ;;
 | 
				
			||||||
 | 
					        "-f"|"--filebeat-module")
 | 
				
			||||||
 | 
					            if [ -n "${2}" ]; then
 | 
				
			||||||
 | 
					                FILEBEAT_MODULE_VERSION="${2}"
 | 
				
			||||||
 | 
					                shift 2
 | 
				
			||||||
 | 
					            else
 | 
				
			||||||
 | 
					                help 1
 | 
				
			||||||
 | 
					            fi
 | 
				
			||||||
 | 
					            ;;
 | 
				
			||||||
 | 
					        "-r"|"--revision")
 | 
				
			||||||
 | 
					            if [ -n "${2}" ]; then
 | 
				
			||||||
 | 
					                WAZUH_TAG_REVISION="${2}"
 | 
				
			||||||
 | 
					                shift 2
 | 
				
			||||||
 | 
					            else
 | 
				
			||||||
 | 
					                help 1
 | 
				
			||||||
 | 
					            fi
 | 
				
			||||||
 | 
					            ;;
 | 
				
			||||||
 | 
					        "-v"|"--version")
 | 
				
			||||||
 | 
					            if [ -n "$2" ]; then
 | 
				
			||||||
 | 
					                WAZUH_IMAGE_VERSION="$2"
 | 
				
			||||||
 | 
					                shift 2
 | 
				
			||||||
 | 
					            else
 | 
				
			||||||
 | 
					                help 1
 | 
				
			||||||
 | 
					            fi
 | 
				
			||||||
 | 
					            ;;
 | 
				
			||||||
 | 
					        *)
 | 
				
			||||||
 | 
					            help 1
 | 
				
			||||||
 | 
					        esac
 | 
				
			||||||
 | 
					    done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    build || clean 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    clean 0
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					main "$@"
 | 
				
			||||||
@@ -1,10 +1,16 @@
 | 
				
			|||||||
# Wazuh App Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
version: '3.7'
 | 
					version: '3.7'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
services:
 | 
					services:
 | 
				
			||||||
  wazuh.manager:
 | 
					  wazuh.manager:
 | 
				
			||||||
    build:  wazuh-manager/
 | 
					    build:
 | 
				
			||||||
    image: wazuh/wazuh-manager:4.3.0
 | 
					      context: wazuh-manager/
 | 
				
			||||||
 | 
					      args:
 | 
				
			||||||
 | 
					        WAZUH_VERSION: ${WAZUH_VERSION}
 | 
				
			||||||
 | 
					        WAZUH_TAG_REVISION: ${WAZUH_TAG_REVISION}
 | 
				
			||||||
 | 
					        FILEBEAT_TEMPLATE_BRANCH: ${FILEBEAT_TEMPLATE_BRANCH}
 | 
				
			||||||
 | 
					        WAZUH_FILEBEAT_MODULE: ${WAZUH_FILEBEAT_MODULE}
 | 
				
			||||||
 | 
					    image: wazuh/wazuh-manager:${WAZUH_IMAGE_VERSION}
 | 
				
			||||||
    hostname: wazuh.manager
 | 
					    hostname: wazuh.manager
 | 
				
			||||||
    restart: always
 | 
					    restart: always
 | 
				
			||||||
    ports:
 | 
					    ports:
 | 
				
			||||||
@@ -31,8 +37,12 @@ services:
 | 
				
			|||||||
      - filebeat_var:/var/lib/filebeat
 | 
					      - filebeat_var:/var/lib/filebeat
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  wazuh.indexer:
 | 
					  wazuh.indexer:
 | 
				
			||||||
    build: wazuh-indexer/
 | 
					    build:
 | 
				
			||||||
    image: wazuh/wazuh-indexer:4.3.0
 | 
					      context: wazuh-indexer/
 | 
				
			||||||
 | 
					      args:
 | 
				
			||||||
 | 
					        WAZUH_VERSION: ${WAZUH_VERSION}
 | 
				
			||||||
 | 
					        WAZUH_TAG_REVISION: ${WAZUH_TAG_REVISION}
 | 
				
			||||||
 | 
					    image: wazuh/wazuh-indexer:${WAZUH_IMAGE_VERSION}
 | 
				
			||||||
    hostname: wazuh.indexer
 | 
					    hostname: wazuh.indexer
 | 
				
			||||||
    restart: always
 | 
					    restart: always
 | 
				
			||||||
    ports:
 | 
					    ports:
 | 
				
			||||||
@@ -48,8 +58,13 @@ services:
 | 
				
			|||||||
        hard: 65536
 | 
					        hard: 65536
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  wazuh.dashboard:
 | 
					  wazuh.dashboard:
 | 
				
			||||||
    build: wazuh-dashboard/
 | 
					    build:
 | 
				
			||||||
    image: wazuh/wazuh-dashboard:4.3.0
 | 
					      context: wazuh-dashboard/
 | 
				
			||||||
 | 
					      args:
 | 
				
			||||||
 | 
					        WAZUH_VERSION: ${WAZUH_VERSION}
 | 
				
			||||||
 | 
					        WAZUH_TAG_REVISION: ${WAZUH_TAG_REVISION}
 | 
				
			||||||
 | 
					        WAZUH_UI_REVISION: ${WAZUH_UI_REVISION}
 | 
				
			||||||
 | 
					    image: wazuh/wazuh-dashboard:${WAZUH_IMAGE_VERSION}
 | 
				
			||||||
    hostname: wazuh.dashboard
 | 
					    hostname: wazuh.dashboard
 | 
				
			||||||
    restart: always
 | 
					    restart: always
 | 
				
			||||||
    ports:
 | 
					    ports:
 | 
				
			||||||
@@ -1,8 +1,10 @@
 | 
				
			|||||||
# Wazuh Docker Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh Docker Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
FROM ubuntu:focal AS builder
 | 
					FROM ubuntu:focal AS builder
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ARG WAZUH_VERSION=4.3.0
 | 
					ARG WAZUH_VERSION
 | 
				
			||||||
 | 
					ARG WAZUH_TAG_REVISION
 | 
				
			||||||
ARG INSTALL_DIR=/usr/share/wazuh-dashboard
 | 
					ARG INSTALL_DIR=/usr/share/wazuh-dashboard
 | 
				
			||||||
 | 
					ARG WAZUH_UI_REVISION
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Update and install dependencies
 | 
					# Update and install dependencies
 | 
				
			||||||
RUN apt-get update && apt install curl libcap2-bin xz-utils -y
 | 
					RUN apt-get update && apt install curl libcap2-bin xz-utils -y
 | 
				
			||||||
@@ -11,21 +13,17 @@ RUN apt-get update && apt install curl libcap2-bin xz-utils -y
 | 
				
			|||||||
RUN mkdir -p $INSTALL_DIR
 | 
					RUN mkdir -p $INSTALL_DIR
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Download and extract Wazuh dashboard base
 | 
					# Download and extract Wazuh dashboard base
 | 
				
			||||||
RUN curl -o wazuh-dashboard-base.tar.xz https://packages-dev.wazuh.com/stack/dashboard/base/wazuh-dashboard-base-${WAZUH_VERSION}-linux-x64.tar.xz && \
 | 
					COPY config/dl_base.sh .
 | 
				
			||||||
    tar -xf wazuh-dashboard-base.tar.xz --directory  $INSTALL_DIR --strip-components=1
 | 
					RUN bash dl_base.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Generate certificates
 | 
					# Generate certificates
 | 
				
			||||||
COPY config/config.sh .
 | 
					COPY config/config.sh .
 | 
				
			||||||
COPY config/config.yml /
 | 
					COPY config/config.yml /
 | 
				
			||||||
RUN bash config.sh
 | 
					RUN bash config.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Create and configure Wazuh dashboard keystore
 | 
					COPY config/install_wazuh_app.sh /
 | 
				
			||||||
RUN $INSTALL_DIR/bin/opensearch-dashboards-keystore create --allow-root && \
 | 
					RUN chmod 775 /install_wazuh_app.sh
 | 
				
			||||||
    echo kibanaserver | $INSTALL_DIR/bin/opensearch-dashboards-keystore add opensearch.username --stdin --allow-root && \
 | 
					RUN bash /install_wazuh_app.sh
 | 
				
			||||||
    echo kibanaserver | $INSTALL_DIR/bin/opensearch-dashboards-keystore add opensearch.password --stdin --allow-root
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Install Wazuh App
 | 
					 | 
				
			||||||
RUN $INSTALL_DIR/bin/opensearch-dashboards-plugin install https://packages-dev.wazuh.com/pre-release/ui/dashboard/wazuh-${WAZUH_VERSION}.zip --allow-root
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copy and set permissions to config files
 | 
					# Copy and set permissions to config files
 | 
				
			||||||
COPY config/opensearch_dashboards.yml $INSTALL_DIR/config/
 | 
					COPY config/opensearch_dashboards.yml $INSTALL_DIR/config/
 | 
				
			||||||
@@ -68,6 +66,8 @@ ENV PATTERN="" \
 | 
				
			|||||||
    EXTENSIONS_CISCAT="" \
 | 
					    EXTENSIONS_CISCAT="" \
 | 
				
			||||||
    EXTENSIONS_AWS="" \
 | 
					    EXTENSIONS_AWS="" \
 | 
				
			||||||
    EXTENSIONS_GCP="" \
 | 
					    EXTENSIONS_GCP="" \
 | 
				
			||||||
 | 
					    EXTENSIONS_GITHUB=""\
 | 
				
			||||||
 | 
					    EXTENSIONS_OFFICE=""\
 | 
				
			||||||
    EXTENSIONS_VIRUSTOTAL="" \
 | 
					    EXTENSIONS_VIRUSTOTAL="" \
 | 
				
			||||||
    EXTENSIONS_OSQUERY="" \
 | 
					    EXTENSIONS_OSQUERY="" \
 | 
				
			||||||
    EXTENSIONS_DOCKER="" \
 | 
					    EXTENSIONS_DOCKER="" \
 | 
				
			||||||
@@ -80,6 +80,9 @@ ENV PATTERN="" \
 | 
				
			|||||||
    WAZUH_MONITORING_SHARDS="" \
 | 
					    WAZUH_MONITORING_SHARDS="" \
 | 
				
			||||||
    WAZUH_MONITORING_REPLICAS=""
 | 
					    WAZUH_MONITORING_REPLICAS=""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Install dependencies
 | 
				
			||||||
 | 
					RUN apt update && apt install -y libnss3-dev fonts-liberation libfontconfig1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Create wazuh-dashboard user and group
 | 
					# Create wazuh-dashboard user and group
 | 
				
			||||||
RUN getent group $GROUP || groupadd -r -g 1000 $GROUP
 | 
					RUN getent group $GROUP || groupadd -r -g 1000 $GROUP
 | 
				
			||||||
RUN useradd --system \
 | 
					RUN useradd --system \
 | 
				
			||||||
@@ -101,6 +104,10 @@ RUN chown 1000:1000 /*.sh
 | 
				
			|||||||
# Copy Install dir from builder to current image
 | 
					# Copy Install dir from builder to current image
 | 
				
			||||||
COPY --from=builder --chown=1000:1000 $INSTALL_DIR $INSTALL_DIR
 | 
					COPY --from=builder --chown=1000:1000 $INSTALL_DIR $INSTALL_DIR
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Create custom directory
 | 
				
			||||||
 | 
					RUN mkdir -p /usr/share/wazuh-dashboard/plugins/wazuh/public/assets/custom
 | 
				
			||||||
 | 
					RUN chown 1000:1000 /usr/share/wazuh-dashboard/plugins/wazuh/public/assets/custom
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Set workdir and user
 | 
					# Set workdir and user
 | 
				
			||||||
WORKDIR $INSTALL_DIR
 | 
					WORKDIR $INSTALL_DIR
 | 
				
			||||||
USER wazuh-dashboard
 | 
					USER wazuh-dashboard
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
# Wazuh Docker Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh Docker Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
# This has to be exported to make some magic below work.
 | 
					# This has to be exported to make some magic below work.
 | 
				
			||||||
export DH_OPTIONS
 | 
					export DH_OPTIONS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -9,8 +9,8 @@ export CONFIG_DIR=${INSTALLATION_DIR}/config
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
## Variables
 | 
					## Variables
 | 
				
			||||||
CERT_TOOL=wazuh-certs-tool.sh
 | 
					CERT_TOOL=wazuh-certs-tool.sh
 | 
				
			||||||
PACKAGES_URL=https://packages.wazuh.com/4.3/
 | 
					PACKAGES_URL=https://packages.wazuh.com/4.6/
 | 
				
			||||||
PACKAGES_DEV_URL=https://packages-dev.wazuh.com/4.3/
 | 
					PACKAGES_DEV_URL=https://packages-dev.wazuh.com/4.6/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Check if the cert tool exists in S3 buckets
 | 
					## Check if the cert tool exists in S3 buckets
 | 
				
			||||||
CERT_TOOL_PACKAGES=$(curl --silent -I $PACKAGES_URL$CERT_TOOL | grep -E "^HTTP" | awk  '{print $2}')
 | 
					CERT_TOOL_PACKAGES=$(curl --silent -I $PACKAGES_URL$CERT_TOOL | grep -E "^HTTP" | awk  '{print $2}')
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										25
									
								
								build-docker-images/wazuh-dashboard/config/dl_base.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								build-docker-images/wazuh-dashboard/config/dl_base.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,25 @@
 | 
				
			|||||||
 | 
					REPOSITORY="packages.wazuh.com/4.x"
 | 
				
			||||||
 | 
					WAZUH_CURRENT_VERSION=$(curl --silent https://api.github.com/repos/wazuh/wazuh/releases/latest | grep '\"tag_name\":' | sed -E 's/.*\"([^\"]+)\".*/\1/' | cut -c 2-)
 | 
				
			||||||
 | 
					MAJOR_BUILD=$(echo $WAZUH_VERSION | cut -d. -f1)
 | 
				
			||||||
 | 
					MID_BUILD=$(echo $WAZUH_VERSION | cut -d. -f2)
 | 
				
			||||||
 | 
					MINOR_BUILD=$(echo $WAZUH_VERSION | cut -d. -f3)
 | 
				
			||||||
 | 
					MAJOR_CURRENT=$(echo $WAZUH_CURRENT_VERSION | cut -d. -f1)
 | 
				
			||||||
 | 
					MID_CURRENT=$(echo $WAZUH_CURRENT_VERSION | cut -d. -f2)
 | 
				
			||||||
 | 
					MINOR_CURRENT=$(echo $WAZUH_CURRENT_VERSION | cut -d. -f3)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## check version to use the correct repository
 | 
				
			||||||
 | 
					if [ "$MAJOR_BUILD" -gt "$MAJOR_CURRENT" ]; then
 | 
				
			||||||
 | 
					  REPOSITORY="packages-dev.wazuh.com/pre-release"
 | 
				
			||||||
 | 
					elif [ "$MAJOR_BUILD" -eq "$MAJOR_CURRENT" ]; then
 | 
				
			||||||
 | 
					  if [ "$MID_BUILD" -gt "$MID_CURRENT" ]; then
 | 
				
			||||||
 | 
					    REPOSITORY="packages-dev.wazuh.com/pre-release"
 | 
				
			||||||
 | 
					  elif [ "$MID_BUILD" -eq "$MID_CURRENT" ]; then
 | 
				
			||||||
 | 
					    if [ "$MINOR_BUILD" -gt "$MINOR_CURRENT" ]; then
 | 
				
			||||||
 | 
					      REPOSITORY="packages-dev.wazuh.com/pre-release"
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					curl -o wazuh-dashboard-base.tar.xz https://${REPOSITORY}/stack/dashboard/wazuh-dashboard-base-${WAZUH_VERSION}-${WAZUH_TAG_REVISION}-linux-x64.tar.xz
 | 
				
			||||||
 | 
					tar -xf wazuh-dashboard-base.tar.xz --directory  $INSTALL_DIR --strip-components=1
 | 
				
			||||||
@@ -1,10 +1,20 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					#!/bin/bash
 | 
				
			||||||
# Wazuh Docker Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh Docker Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					INSTALL_DIR=/usr/share/wazuh-dashboard
 | 
				
			||||||
 | 
					DASHBOARD_USERNAME="${DASHBOARD_USERNAME:-kibanaserver}"
 | 
				
			||||||
 | 
					DASHBOARD_PASSWORD="${DASHBOARD_PASSWORD:-kibanaserver}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Create and configure Wazuh dashboard keystore
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					yes | $INSTALL_DIR/bin/opensearch-dashboards-keystore create --allow-root && \
 | 
				
			||||||
 | 
					echo $DASHBOARD_USERNAME | $INSTALL_DIR/bin/opensearch-dashboards-keystore add opensearch.username --stdin --allow-root && \
 | 
				
			||||||
 | 
					echo $DASHBOARD_PASSWORD | $INSTALL_DIR/bin/opensearch-dashboards-keystore add opensearch.password --stdin --allow-root
 | 
				
			||||||
 | 
					
 | 
				
			||||||
##############################################################################
 | 
					##############################################################################
 | 
				
			||||||
# Start Wazuh dashboard
 | 
					# Start Wazuh dashboard
 | 
				
			||||||
##############################################################################
 | 
					##############################################################################
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/wazuh_app_config.sh
 | 
					/wazuh_app_config.sh $WAZUH_UI_REVISION
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/usr/share/wazuh-dashboard/bin/opensearch-dashboards -c /usr/share/wazuh-dashboard/config/opensearch_dashboards.yml
 | 
					/usr/share/wazuh-dashboard/bin/opensearch-dashboards -c /usr/share/wazuh-dashboard/config/opensearch_dashboards.yml
 | 
				
			||||||
@@ -0,0 +1,25 @@
 | 
				
			|||||||
 | 
					## variables
 | 
				
			||||||
 | 
					WAZUH_APP=https://packages.wazuh.com/4.x/ui/dashboard/wazuh-${WAZUH_VERSION}-${WAZUH_UI_REVISION}.zip
 | 
				
			||||||
 | 
					WAZUH_CURRENT_VERSION=$(curl --silent https://api.github.com/repos/wazuh/wazuh/releases/latest | grep '\"tag_name\":' | sed -E 's/.*\"([^\"]+)\".*/\1/' | cut -c 2-)
 | 
				
			||||||
 | 
					MAJOR_BUILD=$(echo $WAZUH_VERSION | cut -d. -f1)
 | 
				
			||||||
 | 
					MID_BUILD=$(echo $WAZUH_VERSION | cut -d. -f2)
 | 
				
			||||||
 | 
					MINOR_BUILD=$(echo $WAZUH_VERSION | cut -d. -f3)
 | 
				
			||||||
 | 
					MAJOR_CURRENT=$(echo $WAZUH_CURRENT_VERSION | cut -d. -f1)
 | 
				
			||||||
 | 
					MID_CURRENT=$(echo $WAZUH_CURRENT_VERSION | cut -d. -f2)
 | 
				
			||||||
 | 
					MINOR_CURRENT=$(echo $WAZUH_CURRENT_VERSION | cut -d. -f3)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## check version to use the correct repository
 | 
				
			||||||
 | 
					if [ "$MAJOR_BUILD" -gt "$MAJOR_CURRENT" ]; then
 | 
				
			||||||
 | 
					  WAZUH_APP=https://packages-dev.wazuh.com/pre-release/ui/dashboard/wazuh-${WAZUH_VERSION}-${WAZUH_UI_REVISION}.zip
 | 
				
			||||||
 | 
					elif [ "$MAJOR_BUILD" -eq "$MAJOR_CURRENT" ]; then
 | 
				
			||||||
 | 
					  if [ "$MID_BUILD" -gt "$MID_CURRENT" ]; then
 | 
				
			||||||
 | 
					    WAZUH_APP=https://packages-dev.wazuh.com/pre-release/ui/dashboard/wazuh-${WAZUH_VERSION}-${WAZUH_UI_REVISION}.zip
 | 
				
			||||||
 | 
					  elif [ "$MID_BUILD" -eq "$MID_CURRENT" ]; then
 | 
				
			||||||
 | 
					    if [ "$MINOR_BUILD" -gt "$MINOR_CURRENT" ]; then
 | 
				
			||||||
 | 
					      WAZUH_APP=https://packages-dev.wazuh.com/pre-release/ui/dashboard/wazuh-${WAZUH_VERSION}-${WAZUH_UI_REVISION}.zip
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Install Wazuh App
 | 
				
			||||||
 | 
					$INSTALL_DIR/bin/opensearch-dashboards-plugin install $WAZUH_APP --allow-root
 | 
				
			||||||
@@ -1,5 +1,5 @@
 | 
				
			|||||||
server.host: 0.0.0.0
 | 
					server.host: 0.0.0.0
 | 
				
			||||||
server.port: 443
 | 
					server.port: 5601
 | 
				
			||||||
opensearch.hosts: https://wazuh.indexer:9200
 | 
					opensearch.hosts: https://wazuh.indexer:9200
 | 
				
			||||||
opensearch.ssl.verificationMode: none
 | 
					opensearch.ssl.verificationMode: none
 | 
				
			||||||
opensearch.requestHeadersWhitelist: [ authorization,securitytenant ]
 | 
					opensearch.requestHeadersWhitelist: [ authorization,securitytenant ]
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,7 +1,7 @@
 | 
				
			|||||||
---
 | 
					---
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Wazuh app - App configuration file
 | 
					# Wazuh app - App configuration file
 | 
				
			||||||
# Copyright (C) 2015-2021 Wazuh, Inc.
 | 
					# Copyright (C) 2017, Wazuh Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This program is free software; you can redistribute it and/or modify
 | 
					# This program is free software; you can redistribute it and/or modify
 | 
				
			||||||
# it under the terms of the GNU General Public License as published by
 | 
					# it under the terms of the GNU General Public License as published by
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,5 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					#!/bin/bash
 | 
				
			||||||
# Wazuh Docker Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh Docker Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
wazuh_url="${WAZUH_API_URL:-https://wazuh}"
 | 
					wazuh_url="${WAZUH_API_URL:-https://wazuh}"
 | 
				
			||||||
wazuh_port="${API_PORT:-55000}"
 | 
					wazuh_port="${API_PORT:-55000}"
 | 
				
			||||||
@@ -25,6 +25,8 @@ declare -A CONFIG_MAP=(
 | 
				
			|||||||
  [extensions.ciscat]=$EXTENSIONS_CISCAT
 | 
					  [extensions.ciscat]=$EXTENSIONS_CISCAT
 | 
				
			||||||
  [extensions.aws]=$EXTENSIONS_AWS
 | 
					  [extensions.aws]=$EXTENSIONS_AWS
 | 
				
			||||||
  [extensions.gcp]=$EXTENSIONS_GCP
 | 
					  [extensions.gcp]=$EXTENSIONS_GCP
 | 
				
			||||||
 | 
					  [extensions.github]=$EXTENSIONS_GITHUB
 | 
				
			||||||
 | 
					  [extensions.office]=$EXTENSIONS_OFFICE
 | 
				
			||||||
  [extensions.virustotal]=$EXTENSIONS_VIRUSTOTAL
 | 
					  [extensions.virustotal]=$EXTENSIONS_VIRUSTOTAL
 | 
				
			||||||
  [extensions.osquery]=$EXTENSIONS_OSQUERY
 | 
					  [extensions.osquery]=$EXTENSIONS_OSQUERY
 | 
				
			||||||
  [extensions.docker]=$EXTENSIONS_DOCKER
 | 
					  [extensions.docker]=$EXTENSIONS_DOCKER
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,9 @@
 | 
				
			|||||||
# Wazuh Docker Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh Docker Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
FROM ubuntu:focal AS builder
 | 
					FROM ubuntu:focal AS builder
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ARG WAZUH_VERSION
 | 
				
			||||||
 | 
					ARG WAZUH_TAG_REVISION
 | 
				
			||||||
 | 
					
 | 
				
			||||||
RUN apt-get update -y && apt-get install curl openssl xz-utils -y
 | 
					RUN apt-get update -y && apt-get install curl openssl xz-utils -y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
COPY config/opensearch.yml /
 | 
					COPY config/opensearch.yml /
 | 
				
			||||||
@@ -56,14 +59,15 @@ COPY --from=builder --chown=0:0 /debian/wazuh-indexer/usr/lib/systemd /usr/lib/s
 | 
				
			|||||||
COPY --from=builder --chown=0:0 /debian/wazuh-indexer/usr/lib/sysctl.d /usr/lib/sysctl.d
 | 
					COPY --from=builder --chown=0:0 /debian/wazuh-indexer/usr/lib/sysctl.d /usr/lib/sysctl.d
 | 
				
			||||||
COPY --from=builder --chown=0:0 /debian/wazuh-indexer/usr/lib/tmpfiles.d /usr/lib/tmpfiles.d
 | 
					COPY --from=builder --chown=0:0 /debian/wazuh-indexer/usr/lib/tmpfiles.d /usr/lib/tmpfiles.d
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RUN chown -R 1000:1000 /usr/share/wazuh-indexer
 | 
				
			||||||
 | 
					
 | 
				
			||||||
RUN mkdir -p /var/lib/wazuh-indexer && chown 1000:1000 /var/lib/wazuh-indexer && \
 | 
					RUN mkdir -p /var/lib/wazuh-indexer && chown 1000:1000 /var/lib/wazuh-indexer && \
 | 
				
			||||||
    mkdir -p /usr/share/wazuh-indexer/logs && chown 1000:1000 /usr/share/wazuh-indexer/logs && \
 | 
					    mkdir -p /usr/share/wazuh-indexer/logs && chown 1000:1000 /usr/share/wazuh-indexer/logs && \
 | 
				
			||||||
    mkdir -p /run/wazuh-indexer && chown 1000:1000 /run/wazuh-indexer && \
 | 
					    mkdir -p /run/wazuh-indexer && chown 1000:1000 /run/wazuh-indexer && \
 | 
				
			||||||
    mkdir -p /var/log/wazuh-indexer && chown 1000:1000 /var/log/wazuh-indexer && \
 | 
					    mkdir -p /var/log/wazuh-indexer && chown 1000:1000 /var/log/wazuh-indexer && \
 | 
				
			||||||
    chmod 700 /usr/share/wazuh-indexer/config && \
 | 
					    chmod 700 /usr/share/wazuh-indexer && \
 | 
				
			||||||
    chmod 600 /usr/share/wazuh-indexer/config/jvm.options && \
 | 
					    chmod 600 /usr/share/wazuh-indexer/jvm.options && \
 | 
				
			||||||
    chmod 600 /usr/share/wazuh-indexer/config/opensearch.yml
 | 
					    chmod 600 /usr/share/wazuh-indexer/opensearch.yml
 | 
				
			||||||
 | 
					
 | 
				
			||||||
USER wazuh-indexer
 | 
					USER wazuh-indexer
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
# Wazuh Docker Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh Docker Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
# This has to be exported to make some magic below work.
 | 
					# This has to be exported to make some magic below work.
 | 
				
			||||||
export DH_OPTIONS
 | 
					export DH_OPTIONS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -8,21 +8,44 @@ export TARGET_DIR=${CURDIR}/debian/${NAME}
 | 
				
			|||||||
# Package build options
 | 
					# Package build options
 | 
				
			||||||
export USER=${NAME}
 | 
					export USER=${NAME}
 | 
				
			||||||
export GROUP=${NAME}
 | 
					export GROUP=${NAME}
 | 
				
			||||||
export VERSION=4.3.0
 | 
					export VERSION=${WAZUH_VERSION}-${WAZUH_TAG_REVISION}
 | 
				
			||||||
export LOG_DIR=/var/log/${NAME}
 | 
					export LOG_DIR=/var/log/${NAME}
 | 
				
			||||||
export LIB_DIR=/var/lib/${NAME}
 | 
					export LIB_DIR=/var/lib/${NAME}
 | 
				
			||||||
export PID_DIR=/run/${NAME}
 | 
					export PID_DIR=/run/${NAME}
 | 
				
			||||||
export INSTALLATION_DIR=/usr/share/${NAME}
 | 
					export INSTALLATION_DIR=/usr/share/${NAME}
 | 
				
			||||||
export CONFIG_DIR=${INSTALLATION_DIR}/config
 | 
					export CONFIG_DIR=${INSTALLATION_DIR}
 | 
				
			||||||
export BASE_DIR=${NAME}-*
 | 
					export BASE_DIR=${NAME}-*
 | 
				
			||||||
export INDEXER_FILE=wazuh-indexer-base.tar.xz
 | 
					export INDEXER_FILE=wazuh-indexer-base.tar.xz
 | 
				
			||||||
export BASE_FILE=wazuh-indexer-base-${VERSION}-linux-x64.tar.xz
 | 
					export BASE_FILE=wazuh-indexer-base-${VERSION}-linux-x64.tar.xz
 | 
				
			||||||
export REPO_DIR=/unattended_installer
 | 
					export REPO_DIR=/unattended_installer
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
rm -rf ${INSTALLATION_DIR}/
 | 
					rm -rf ${INSTALLATION_DIR}/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
curl -o ${INDEXER_FILE} https://packages-dev.wazuh.com/stack/indexer/base/${BASE_FILE}
 | 
					## variables
 | 
				
			||||||
 | 
					REPOSITORY="packages.wazuh.com/4.x"
 | 
				
			||||||
 | 
					WAZUH_CURRENT_VERSION=$(curl --silent https://api.github.com/repos/wazuh/wazuh/releases/latest | grep '\"tag_name\":' | sed -E 's/.*\"([^\"]+)\".*/\1/' | cut -c 2-)
 | 
				
			||||||
 | 
					MAJOR_BUILD=$(echo $WAZUH_VERSION | cut -d. -f1)
 | 
				
			||||||
 | 
					MID_BUILD=$(echo $WAZUH_VERSION | cut -d. -f2)
 | 
				
			||||||
 | 
					MINOR_BUILD=$(echo $WAZUH_VERSION | cut -d. -f3)
 | 
				
			||||||
 | 
					MAJOR_CURRENT=$(echo $WAZUH_CURRENT_VERSION | cut -d. -f1)
 | 
				
			||||||
 | 
					MID_CURRENT=$(echo $WAZUH_CURRENT_VERSION | cut -d. -f2)
 | 
				
			||||||
 | 
					MINOR_CURRENT=$(echo $WAZUH_CURRENT_VERSION | cut -d. -f3)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## check version to use the correct repository
 | 
				
			||||||
 | 
					if [ "$MAJOR_BUILD" -gt "$MAJOR_CURRENT" ]; then
 | 
				
			||||||
 | 
					  REPOSITORY="packages-dev.wazuh.com/pre-release"
 | 
				
			||||||
 | 
					elif [ "$MAJOR_BUILD" -eq "$MAJOR_CURRENT" ]; then
 | 
				
			||||||
 | 
					  if [ "$MID_BUILD" -gt "$MID_CURRENT" ]; then
 | 
				
			||||||
 | 
					    REPOSITORY="packages-dev.wazuh.com/pre-release"
 | 
				
			||||||
 | 
					  elif [ "$MID_BUILD" -eq "$MID_CURRENT" ]; then
 | 
				
			||||||
 | 
					    if [ "$MINOR_BUILD" -gt "$MINOR_CURRENT" ]; then
 | 
				
			||||||
 | 
					      REPOSITORY="packages-dev.wazuh.com/pre-release"
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					curl -o ${INDEXER_FILE} https://${REPOSITORY}/stack/indexer/${BASE_FILE}
 | 
				
			||||||
tar -xf ${INDEXER_FILE}
 | 
					tar -xf ${INDEXER_FILE}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## TOOLS
 | 
					## TOOLS
 | 
				
			||||||
@@ -30,8 +53,8 @@ tar -xf ${INDEXER_FILE}
 | 
				
			|||||||
## Variables
 | 
					## Variables
 | 
				
			||||||
CERT_TOOL=wazuh-certs-tool.sh
 | 
					CERT_TOOL=wazuh-certs-tool.sh
 | 
				
			||||||
PASSWORD_TOOL=wazuh-passwords-tool.sh
 | 
					PASSWORD_TOOL=wazuh-passwords-tool.sh
 | 
				
			||||||
PACKAGES_URL=https://packages.wazuh.com/4.3/
 | 
					PACKAGES_URL=https://packages.wazuh.com/4.6/
 | 
				
			||||||
PACKAGES_DEV_URL=https://packages-dev.wazuh.com/4.3/
 | 
					PACKAGES_DEV_URL=https://packages-dev.wazuh.com/4.6/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Check if the cert tool exists in S3 buckets
 | 
					## Check if the cert tool exists in S3 buckets
 | 
				
			||||||
CERT_TOOL_PACKAGES=$(curl --silent -I $PACKAGES_URL$CERT_TOOL | grep -E "^HTTP" | awk  '{print $2}')
 | 
					CERT_TOOL_PACKAGES=$(curl --silent -I $PACKAGES_URL$CERT_TOOL | grep -E "^HTTP" | awk  '{print $2}')
 | 
				
			||||||
@@ -70,6 +93,7 @@ chmod 755 $CERT_TOOL && bash /$CERT_TOOL -A
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# copy to target
 | 
					# copy to target
 | 
				
			||||||
mkdir -p ${TARGET_DIR}${INSTALLATION_DIR}
 | 
					mkdir -p ${TARGET_DIR}${INSTALLATION_DIR}
 | 
				
			||||||
 | 
					mkdir -p ${TARGET_DIR}${INSTALLATION_DIR}/opensearch-security/
 | 
				
			||||||
mkdir -p ${TARGET_DIR}${CONFIG_DIR}
 | 
					mkdir -p ${TARGET_DIR}${CONFIG_DIR}
 | 
				
			||||||
mkdir -p ${TARGET_DIR}${LIB_DIR}
 | 
					mkdir -p ${TARGET_DIR}${LIB_DIR}
 | 
				
			||||||
mkdir -p ${TARGET_DIR}${LOG_DIR}
 | 
					mkdir -p ${TARGET_DIR}${LOG_DIR}
 | 
				
			||||||
@@ -94,9 +118,9 @@ cp -pr ${BASE_DIR}/* ${TARGET_DIR}${INSTALLATION_DIR}
 | 
				
			|||||||
cp /$CERT_TOOL ${TARGET_DIR}${INSTALLATION_DIR}/plugins/opensearch-security/tools/
 | 
					cp /$CERT_TOOL ${TARGET_DIR}${INSTALLATION_DIR}/plugins/opensearch-security/tools/
 | 
				
			||||||
cp /$PASSWORD_TOOL ${TARGET_DIR}${INSTALLATION_DIR}/plugins/opensearch-security/tools/
 | 
					cp /$PASSWORD_TOOL ${TARGET_DIR}${INSTALLATION_DIR}/plugins/opensearch-security/tools/
 | 
				
			||||||
# Copy Wazuh's config files for the security plugin
 | 
					# Copy Wazuh's config files for the security plugin
 | 
				
			||||||
cp -pr /roles_mapping.yml ${TARGET_DIR}${INSTALLATION_DIR}/plugins/opensearch-security/securityconfig/
 | 
					cp -pr /roles_mapping.yml ${TARGET_DIR}${INSTALLATION_DIR}/opensearch-security/
 | 
				
			||||||
cp -pr /roles.yml ${TARGET_DIR}${INSTALLATION_DIR}/plugins/opensearch-security/securityconfig/
 | 
					cp -pr /roles.yml ${TARGET_DIR}${INSTALLATION_DIR}/opensearch-security/
 | 
				
			||||||
cp -pr /internal_users.yml ${TARGET_DIR}${INSTALLATION_DIR}/plugins/opensearch-security/securityconfig/
 | 
					cp -pr /internal_users.yml ${TARGET_DIR}${INSTALLATION_DIR}/opensearch-security/
 | 
				
			||||||
cp -pr /opensearch.yml ${TARGET_DIR}${CONFIG_DIR}
 | 
					cp -pr /opensearch.yml ${TARGET_DIR}${CONFIG_DIR}
 | 
				
			||||||
# Copy Wazuh indexer's certificates
 | 
					# Copy Wazuh indexer's certificates
 | 
				
			||||||
cp -pr /wazuh-certificates/demo.indexer.pem ${TARGET_DIR}${CONFIG_DIR}/certs/indexer.pem
 | 
					cp -pr /wazuh-certificates/demo.indexer.pem ${TARGET_DIR}${CONFIG_DIR}/certs/indexer.pem
 | 
				
			||||||
@@ -106,5 +130,17 @@ cp -pr /wazuh-certificates/root-ca.pem ${TARGET_DIR}${CONFIG_DIR}/certs/root-ca.
 | 
				
			|||||||
cp -pr /wazuh-certificates/admin.pem ${TARGET_DIR}${CONFIG_DIR}/certs/admin.pem
 | 
					cp -pr /wazuh-certificates/admin.pem ${TARGET_DIR}${CONFIG_DIR}/certs/admin.pem
 | 
				
			||||||
cp -pr /wazuh-certificates/admin-key.pem ${TARGET_DIR}${CONFIG_DIR}/certs/admin-key.pem
 | 
					cp -pr /wazuh-certificates/admin-key.pem ${TARGET_DIR}${CONFIG_DIR}/certs/admin-key.pem
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Delete xms and xmx parameters in jvm.options
 | 
				
			||||||
 | 
					sed '/-Xms/d' -i ${TARGET_DIR}${CONFIG_DIR}/jvm.options
 | 
				
			||||||
 | 
					sed '/-Xmx/d' -i ${TARGET_DIR}${CONFIG_DIR}/jvm.options
 | 
				
			||||||
 | 
					sed -i 's/-Djava.security.policy=file:\/\/\/etc\/wazuh-indexer\/opensearch-performance-analyzer\/opensearch_security.policy/-Djava.security.policy=file:\/\/\/usr\/share\/wazuh-indexer\/opensearch-performance-analyzer\/opensearch_security.policy/g' ${TARGET_DIR}${CONFIG_DIR}/jvm.options
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
chmod -R 500 ${TARGET_DIR}${CONFIG_DIR}/certs
 | 
					chmod -R 500 ${TARGET_DIR}${CONFIG_DIR}/certs
 | 
				
			||||||
chmod -R 400 ${TARGET_DIR}${CONFIG_DIR}/certs/*
 | 
					chmod -R 400 ${TARGET_DIR}${CONFIG_DIR}/certs/*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					find ${TARGET_DIR} -type d -exec chmod 750 {} \;
 | 
				
			||||||
 | 
					find ${TARGET_DIR} -type f -perm 644 -exec chmod 640 {} \;
 | 
				
			||||||
 | 
					find ${TARGET_DIR} -type f -perm 664 -exec chmod 660 {} \;
 | 
				
			||||||
 | 
					find ${TARGET_DIR} -type f -perm 755 -exec chmod 750 {} \;
 | 
				
			||||||
 | 
					find ${TARGET_DIR} -type f -perm 744 -exec chmod 740 {} \;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,12 +1,12 @@
 | 
				
			|||||||
#!/usr/bin/env bash
 | 
					#!/usr/bin/env bash
 | 
				
			||||||
# Wazuh Docker Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh Docker Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
set -e
 | 
					set -e
 | 
				
			||||||
 | 
					
 | 
				
			||||||
umask 0002
 | 
					umask 0002
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export USER=wazuh-indexer
 | 
					export USER=wazuh-indexer
 | 
				
			||||||
export INSTALLATION_DIR=/usr/share/wazuh-indexer
 | 
					export INSTALLATION_DIR=/usr/share/wazuh-indexer
 | 
				
			||||||
export OPENSEARCH_PATH_CONF=${INSTALLATION_DIR}/config
 | 
					export OPENSEARCH_PATH_CONF=${INSTALLATION_DIR}
 | 
				
			||||||
export JAVA_HOME=${INSTALLATION_DIR}/jdk
 | 
					export JAVA_HOME=${INSTALLATION_DIR}/jdk
 | 
				
			||||||
export DISCOVERY=$(grep -oP "(?<=discovery.type: ).*" ${OPENSEARCH_PATH_CONF}/opensearch.yml)
 | 
					export DISCOVERY=$(grep -oP "(?<=discovery.type: ).*" ${OPENSEARCH_PATH_CONF}/opensearch.yml)
 | 
				
			||||||
export CACERT=$(grep -oP "(?<=plugins.security.ssl.transport.pemtrustedcas_filepath: ).*" ${OPENSEARCH_PATH_CONF}/opensearch.yml)
 | 
					export CACERT=$(grep -oP "(?<=plugins.security.ssl.transport.pemtrustedcas_filepath: ).*" ${OPENSEARCH_PATH_CONF}/opensearch.yml)
 | 
				
			||||||
@@ -59,7 +59,7 @@ if [[ -f bin/opensearch-users ]]; then
 | 
				
			|||||||
  # enabled, but we have no way of knowing which node we are yet. We'll just
 | 
					  # enabled, but we have no way of knowing which node we are yet. We'll just
 | 
				
			||||||
  # honor the variable if it's present.
 | 
					  # honor the variable if it's present.
 | 
				
			||||||
  if [[ -n "$INDEXER_PASSWORD" ]]; then
 | 
					  if [[ -n "$INDEXER_PASSWORD" ]]; then
 | 
				
			||||||
    [[ -f /usr/share/wazuh-indexer/config/opensearch.keystore ]] || (run_as_other_user_if_needed opensearch-keystore create)
 | 
					    [[ -f /usr/share/wazuh-indexer/opensearch.keystore ]] || (run_as_other_user_if_needed opensearch-keystore create)
 | 
				
			||||||
    if ! (run_as_other_user_if_needed opensearch-keystore has-passwd --silent) ; then
 | 
					    if ! (run_as_other_user_if_needed opensearch-keystore has-passwd --silent) ; then
 | 
				
			||||||
      # keystore is unencrypted
 | 
					      # keystore is unencrypted
 | 
				
			||||||
      if ! (run_as_other_user_if_needed opensearch-keystore list | grep -q '^bootstrap.password$'); then
 | 
					      if ! (run_as_other_user_if_needed opensearch-keystore list | grep -q '^bootstrap.password$'); then
 | 
				
			||||||
@@ -84,9 +84,10 @@ if [[ "$(id -u)" == "0" ]]; then
 | 
				
			|||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if [[ "$DISCOVERY" == "single-node" ]]; then
 | 
					#if [[ "$DISCOVERY" == "single-node" ]] && [[ ! -f "/var/lib/wazuh-indexer/.flag" ]]; then
 | 
				
			||||||
  # run securityadmin.sh for single node with CACERT, CERT and KEY parameter
 | 
					  # run securityadmin.sh for single node with CACERT, CERT and KEY parameter
 | 
				
			||||||
  nohup /securityadmin.sh &
 | 
					#  nohup /securityadmin.sh &
 | 
				
			||||||
fi
 | 
					#  touch "/var/lib/wazuh-indexer/.flag"
 | 
				
			||||||
 | 
					#fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
run_as_other_user_if_needed /usr/share/wazuh-indexer/bin/opensearch <<<"$KEYSTORE_PASSWORD"
 | 
					run_as_other_user_if_needed /usr/share/wazuh-indexer/bin/opensearch <<<"$KEYSTORE_PASSWORD"
 | 
				
			||||||
@@ -4,12 +4,12 @@ path.data: /var/lib/wazuh-indexer
 | 
				
			|||||||
path.logs: /var/log/wazuh-indexer
 | 
					path.logs: /var/log/wazuh-indexer
 | 
				
			||||||
discovery.type: single-node
 | 
					discovery.type: single-node
 | 
				
			||||||
compatibility.override_main_response_version: true
 | 
					compatibility.override_main_response_version: true
 | 
				
			||||||
plugins.security.ssl.http.pemcert_filepath: ${OPENSEARCH_PATH_CONF}/certs/indexer.pem
 | 
					plugins.security.ssl.http.pemcert_filepath: /usr/share/wazuh-indexer/certs/indexer.pem
 | 
				
			||||||
plugins.security.ssl.http.pemkey_filepath: ${OPENSEARCH_PATH_CONF}/certs/indexer-key.pem
 | 
					plugins.security.ssl.http.pemkey_filepath: /usr/share/wazuh-indexer/certs/indexer-key.pem
 | 
				
			||||||
plugins.security.ssl.http.pemtrustedcas_filepath: ${OPENSEARCH_PATH_CONF}/certs/root-ca.pem
 | 
					plugins.security.ssl.http.pemtrustedcas_filepath: /usr/share/wazuh-indexer/certs/root-ca.pem
 | 
				
			||||||
plugins.security.ssl.transport.pemcert_filepath: ${OPENSEARCH_PATH_CONF}/certs/indexer.pem
 | 
					plugins.security.ssl.transport.pemcert_filepath: /usr/share/wazuh-indexer/certs/indexer.pem
 | 
				
			||||||
plugins.security.ssl.transport.pemkey_filepath: ${OPENSEARCH_PATH_CONF}/certs/indexer-key.pem
 | 
					plugins.security.ssl.transport.pemkey_filepath: /usr/share/wazuh-indexer/certs/indexer-key.pem
 | 
				
			||||||
plugins.security.ssl.transport.pemtrustedcas_filepath: ${OPENSEARCH_PATH_CONF}/certs/root-ca.pem
 | 
					plugins.security.ssl.transport.pemtrustedcas_filepath: /usr/share/wazuh-indexer/certs/root-ca.pem
 | 
				
			||||||
plugins.security.ssl.http.enabled: true
 | 
					plugins.security.ssl.http.enabled: true
 | 
				
			||||||
plugins.security.ssl.transport.enforce_hostname_verification: false
 | 
					plugins.security.ssl.transport.enforce_hostname_verification: false
 | 
				
			||||||
plugins.security.ssl.transport.resolve_hostname: false
 | 
					plugins.security.ssl.transport.resolve_hostname: false
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,3 +1,3 @@
 | 
				
			|||||||
# Wazuh Docker Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh Docker Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
sleep 30
 | 
					sleep 30
 | 
				
			||||||
bash /usr/share/wazuh-indexer/plugins/opensearch-security/tools/securityadmin.sh -cd /usr/share/wazuh-indexer/plugins/opensearch-security/securityconfig/ -nhnv -cacert  $CACERT -cert $CERT -key $KEY -p 9300 -icl
 | 
					bash /usr/share/wazuh-indexer/plugins/opensearch-security/tools/securityadmin.sh -cd /usr/share/wazuh-indexer/opensearch-security/ -nhnv -cacert  $CACERT -cert $CERT -key $KEY -p 9200 -icl
 | 
				
			||||||
@@ -1,25 +1,29 @@
 | 
				
			|||||||
# Wazuh Docker Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh Docker Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
FROM ubuntu:focal
 | 
					FROM ubuntu:focal
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ARG WAZUH_VERSION=4.3.0
 | 
					RUN rm /bin/sh && ln -s /bin/bash /bin/sh
 | 
				
			||||||
ARG TEMPLATE_VERSION=4.3
 | 
					
 | 
				
			||||||
 | 
					ARG WAZUH_VERSION
 | 
				
			||||||
 | 
					ARG WAZUH_TAG_REVISION
 | 
				
			||||||
 | 
					ARG FILEBEAT_TEMPLATE_BRANCH
 | 
				
			||||||
ARG FILEBEAT_CHANNEL=filebeat-oss
 | 
					ARG FILEBEAT_CHANNEL=filebeat-oss
 | 
				
			||||||
ARG FILEBEAT_VERSION=7.10.2
 | 
					ARG FILEBEAT_VERSION=7.10.2
 | 
				
			||||||
ARG WAZUH_FILEBEAT_MODULE="wazuh-filebeat-0.1.tar.gz"
 | 
					ARG WAZUH_FILEBEAT_MODULE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
RUN apt-get update && apt install curl apt-transport-https lsb-release gnupg -y
 | 
					RUN apt-get update && apt install curl apt-transport-https lsb-release gnupg -y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
RUN apt-key adv --fetch-keys https://packages.wazuh.com/key/GPG-KEY-WAZUH && \
 | 
					COPY config/check_repository.sh /
 | 
				
			||||||
    echo "deb https://packages.wazuh.com/4.x/apt/ stable main" | tee -a /etc/apt/sources.list.d/wazuh.list && \
 | 
					
 | 
				
			||||||
    apt-get update && \
 | 
					RUN chmod 775 /check_repository.sh
 | 
				
			||||||
    apt-get install wazuh-manager=${WAZUH_VERSION}-1
 | 
					RUN source /check_repository.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RUN apt-get update && \
 | 
				
			||||||
 | 
					    apt-get install wazuh-manager=${WAZUH_VERSION}-${WAZUH_TAG_REVISION}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
RUN curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/${FILEBEAT_CHANNEL}-${FILEBEAT_VERSION}-amd64.deb &&\
 | 
					RUN curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/${FILEBEAT_CHANNEL}-${FILEBEAT_VERSION}-amd64.deb &&\
 | 
				
			||||||
    dpkg -i ${FILEBEAT_CHANNEL}-${FILEBEAT_VERSION}-amd64.deb && rm -f ${FILEBEAT_CHANNEL}-${FILEBEAT_VERSION}-amd64.deb && \
 | 
					    dpkg -i ${FILEBEAT_CHANNEL}-${FILEBEAT_VERSION}-amd64.deb && rm -f ${FILEBEAT_CHANNEL}-${FILEBEAT_VERSION}-amd64.deb && \
 | 
				
			||||||
    curl -s https://packages.wazuh.com/4.x/filebeat/${WAZUH_FILEBEAT_MODULE} | tar -xvz -C /usr/share/filebeat/module
 | 
					    curl -s https://packages.wazuh.com/4.x/filebeat/${WAZUH_FILEBEAT_MODULE} | tar -xvz -C /usr/share/filebeat/module
 | 
				
			||||||
 | 
					
 | 
				
			||||||
RUN curl -L https://github.com/aelsabbahy/goss/releases/latest/download/goss-linux-amd64 -o /usr/local/bin/goss && chmod +rx /usr/local/bin/goss
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
ARG S6_VERSION="v2.2.0.3"
 | 
					ARG S6_VERSION="v2.2.0.3"
 | 
				
			||||||
RUN curl --fail --silent -L https://github.com/just-containers/s6-overlay/releases/download/${S6_VERSION}/s6-overlay-amd64.tar.gz \
 | 
					RUN curl --fail --silent -L https://github.com/just-containers/s6-overlay/releases/download/${S6_VERSION}/s6-overlay-amd64.tar.gz \
 | 
				
			||||||
    -o /tmp/s6-overlay-amd64.tar.gz && \
 | 
					    -o /tmp/s6-overlay-amd64.tar.gz && \
 | 
				
			||||||
@@ -34,7 +38,7 @@ COPY config/filebeat.yml /etc/filebeat/
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
RUN chmod go-w /etc/filebeat/filebeat.yml
 | 
					RUN chmod go-w /etc/filebeat/filebeat.yml
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ADD https://raw.githubusercontent.com/wazuh/wazuh/$TEMPLATE_VERSION/extensions/elasticsearch/7.x/wazuh-template.json /etc/filebeat
 | 
					ADD https://raw.githubusercontent.com/wazuh/wazuh/$FILEBEAT_TEMPLATE_BRANCH/extensions/elasticsearch/7.x/wazuh-template.json /etc/filebeat
 | 
				
			||||||
RUN chmod go-w /etc/filebeat/wazuh-template.json
 | 
					RUN chmod go-w /etc/filebeat/wazuh-template.json
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Prepare permanent data
 | 
					# Prepare permanent data
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										29
									
								
								build-docker-images/wazuh-manager/config/check_repository.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								build-docker-images/wazuh-manager/config/check_repository.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,29 @@
 | 
				
			|||||||
 | 
					## variables
 | 
				
			||||||
 | 
					APT_KEY=https://packages.wazuh.com/key/GPG-KEY-WAZUH
 | 
				
			||||||
 | 
					REPOSITORY="deb https://packages.wazuh.com/4.x/apt/ stable main"
 | 
				
			||||||
 | 
					WAZUH_CURRENT_VERSION=$(curl --silent https://api.github.com/repos/wazuh/wazuh/releases/latest | grep '\"tag_name\":' | sed -E 's/.*\"([^\"]+)\".*/\1/' | cut -c 2-)
 | 
				
			||||||
 | 
					MAJOR_BUILD=$(echo $WAZUH_VERSION | cut -d. -f1)
 | 
				
			||||||
 | 
					MID_BUILD=$(echo $WAZUH_VERSION | cut -d. -f2)
 | 
				
			||||||
 | 
					MINOR_BUILD=$(echo $WAZUH_VERSION | cut -d. -f3)
 | 
				
			||||||
 | 
					MAJOR_CURRENT=$(echo $WAZUH_CURRENT_VERSION | cut -d. -f1)
 | 
				
			||||||
 | 
					MID_CURRENT=$(echo $WAZUH_CURRENT_VERSION | cut -d. -f2)
 | 
				
			||||||
 | 
					MINOR_CURRENT=$(echo $WAZUH_CURRENT_VERSION | cut -d. -f3)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## check version to use the correct repository
 | 
				
			||||||
 | 
					if [ "$MAJOR_BUILD" -gt "$MAJOR_CURRENT" ]; then
 | 
				
			||||||
 | 
					  APT_KEY=https://packages-dev.wazuh.com/key/GPG-KEY-WAZUH
 | 
				
			||||||
 | 
					  REPOSITORY="deb https://packages-dev.wazuh.com/pre-release/apt/ unstable main"
 | 
				
			||||||
 | 
					elif [ "$MAJOR_BUILD" -eq "$MAJOR_CURRENT" ]; then
 | 
				
			||||||
 | 
					  if [ "$MID_BUILD" -gt "$MID_CURRENT" ]; then
 | 
				
			||||||
 | 
					    APT_KEY=https://packages-dev.wazuh.com/key/GPG-KEY-WAZUH
 | 
				
			||||||
 | 
					    REPOSITORY="deb https://packages-dev.wazuh.com/pre-release/apt/ unstable main"
 | 
				
			||||||
 | 
					  elif [ "$MID_BUILD" -eq "$MID_CURRENT" ]; then
 | 
				
			||||||
 | 
					    if [ "$MINOR_BUILD" -gt "$MINOR_CURRENT" ]; then
 | 
				
			||||||
 | 
					      APT_KEY=https://packages-dev.wazuh.com/key/GPG-KEY-WAZUH
 | 
				
			||||||
 | 
					      REPOSITORY="deb https://packages-dev.wazuh.com/pre-release/apt/ unstable main"
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					apt-key adv --fetch-keys ${APT_KEY}
 | 
				
			||||||
 | 
					echo ${REPOSITORY} | tee -a /etc/apt/sources.list.d/wazuh.list
 | 
				
			||||||
@@ -13,7 +13,7 @@ SPECIAL_CHARS = "@$!%*?&-_"
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
try:
 | 
					try:
 | 
				
			||||||
    from wazuh.rbac.orm import create_rbac_db
 | 
					    from wazuh.rbac.orm import check_database_integrity
 | 
				
			||||||
    from wazuh.security import (
 | 
					    from wazuh.security import (
 | 
				
			||||||
        create_user,
 | 
					        create_user,
 | 
				
			||||||
        get_users,
 | 
					        get_users,
 | 
				
			||||||
@@ -21,7 +21,7 @@ try:
 | 
				
			|||||||
        set_user_role,
 | 
					        set_user_role,
 | 
				
			||||||
        update_user,
 | 
					        update_user,
 | 
				
			||||||
    )
 | 
					    )
 | 
				
			||||||
except Exception as e:
 | 
					except ModuleNotFoundError as e:
 | 
				
			||||||
    logging.error("No module 'wazuh' found.")
 | 
					    logging.error("No module 'wazuh' found.")
 | 
				
			||||||
    sys.exit(1)
 | 
					    sys.exit(1)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -69,7 +69,7 @@ if __name__ == "__main__":
 | 
				
			|||||||
    username, password = read_user_file()
 | 
					    username, password = read_user_file()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # create RBAC database
 | 
					    # create RBAC database
 | 
				
			||||||
    create_rbac_db()
 | 
					    check_database_integrity()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    initial_users = db_users()
 | 
					    initial_users = db_users()
 | 
				
			||||||
    if username not in initial_users:
 | 
					    if username not in initial_users:
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,5 @@
 | 
				
			|||||||
#!/usr/bin/with-contenv bash
 | 
					#!/usr/bin/with-contenv bash
 | 
				
			||||||
# Wazuh App Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Variables
 | 
					# Variables
 | 
				
			||||||
source /permanent_data.env
 | 
					source /permanent_data.env
 | 
				
			||||||
@@ -179,6 +179,15 @@ set_rids_owner() {
 | 
				
			|||||||
  chown -R wazuh:wazuh /var/ossec/queue/rids
 | 
					  chown -R wazuh:wazuh /var/ossec/queue/rids
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					##############################################################################
 | 
				
			||||||
 | 
					# Change any ossec user/group to wazuh user/group 
 | 
				
			||||||
 | 
					##############################################################################
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					set_correct_permOwner() {
 | 
				
			||||||
 | 
					  find / -group 997 -exec chown :101 {} +;
 | 
				
			||||||
 | 
					  find / -user 999 -exec chown 101 {} +;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
##############################################################################
 | 
					##############################################################################
 | 
				
			||||||
# Main function
 | 
					# Main function
 | 
				
			||||||
##############################################################################
 | 
					##############################################################################
 | 
				
			||||||
@@ -190,6 +199,9 @@ main() {
 | 
				
			|||||||
  # Restore files stored in permanent data that are not permanent  (i.e. internal_options.conf)
 | 
					  # Restore files stored in permanent data that are not permanent  (i.e. internal_options.conf)
 | 
				
			||||||
  apply_exclusion_data
 | 
					  apply_exclusion_data
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
 | 
					  # Apply correct permission and ownership
 | 
				
			||||||
 | 
					  set_correct_permOwner
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # Rename files stored in permanent data (i.e. queue/ossec)
 | 
					  # Rename files stored in permanent data (i.e. queue/ossec)
 | 
				
			||||||
  move_data_files
 | 
					  move_data_files
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,5 @@
 | 
				
			|||||||
#!/usr/bin/with-contenv bash
 | 
					#!/usr/bin/with-contenv bash
 | 
				
			||||||
# Wazuh App Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
set -e
 | 
					set -e
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -12,32 +12,38 @@ fi
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
if [ "$INDEXER_USERNAME" != "" ]; then
 | 
					if [ "$INDEXER_USERNAME" != "" ]; then
 | 
				
			||||||
  >&2 echo "Configuring username."
 | 
					  >&2 echo "Configuring username."
 | 
				
			||||||
  sed -i "s|#username:.*|username: '$INDEXER_USERNAME'|g" /etc/filebeat/filebeat.yml
 | 
					  sed -i "s|#username:.*|username:|g" /etc/filebeat/filebeat.yml
 | 
				
			||||||
 | 
					  sed -i "s|username:.*|username: '$INDEXER_USERNAME'|g" /etc/filebeat/filebeat.yml
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if [ "$INDEXER_PASSWORD" != "" ]; then
 | 
					if [ "$INDEXER_PASSWORD" != "" ]; then
 | 
				
			||||||
  >&2 echo "Configuring password."
 | 
					  >&2 echo "Configuring password."
 | 
				
			||||||
  sed -i "s|#password:.*|password: '$INDEXER_PASSWORD'|g" /etc/filebeat/filebeat.yml
 | 
					  sed -i "s|#password:.*|password:|g" /etc/filebeat/filebeat.yml
 | 
				
			||||||
 | 
					  sed -i "s|password:.*|password: '$INDEXER_PASSWORD'|g" /etc/filebeat/filebeat.yml
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if [ "$FILEBEAT_SSL_VERIFICATION_MODE" != "" ]; then
 | 
					if [ "$FILEBEAT_SSL_VERIFICATION_MODE" != "" ]; then
 | 
				
			||||||
  >&2 echo "Configuring SSL verification mode."
 | 
					  >&2 echo "Configuring SSL verification mode."
 | 
				
			||||||
  sed -i "s|#ssl.verification_mode:.*|ssl.verification_mode: $FILEBEAT_SSL_VERIFICATION_MODE|g" /etc/filebeat/filebeat.yml
 | 
					  sed -i "s|#ssl.verification_mode:.*|ssl.verification_mode:|g" /etc/filebeat/filebeat.yml
 | 
				
			||||||
 | 
					  sed -i "s|ssl.verification_mode:.*|ssl.verification_mode: '$FILEBEAT_SSL_VERIFICATION_MODE'|g" /etc/filebeat/filebeat.yml
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if [ "$SSL_CERTIFICATE_AUTHORITIES" != "" ]; then
 | 
					if [ "$SSL_CERTIFICATE_AUTHORITIES" != "" ]; then
 | 
				
			||||||
  >&2 echo "Configuring Certificate Authorities."
 | 
					  >&2 echo "Configuring Certificate Authorities."
 | 
				
			||||||
  sed -i "s|#ssl.certificate_authorities:.*|ssl.certificate_authorities: ['$SSL_CERTIFICATE_AUTHORITIES']|g" /etc/filebeat/filebeat.yml
 | 
					  sed -i "s|#ssl.certificate_authorities:.*|ssl.certificate_authorities:|g" /etc/filebeat/filebeat.yml
 | 
				
			||||||
 | 
					  sed -i "s|ssl.certificate_authorities:.*|ssl.certificate_authorities: ['$SSL_CERTIFICATE_AUTHORITIES']|g" /etc/filebeat/filebeat.yml
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if [ "$SSL_CERTIFICATE" != "" ]; then
 | 
					if [ "$SSL_CERTIFICATE" != "" ]; then
 | 
				
			||||||
  >&2 echo "Configuring SSL Certificate."
 | 
					  >&2 echo "Configuring SSL Certificate."
 | 
				
			||||||
  sed -i "s|#ssl.certificate:.*|ssl.certificate: '$SSL_CERTIFICATE'|g" /etc/filebeat/filebeat.yml
 | 
					  sed -i "s|#ssl.certificate:.*|ssl.certificate:|g" /etc/filebeat/filebeat.yml
 | 
				
			||||||
 | 
					  sed -i "s|ssl.certificate:.*|ssl.certificate: '$SSL_CERTIFICATE'|g" /etc/filebeat/filebeat.yml
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if [ "$SSL_KEY" != "" ]; then
 | 
					if [ "$SSL_KEY" != "" ]; then
 | 
				
			||||||
  >&2 echo "Configuring SSL Key."
 | 
					  >&2 echo "Configuring SSL Key."
 | 
				
			||||||
  sed -i "s|#ssl.key:.*|ssl.key: '$SSL_KEY'|g" /etc/filebeat/filebeat.yml
 | 
					  sed -i "s|#ssl.key:.*|ssl.key:|g" /etc/filebeat/filebeat.yml
 | 
				
			||||||
 | 
					  sed -i "s|ssl.key:.*|ssl.key: '$SSL_KEY'|g" /etc/filebeat/filebeat.yml
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -20,3 +20,12 @@ output.elasticsearch:
 | 
				
			|||||||
  #ssl.certificate_authorities:
 | 
					  #ssl.certificate_authorities:
 | 
				
			||||||
  #ssl.certificate:
 | 
					  #ssl.certificate:
 | 
				
			||||||
  #ssl.key:
 | 
					  #ssl.key:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					logging.metrics.enabled: false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					seccomp:
 | 
				
			||||||
 | 
					  default_action: allow
 | 
				
			||||||
 | 
					  syscalls:
 | 
				
			||||||
 | 
					  - action: allow
 | 
				
			||||||
 | 
					    names:
 | 
				
			||||||
 | 
					    - rseq
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -21,6 +21,8 @@ PERMANENT_DATA_EXCP[((i++))]="/var/ossec/integrations/slack"
 | 
				
			|||||||
PERMANENT_DATA_EXCP[((i++))]="/var/ossec/integrations/slack.py"
 | 
					PERMANENT_DATA_EXCP[((i++))]="/var/ossec/integrations/slack.py"
 | 
				
			||||||
PERMANENT_DATA_EXCP[((i++))]="/var/ossec/integrations/virustotal"
 | 
					PERMANENT_DATA_EXCP[((i++))]="/var/ossec/integrations/virustotal"
 | 
				
			||||||
PERMANENT_DATA_EXCP[((i++))]="/var/ossec/integrations/virustotal.py"
 | 
					PERMANENT_DATA_EXCP[((i++))]="/var/ossec/integrations/virustotal.py"
 | 
				
			||||||
 | 
					PERMANENT_DATA_EXCP[((i++))]="/var/ossec/integrations/shuffle"
 | 
				
			||||||
 | 
					PERMANENT_DATA_EXCP[((i++))]="/var/ossec/integrations/shuffle.py"
 | 
				
			||||||
PERMANENT_DATA_EXCP[((i++))]="/var/ossec/active-response/bin/default-firewall-drop"
 | 
					PERMANENT_DATA_EXCP[((i++))]="/var/ossec/active-response/bin/default-firewall-drop"
 | 
				
			||||||
PERMANENT_DATA_EXCP[((i++))]="/var/ossec/active-response/bin/disable-account"
 | 
					PERMANENT_DATA_EXCP[((i++))]="/var/ossec/active-response/bin/disable-account"
 | 
				
			||||||
PERMANENT_DATA_EXCP[((i++))]="/var/ossec/active-response/bin/firewalld-drop"
 | 
					PERMANENT_DATA_EXCP[((i++))]="/var/ossec/active-response/bin/firewalld-drop"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,5 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					#!/bin/bash
 | 
				
			||||||
# Wazuh App Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Variables
 | 
					# Variables
 | 
				
			||||||
source /permanent_data.env
 | 
					source /permanent_data.env
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
# Wazuh Docker Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh Docker Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
FROM ubuntu:focal
 | 
					FROM ubuntu:focal
 | 
				
			||||||
 | 
					
 | 
				
			||||||
RUN apt-get update && apt-get install openssl curl -y
 | 
					RUN apt-get update && apt-get install openssl curl -y
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,5 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					#!/bin/bash
 | 
				
			||||||
# Wazuh Docker Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh Docker Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
##############################################################################
 | 
					##############################################################################
 | 
				
			||||||
# Downloading Cert Gen Tool
 | 
					# Downloading Cert Gen Tool
 | 
				
			||||||
@@ -8,8 +8,8 @@
 | 
				
			|||||||
## Variables
 | 
					## Variables
 | 
				
			||||||
CERT_TOOL=wazuh-certs-tool.sh
 | 
					CERT_TOOL=wazuh-certs-tool.sh
 | 
				
			||||||
PASSWORD_TOOL=wazuh-passwords-tool.sh
 | 
					PASSWORD_TOOL=wazuh-passwords-tool.sh
 | 
				
			||||||
PACKAGES_URL=https://packages.wazuh.com/4.3/
 | 
					PACKAGES_URL=https://packages.wazuh.com/4.6/
 | 
				
			||||||
PACKAGES_DEV_URL=https://packages-dev.wazuh.com/4.3/
 | 
					PACKAGES_DEV_URL=https://packages-dev.wazuh.com/4.6/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Check if the cert tool exists in S3 buckets
 | 
					## Check if the cert tool exists in S3 buckets
 | 
				
			||||||
CERT_TOOL_PACKAGES=$(curl --silent -I $PACKAGES_URL$CERT_TOOL | grep -E "^HTTP" | awk  '{print $2}')
 | 
					CERT_TOOL_PACKAGES=$(curl --silent -I $PACKAGES_URL$CERT_TOOL | grep -E "^HTTP" | awk  '{print $2}')
 | 
				
			||||||
@@ -17,13 +17,13 @@ CERT_TOOL_PACKAGES_DEV=$(curl --silent -I $PACKAGES_DEV_URL$CERT_TOOL | grep -E
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
## If cert tool exists in some bucket, download it, if not exit 1
 | 
					## If cert tool exists in some bucket, download it, if not exit 1
 | 
				
			||||||
if [ "$CERT_TOOL_PACKAGES" = "200" ]; then
 | 
					if [ "$CERT_TOOL_PACKAGES" = "200" ]; then
 | 
				
			||||||
  curl -o $CERT_TOOL $PACKAGES_URL$CERT_TOOL
 | 
					  curl -o $CERT_TOOL $PACKAGES_URL$CERT_TOOL -s
 | 
				
			||||||
  echo "Cert tool exists in Packages bucket"
 | 
					  echo "The tool to create the certificates exists in the in Packages bucket"
 | 
				
			||||||
elif [ "$CERT_TOOL_PACKAGES_DEV" = "200" ]; then
 | 
					elif [ "$CERT_TOOL_PACKAGES_DEV" = "200" ]; then
 | 
				
			||||||
  curl -o $CERT_TOOL $PACKAGES_DEV_URL$CERT_TOOL
 | 
					  curl -o $CERT_TOOL $PACKAGES_DEV_URL$CERT_TOOL -s
 | 
				
			||||||
  echo "Cert tool exists in Packages-dev bucket"
 | 
					  echo "The tool to create the certificates exists in Packages-dev bucket"
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
  echo "Cert tool does not exist in any bucket"
 | 
					  echo "The tool to create the certificates does not exist in any bucket"
 | 
				
			||||||
  echo "ERROR: certificates were not created"
 | 
					  echo "ERROR: certificates were not created"
 | 
				
			||||||
  exit 1
 | 
					  exit 1
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
@@ -41,9 +41,9 @@ source /$CERT_TOOL -A
 | 
				
			|||||||
nodes_server=$( cert_parseYaml /config.yml | grep nodes_server__name | sed 's/nodes_server__name=//' )
 | 
					nodes_server=$( cert_parseYaml /config.yml | grep nodes_server__name | sed 's/nodes_server__name=//' )
 | 
				
			||||||
node_names=($nodes_server)
 | 
					node_names=($nodes_server)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
echo "Moving created certificates to destination directory"
 | 
					echo "Moving created certificates to the destination directory"
 | 
				
			||||||
cp /wazuh-certificates/* /certificates/
 | 
					cp /wazuh-certificates/* /certificates/
 | 
				
			||||||
echo "changing certificate permissions"
 | 
					echo "Changing certificate permissions"
 | 
				
			||||||
chmod -R 500 /certificates
 | 
					chmod -R 500 /certificates
 | 
				
			||||||
chmod -R 400 /certificates/*
 | 
					chmod -R 400 /certificates/*
 | 
				
			||||||
echo "Setting UID indexer and dashboard"
 | 
					echo "Setting UID indexer and dashboard"
 | 
				
			||||||
@@ -51,11 +51,11 @@ chown 1000:1000 /certificates/*
 | 
				
			|||||||
echo "Setting UID for wazuh manager and worker"
 | 
					echo "Setting UID for wazuh manager and worker"
 | 
				
			||||||
cp /certificates/root-ca.pem /certificates/root-ca-manager.pem
 | 
					cp /certificates/root-ca.pem /certificates/root-ca-manager.pem
 | 
				
			||||||
cp /certificates/root-ca.key /certificates/root-ca-manager.key
 | 
					cp /certificates/root-ca.key /certificates/root-ca-manager.key
 | 
				
			||||||
chown 999:997 /certificates/root-ca-manager.pem
 | 
					chown 101:101 /certificates/root-ca-manager.pem
 | 
				
			||||||
chown 999:997 /certificates/root-ca-manager.key
 | 
					chown 101:101 /certificates/root-ca-manager.key
 | 
				
			||||||
 | 
					
 | 
				
			||||||
for i in ${node_names[@]};
 | 
					for i in ${node_names[@]};
 | 
				
			||||||
do
 | 
					do
 | 
				
			||||||
  chown 999:997 "/certificates/${i}.pem"
 | 
					  chown 101:101 "/certificates/${i}.pem"
 | 
				
			||||||
  chown 999:997 "/certificates/${i}-key.pem"
 | 
					  chown 101:101 "/certificates/${i}-key.pem"
 | 
				
			||||||
done
 | 
					done
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,6 @@
 | 
				
			|||||||
# Opendistro data migration to Wazuh indexer on docker.
 | 
					# Opendistro data migration to Wazuh indexer on docker.
 | 
				
			||||||
This procedure explains how to migrate Opendistro data from Opendistro to Wazuh indexer in docker production deployments.
 | 
					This procedure explains how to migrate Opendistro data from Opendistro to Wazuh indexer in docker production deployments.
 | 
				
			||||||
The example is migrating from v4.2 to v4.3.
 | 
					The example is migrating from v4.2 to v4.4.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Procedure
 | 
					## Procedure
 | 
				
			||||||
Assuming that you have a v4.2 production deployment, perform the following steps.
 | 
					Assuming that you have a v4.2 production deployment, perform the following steps.
 | 
				
			||||||
@@ -17,7 +17,7 @@ Assuming that you have a v4.2 production deployment, perform the following steps
 | 
				
			|||||||
**4. Spin down the 4.2 environment.**
 | 
					**4. Spin down the 4.2 environment.**
 | 
				
			||||||
`docker-compose -f production-cluster.yml down`
 | 
					`docker-compose -f production-cluster.yml down`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
**Steps 5 and 6 can be done with the volume-migrator.sh script, specifying Docker version and project name as parameters.**
 | 
					**Steps 5 and 6 can be done with the volume-migrator.sh script, specifying Docker compose version and project name as parameters.**
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Ex: $ multi-node/volume-migrator.sh 1.25.0 multi-node
 | 
					Ex: $ multi-node/volume-migrator.sh 1.25.0 multi-node
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -350,9 +350,9 @@ docker container run --rm -it \
 | 
				
			|||||||
           alpine ash -c "cd /from ; cp -avp . /to"
 | 
					           alpine ash -c "cd /from ; cp -avp . /to"
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
**7. Start the 4.3 environment.**
 | 
					**7. Start the 4.4 environment.**
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
git checkout 4.3
 | 
					git checkout 4.4
 | 
				
			||||||
cd multi-node
 | 
					cd multi-node
 | 
				
			||||||
docker-compose -f generate-indexer-certs.yml run --rm generator
 | 
					docker-compose -f generate-indexer-certs.yml run --rm generator
 | 
				
			||||||
docker-compose up -d
 | 
					docker-compose up -d
 | 
				
			||||||
@@ -108,15 +108,16 @@
 | 
				
			|||||||
      <os>xenial</os>
 | 
					      <os>xenial</os>
 | 
				
			||||||
      <os>bionic</os>
 | 
					      <os>bionic</os>
 | 
				
			||||||
      <os>focal</os>
 | 
					      <os>focal</os>
 | 
				
			||||||
 | 
					      <os>jammy</os>
 | 
				
			||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <!-- Debian OS vulnerabilities -->
 | 
					    <!-- Debian OS vulnerabilities -->
 | 
				
			||||||
    <provider name="debian">
 | 
					    <provider name="debian">
 | 
				
			||||||
      <enabled>no</enabled>
 | 
					      <enabled>no</enabled>
 | 
				
			||||||
      <os>stretch</os>
 | 
					 | 
				
			||||||
      <os>buster</os>
 | 
					      <os>buster</os>
 | 
				
			||||||
      <os>bullseye</os>
 | 
					      <os>bullseye</os>
 | 
				
			||||||
 | 
					      <os>bookworm</os>
 | 
				
			||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -127,6 +128,7 @@
 | 
				
			|||||||
      <os>6</os>
 | 
					      <os>6</os>
 | 
				
			||||||
      <os>7</os>
 | 
					      <os>7</os>
 | 
				
			||||||
      <os>8</os>
 | 
					      <os>8</os>
 | 
				
			||||||
 | 
					      <os>9</os>
 | 
				
			||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -138,6 +140,18 @@
 | 
				
			|||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <!-- SUSE Linux Enterprise OS vulnerabilities -->
 | 
				
			||||||
 | 
					    <provider name="suse">
 | 
				
			||||||
 | 
					      <enabled>no</enabled>
 | 
				
			||||||
 | 
					      <os>11-server</os>
 | 
				
			||||||
 | 
					      <os>11-desktop</os>
 | 
				
			||||||
 | 
					      <os>12-server</os>
 | 
				
			||||||
 | 
					      <os>12-desktop</os>
 | 
				
			||||||
 | 
					      <os>15-server</os>
 | 
				
			||||||
 | 
					      <os>15-desktop</os>
 | 
				
			||||||
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <!-- Arch OS vulnerabilities -->
 | 
					    <!-- Arch OS vulnerabilities -->
 | 
				
			||||||
    <provider name="arch">
 | 
					    <provider name="arch">
 | 
				
			||||||
      <enabled>no</enabled>
 | 
					      <enabled>no</enabled>
 | 
				
			||||||
@@ -150,10 +164,17 @@
 | 
				
			|||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <!-- Alma Linux OS vulnerabilities -->
 | 
				
			||||||
 | 
					    <provider name="almalinux">
 | 
				
			||||||
 | 
					      <enabled>no</enabled>
 | 
				
			||||||
 | 
					      <os>8</os>
 | 
				
			||||||
 | 
					      <os>9</os>
 | 
				
			||||||
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <!-- Aggregate vulnerabilities -->
 | 
					    <!-- Aggregate vulnerabilities -->
 | 
				
			||||||
    <provider name="nvd">
 | 
					    <provider name="nvd">
 | 
				
			||||||
      <enabled>yes</enabled>
 | 
					      <enabled>yes</enabled>
 | 
				
			||||||
      <update_from_year>2010</update_from_year>
 | 
					 | 
				
			||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -222,7 +243,6 @@
 | 
				
			|||||||
  <global>
 | 
					  <global>
 | 
				
			||||||
    <white_list>127.0.0.1</white_list>
 | 
					    <white_list>127.0.0.1</white_list>
 | 
				
			||||||
    <white_list>^localhost.localdomain$</white_list>
 | 
					    <white_list>^localhost.localdomain$</white_list>
 | 
				
			||||||
    <white_list>127.0.0.53</white_list>
 | 
					 | 
				
			||||||
  </global>
 | 
					  </global>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  <command>
 | 
					  <command>
 | 
				
			||||||
@@ -350,24 +370,9 @@
 | 
				
			|||||||
    <location>/var/ossec/logs/active-responses.log</location>
 | 
					    <location>/var/ossec/logs/active-responses.log</location>
 | 
				
			||||||
  </localfile>
 | 
					  </localfile>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  <localfile>
 | 
					 | 
				
			||||||
    <log_format>syslog</log_format>
 | 
					 | 
				
			||||||
    <location>/var/log/auth.log</location>
 | 
					 | 
				
			||||||
  </localfile>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  <localfile>
 | 
					 | 
				
			||||||
    <log_format>syslog</log_format>
 | 
					 | 
				
			||||||
    <location>/var/log/syslog</location>
 | 
					 | 
				
			||||||
  </localfile>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  <localfile>
 | 
					  <localfile>
 | 
				
			||||||
    <log_format>syslog</log_format>
 | 
					    <log_format>syslog</log_format>
 | 
				
			||||||
    <location>/var/log/dpkg.log</location>
 | 
					    <location>/var/log/dpkg.log</location>
 | 
				
			||||||
  </localfile>
 | 
					  </localfile>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  <localfile>
 | 
					 | 
				
			||||||
    <log_format>syslog</log_format>
 | 
					 | 
				
			||||||
    <location>/var/log/kern.log</location>
 | 
					 | 
				
			||||||
  </localfile>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
</ossec_config>
 | 
					</ossec_config>
 | 
				
			||||||
@@ -108,15 +108,16 @@
 | 
				
			|||||||
      <os>xenial</os>
 | 
					      <os>xenial</os>
 | 
				
			||||||
      <os>bionic</os>
 | 
					      <os>bionic</os>
 | 
				
			||||||
      <os>focal</os>
 | 
					      <os>focal</os>
 | 
				
			||||||
 | 
					      <os>jammy</os>
 | 
				
			||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <!-- Debian OS vulnerabilities -->
 | 
					    <!-- Debian OS vulnerabilities -->
 | 
				
			||||||
    <provider name="debian">
 | 
					    <provider name="debian">
 | 
				
			||||||
      <enabled>no</enabled>
 | 
					      <enabled>no</enabled>
 | 
				
			||||||
      <os>stretch</os>
 | 
					 | 
				
			||||||
      <os>buster</os>
 | 
					      <os>buster</os>
 | 
				
			||||||
      <os>bullseye</os>
 | 
					      <os>bullseye</os>
 | 
				
			||||||
 | 
					      <os>bookworm</os>
 | 
				
			||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -127,6 +128,7 @@
 | 
				
			|||||||
      <os>6</os>
 | 
					      <os>6</os>
 | 
				
			||||||
      <os>7</os>
 | 
					      <os>7</os>
 | 
				
			||||||
      <os>8</os>
 | 
					      <os>8</os>
 | 
				
			||||||
 | 
					      <os>9</os>
 | 
				
			||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -138,12 +140,32 @@
 | 
				
			|||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <!-- SUSE Linux Enterprise OS vulnerabilities -->
 | 
				
			||||||
 | 
					    <provider name="suse">
 | 
				
			||||||
 | 
					      <enabled>no</enabled>
 | 
				
			||||||
 | 
					      <os>11-server</os>
 | 
				
			||||||
 | 
					      <os>11-desktop</os>
 | 
				
			||||||
 | 
					      <os>12-server</os>
 | 
				
			||||||
 | 
					      <os>12-desktop</os>
 | 
				
			||||||
 | 
					      <os>15-server</os>
 | 
				
			||||||
 | 
					      <os>15-desktop</os>
 | 
				
			||||||
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <!-- Arch OS vulnerabilities -->
 | 
					    <!-- Arch OS vulnerabilities -->
 | 
				
			||||||
    <provider name="arch">
 | 
					    <provider name="arch">
 | 
				
			||||||
      <enabled>no</enabled>
 | 
					      <enabled>no</enabled>
 | 
				
			||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <!-- Alma Linux OS vulnerabilities -->
 | 
				
			||||||
 | 
					    <provider name="almalinux">
 | 
				
			||||||
 | 
					      <enabled>no</enabled>
 | 
				
			||||||
 | 
					      <os>8</os>
 | 
				
			||||||
 | 
					      <os>9</os>
 | 
				
			||||||
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <!-- Windows OS vulnerabilities -->
 | 
					    <!-- Windows OS vulnerabilities -->
 | 
				
			||||||
    <provider name="msu">
 | 
					    <provider name="msu">
 | 
				
			||||||
      <enabled>yes</enabled>
 | 
					      <enabled>yes</enabled>
 | 
				
			||||||
@@ -153,7 +175,6 @@
 | 
				
			|||||||
    <!-- Aggregate vulnerabilities -->
 | 
					    <!-- Aggregate vulnerabilities -->
 | 
				
			||||||
    <provider name="nvd">
 | 
					    <provider name="nvd">
 | 
				
			||||||
      <enabled>yes</enabled>
 | 
					      <enabled>yes</enabled>
 | 
				
			||||||
      <update_from_year>2010</update_from_year>
 | 
					 | 
				
			||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -222,7 +243,6 @@
 | 
				
			|||||||
  <global>
 | 
					  <global>
 | 
				
			||||||
    <white_list>127.0.0.1</white_list>
 | 
					    <white_list>127.0.0.1</white_list>
 | 
				
			||||||
    <white_list>^localhost.localdomain$</white_list>
 | 
					    <white_list>^localhost.localdomain$</white_list>
 | 
				
			||||||
    <white_list>127.0.0.53</white_list>
 | 
					 | 
				
			||||||
  </global>
 | 
					  </global>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  <command>
 | 
					  <command>
 | 
				
			||||||
@@ -350,24 +370,9 @@
 | 
				
			|||||||
    <location>/var/ossec/logs/active-responses.log</location>
 | 
					    <location>/var/ossec/logs/active-responses.log</location>
 | 
				
			||||||
  </localfile>
 | 
					  </localfile>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  <localfile>
 | 
					 | 
				
			||||||
    <log_format>syslog</log_format>
 | 
					 | 
				
			||||||
    <location>/var/log/auth.log</location>
 | 
					 | 
				
			||||||
  </localfile>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  <localfile>
 | 
					 | 
				
			||||||
    <log_format>syslog</log_format>
 | 
					 | 
				
			||||||
    <location>/var/log/syslog</location>
 | 
					 | 
				
			||||||
  </localfile>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  <localfile>
 | 
					  <localfile>
 | 
				
			||||||
    <log_format>syslog</log_format>
 | 
					    <log_format>syslog</log_format>
 | 
				
			||||||
    <location>/var/log/dpkg.log</location>
 | 
					    <location>/var/log/dpkg.log</location>
 | 
				
			||||||
  </localfile>
 | 
					  </localfile>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  <localfile>
 | 
					 | 
				
			||||||
    <log_format>syslog</log_format>
 | 
					 | 
				
			||||||
    <location>/var/log/kern.log</location>
 | 
					 | 
				
			||||||
  </localfile>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
</ossec_config>
 | 
					</ossec_config>
 | 
				
			||||||
@@ -1,5 +1,5 @@
 | 
				
			|||||||
server.host: 0.0.0.0
 | 
					server.host: 0.0.0.0
 | 
				
			||||||
server.port: 443
 | 
					server.port: 5601
 | 
				
			||||||
opensearch.hosts: https://wazuh1.indexer:9200
 | 
					opensearch.hosts: https://wazuh1.indexer:9200
 | 
				
			||||||
opensearch.ssl.verificationMode: certificate
 | 
					opensearch.ssl.verificationMode: certificate
 | 
				
			||||||
opensearch.requestHeadersWhitelist: ["securitytenant","Authorization"]
 | 
					opensearch.requestHeadersWhitelist: ["securitytenant","Authorization"]
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,6 +2,6 @@ hosts:
 | 
				
			|||||||
  - 1513629884013:
 | 
					  - 1513629884013:
 | 
				
			||||||
      url: "https://wazuh.master"
 | 
					      url: "https://wazuh.master"
 | 
				
			||||||
      port: 55000
 | 
					      port: 55000
 | 
				
			||||||
      username: acme-user
 | 
					      username: wazuh-wui
 | 
				
			||||||
      password: MyS3cr37P450r.*-
 | 
					      password: "MyS3cr37P450r.*-"
 | 
				
			||||||
      run_as: false
 | 
					      run_as: false
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,11 +1,18 @@
 | 
				
			|||||||
# Wazuh App Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
version: '3.7'
 | 
					version: '3.7'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
services:
 | 
					services:
 | 
				
			||||||
  wazuh.master:
 | 
					  wazuh.master:
 | 
				
			||||||
    image: wazuh/wazuh-manager:4.3.0
 | 
					    image: wazuh/wazuh-manager:4.6.0
 | 
				
			||||||
    hostname: wazuh.master
 | 
					    hostname: wazuh.master
 | 
				
			||||||
    restart: always
 | 
					    restart: always
 | 
				
			||||||
 | 
					    ulimits:
 | 
				
			||||||
 | 
					      memlock:
 | 
				
			||||||
 | 
					        soft: -1
 | 
				
			||||||
 | 
					        hard: -1
 | 
				
			||||||
 | 
					      nofile:
 | 
				
			||||||
 | 
					        soft: 655360
 | 
				
			||||||
 | 
					        hard: 655360
 | 
				
			||||||
    ports:
 | 
					    ports:
 | 
				
			||||||
      - "1515:1515"
 | 
					      - "1515:1515"
 | 
				
			||||||
      - "514:514/udp"
 | 
					      - "514:514/udp"
 | 
				
			||||||
@@ -18,7 +25,7 @@ services:
 | 
				
			|||||||
      - SSL_CERTIFICATE_AUTHORITIES=/etc/ssl/root-ca.pem
 | 
					      - SSL_CERTIFICATE_AUTHORITIES=/etc/ssl/root-ca.pem
 | 
				
			||||||
      - SSL_CERTIFICATE=/etc/ssl/filebeat.pem
 | 
					      - SSL_CERTIFICATE=/etc/ssl/filebeat.pem
 | 
				
			||||||
      - SSL_KEY=/etc/ssl/filebeat.key
 | 
					      - SSL_KEY=/etc/ssl/filebeat.key
 | 
				
			||||||
      - API_USERNAME=acme-user
 | 
					      - API_USERNAME=wazuh-wui
 | 
				
			||||||
      - API_PASSWORD=MyS3cr37P450r.*-
 | 
					      - API_PASSWORD=MyS3cr37P450r.*-
 | 
				
			||||||
    volumes:
 | 
					    volumes:
 | 
				
			||||||
      - master-wazuh-api-configuration:/var/ossec/api/configuration
 | 
					      - master-wazuh-api-configuration:/var/ossec/api/configuration
 | 
				
			||||||
@@ -38,9 +45,16 @@ services:
 | 
				
			|||||||
      - ./config/wazuh_cluster/wazuh_manager.conf:/wazuh-config-mount/etc/ossec.conf
 | 
					      - ./config/wazuh_cluster/wazuh_manager.conf:/wazuh-config-mount/etc/ossec.conf
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  wazuh.worker:
 | 
					  wazuh.worker:
 | 
				
			||||||
    image: wazuh/wazuh-manager:4.3.0
 | 
					    image: wazuh/wazuh-manager:4.6.0
 | 
				
			||||||
    hostname: wazuh.worker
 | 
					    hostname: wazuh.worker
 | 
				
			||||||
    restart: always
 | 
					    restart: always
 | 
				
			||||||
 | 
					    ulimits:
 | 
				
			||||||
 | 
					      memlock:
 | 
				
			||||||
 | 
					        soft: -1
 | 
				
			||||||
 | 
					        hard: -1
 | 
				
			||||||
 | 
					      nofile:
 | 
				
			||||||
 | 
					        soft: 655360
 | 
				
			||||||
 | 
					        hard: 655360
 | 
				
			||||||
    environment:
 | 
					    environment:
 | 
				
			||||||
      - INDEXER_URL=https://wazuh1.indexer:9200
 | 
					      - INDEXER_URL=https://wazuh1.indexer:9200
 | 
				
			||||||
      - INDEXER_USERNAME=admin
 | 
					      - INDEXER_USERNAME=admin
 | 
				
			||||||
@@ -67,7 +81,7 @@ services:
 | 
				
			|||||||
      - ./config/wazuh_cluster/wazuh_worker.conf:/wazuh-config-mount/etc/ossec.conf
 | 
					      - ./config/wazuh_cluster/wazuh_worker.conf:/wazuh-config-mount/etc/ossec.conf
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  wazuh1.indexer:
 | 
					  wazuh1.indexer:
 | 
				
			||||||
    image: wazuh/wazuh-indexer:4.3.0
 | 
					    image: wazuh/wazuh-indexer:4.6.0
 | 
				
			||||||
    hostname: wazuh1.indexer
 | 
					    hostname: wazuh1.indexer
 | 
				
			||||||
    restart: always
 | 
					    restart: always
 | 
				
			||||||
    ports:
 | 
					    ports:
 | 
				
			||||||
@@ -84,16 +98,16 @@ services:
 | 
				
			|||||||
        hard: 65536
 | 
					        hard: 65536
 | 
				
			||||||
    volumes:
 | 
					    volumes:
 | 
				
			||||||
      - wazuh-indexer-data-1:/var/lib/wazuh-indexer
 | 
					      - wazuh-indexer-data-1:/var/lib/wazuh-indexer
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/root-ca.pem:/usr/share/wazuh-indexer/config/certs/root-ca.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/root-ca.pem:/usr/share/wazuh-indexer/certs/root-ca.pem
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/wazuh1.indexer-key.pem:/usr/share/wazuh-indexer/config/certs/wazuh1.indexer.key
 | 
					      - ./config/wazuh_indexer_ssl_certs/wazuh1.indexer-key.pem:/usr/share/wazuh-indexer/certs/wazuh1.indexer.key
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/wazuh1.indexer.pem:/usr/share/wazuh-indexer/config/certs/wazuh1.indexer.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/wazuh1.indexer.pem:/usr/share/wazuh-indexer/certs/wazuh1.indexer.pem
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/admin.pem:/usr/share/wazuh-indexer/config/certs/admin.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/admin.pem:/usr/share/wazuh-indexer/certs/admin.pem
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/admin-key.pem:/usr/share/wazuh-indexer/config/certs/admin-key.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/admin-key.pem:/usr/share/wazuh-indexer/certs/admin-key.pem
 | 
				
			||||||
      - ./config/wazuh_indexer/wazuh1.indexer.yml:/usr/share/wazuh-indexer/config/opensearch.yml
 | 
					      - ./config/wazuh_indexer/wazuh1.indexer.yml:/usr/share/wazuh-indexer/opensearch.yml
 | 
				
			||||||
      - ./config/wazuh_indexer/internal_users.yml:/usr/share/wazuh-indexer/plugins/opensearch-security/securityconfig/internal_users.yml
 | 
					      - ./config/wazuh_indexer/internal_users.yml:/usr/share/wazuh-indexer/opensearch-security/internal_users.yml
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  wazuh2.indexer:
 | 
					  wazuh2.indexer:
 | 
				
			||||||
    image: wazuh/wazuh-indexer:4.3.0
 | 
					    image: wazuh/wazuh-indexer:4.6.0
 | 
				
			||||||
    hostname: wazuh2.indexer
 | 
					    hostname: wazuh2.indexer
 | 
				
			||||||
    restart: always
 | 
					    restart: always
 | 
				
			||||||
    environment:
 | 
					    environment:
 | 
				
			||||||
@@ -108,14 +122,14 @@ services:
 | 
				
			|||||||
        hard: 65536
 | 
					        hard: 65536
 | 
				
			||||||
    volumes:
 | 
					    volumes:
 | 
				
			||||||
      - wazuh-indexer-data-2:/var/lib/wazuh-indexer
 | 
					      - wazuh-indexer-data-2:/var/lib/wazuh-indexer
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/root-ca.pem:/usr/share/wazuh-indexer/config/certs/root-ca.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/root-ca.pem:/usr/share/wazuh-indexer/certs/root-ca.pem
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/wazuh2.indexer-key.pem:/usr/share/wazuh-indexer/config/certs/wazuh2.indexer.key
 | 
					      - ./config/wazuh_indexer_ssl_certs/wazuh2.indexer-key.pem:/usr/share/wazuh-indexer/certs/wazuh2.indexer.key
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/wazuh2.indexer.pem:/usr/share/wazuh-indexer/config/certs/wazuh2.indexer.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/wazuh2.indexer.pem:/usr/share/wazuh-indexer/certs/wazuh2.indexer.pem
 | 
				
			||||||
      - ./config/wazuh_indexer/wazuh2.indexer.yml:/usr/share/wazuh-indexer/config/opensearch.yml
 | 
					      - ./config/wazuh_indexer/wazuh2.indexer.yml:/usr/share/wazuh-indexer/opensearch.yml
 | 
				
			||||||
      - ./config/wazuh_indexer/internal_users.yml:/usr/share/wazuh-indexer/plugins/opensearch-security/securityconfig/internal_users.yml
 | 
					      - ./config/wazuh_indexer/internal_users.yml:/usr/share/wazuh-indexer/opensearch-security/internal_users.yml
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  wazuh3.indexer:
 | 
					  wazuh3.indexer:
 | 
				
			||||||
    image: wazuh/wazuh-indexer:4.3.0
 | 
					    image: wazuh/wazuh-indexer:4.6.0
 | 
				
			||||||
    hostname: wazuh3.indexer
 | 
					    hostname: wazuh3.indexer
 | 
				
			||||||
    restart: always
 | 
					    restart: always
 | 
				
			||||||
    environment:
 | 
					    environment:
 | 
				
			||||||
@@ -130,29 +144,33 @@ services:
 | 
				
			|||||||
        hard: 65536
 | 
					        hard: 65536
 | 
				
			||||||
    volumes:
 | 
					    volumes:
 | 
				
			||||||
      - wazuh-indexer-data-3:/var/lib/wazuh-indexer
 | 
					      - wazuh-indexer-data-3:/var/lib/wazuh-indexer
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/root-ca.pem:/usr/share/wazuh-indexer/config/certs/root-ca.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/root-ca.pem:/usr/share/wazuh-indexer/certs/root-ca.pem
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/wazuh3.indexer-key.pem:/usr/share/wazuh-indexer/config/certs/wazuh3.indexer.key
 | 
					      - ./config/wazuh_indexer_ssl_certs/wazuh3.indexer-key.pem:/usr/share/wazuh-indexer/certs/wazuh3.indexer.key
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/wazuh3.indexer.pem:/usr/share/wazuh-indexer/config/certs/wazuh3.indexer.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/wazuh3.indexer.pem:/usr/share/wazuh-indexer/certs/wazuh3.indexer.pem
 | 
				
			||||||
      - ./config/wazuh_indexer/wazuh3.indexer.yml:/usr/share/wazuh-indexer/config/opensearch.yml
 | 
					      - ./config/wazuh_indexer/wazuh3.indexer.yml:/usr/share/wazuh-indexer/opensearch.yml
 | 
				
			||||||
      - ./config/wazuh_indexer/internal_users.yml:/usr/share/wazuh-indexer/plugins/opensearch-security/securityconfig/internal_users.yml
 | 
					      - ./config/wazuh_indexer/internal_users.yml:/usr/share/wazuh-indexer/opensearch-security/internal_users.yml
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  wazuh.dashboard:
 | 
					  wazuh.dashboard:
 | 
				
			||||||
    image: wazuh/wazuh-dashboard:4.3.0
 | 
					    image: wazuh/wazuh-dashboard:4.6.0
 | 
				
			||||||
    hostname: wazuh.dashboard
 | 
					    hostname: wazuh.dashboard
 | 
				
			||||||
    restart: always
 | 
					    restart: always
 | 
				
			||||||
    ports:
 | 
					    ports:
 | 
				
			||||||
      - 443:443
 | 
					      - 443:5601
 | 
				
			||||||
    environment:
 | 
					    environment:
 | 
				
			||||||
      - OPENSEARCH_HOSTS="https://wazuh1.indexer:9200"
 | 
					      - OPENSEARCH_HOSTS="https://wazuh1.indexer:9200"
 | 
				
			||||||
      - WAZUH_API_URL="https://wazuh.master"
 | 
					      - WAZUH_API_URL="https://wazuh.master"
 | 
				
			||||||
      - API_USERNAME=acme-user
 | 
					      - API_USERNAME=wazuh-wui
 | 
				
			||||||
      - API_PASSWORD=MyS3cr37P450r.*-
 | 
					      - API_PASSWORD=MyS3cr37P450r.*-
 | 
				
			||||||
 | 
					      - DASHBOARD_USERNAME=kibanaserver
 | 
				
			||||||
 | 
					      - DASHBOARD_PASSWORD=kibanaserver
 | 
				
			||||||
    volumes:
 | 
					    volumes:
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/wazuh.dashboard.pem:/usr/share/wazuh-dashboard/certs/wazuh-dashboard.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/wazuh.dashboard.pem:/usr/share/wazuh-dashboard/certs/wazuh-dashboard.pem
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/wazuh.dashboard-key.pem:/usr/share/wazuh-dashboard/certs/wazuh-dashboard-key.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/wazuh.dashboard-key.pem:/usr/share/wazuh-dashboard/certs/wazuh-dashboard-key.pem
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/root-ca.pem:/usr/share/wazuh-dashboard/certs/root-ca.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/root-ca.pem:/usr/share/wazuh-dashboard/certs/root-ca.pem
 | 
				
			||||||
      - ./config/wazuh_dashboard/opensearch_dashboards.yml:/usr/share/wazuh-dashboard/config/opensearch_dashboards.yml
 | 
					      - ./config/wazuh_dashboard/opensearch_dashboards.yml:/usr/share/wazuh-dashboard/config/opensearch_dashboards.yml
 | 
				
			||||||
      - ./config/wazuh_dashboard/wazuh.yml:/usr/share/wazuh-dashboard/data/wazuh/config/wazuh.yml
 | 
					      - ./config/wazuh_dashboard/wazuh.yml:/usr/share/wazuh-dashboard/data/wazuh/config/wazuh.yml
 | 
				
			||||||
 | 
					      - wazuh-dashboard-config:/usr/share/wazuh-dashboard/data/wazuh/config
 | 
				
			||||||
 | 
					      - wazuh-dashboard-custom:/usr/share/wazuh-dashboard/plugins/wazuh/public/assets/custom
 | 
				
			||||||
    depends_on:
 | 
					    depends_on:
 | 
				
			||||||
      - wazuh1.indexer
 | 
					      - wazuh1.indexer
 | 
				
			||||||
    links:
 | 
					    links:
 | 
				
			||||||
@@ -202,3 +220,5 @@ volumes:
 | 
				
			|||||||
  wazuh-indexer-data-1:
 | 
					  wazuh-indexer-data-1:
 | 
				
			||||||
  wazuh-indexer-data-2:
 | 
					  wazuh-indexer-data-2:
 | 
				
			||||||
  wazuh-indexer-data-3:
 | 
					  wazuh-indexer-data-3:
 | 
				
			||||||
 | 
					  wazuh-dashboard-config:
 | 
				
			||||||
 | 
					  wazuh-dashboard-custom:
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
# Wazuh App Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
version: '3'
 | 
					version: '3'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
services:
 | 
					services:
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -108,15 +108,16 @@
 | 
				
			|||||||
      <os>xenial</os>
 | 
					      <os>xenial</os>
 | 
				
			||||||
      <os>bionic</os>
 | 
					      <os>bionic</os>
 | 
				
			||||||
      <os>focal</os>
 | 
					      <os>focal</os>
 | 
				
			||||||
 | 
					      <os>jammy</os>
 | 
				
			||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <!-- Debian OS vulnerabilities -->
 | 
					    <!-- Debian OS vulnerabilities -->
 | 
				
			||||||
    <provider name="debian">
 | 
					    <provider name="debian">
 | 
				
			||||||
      <enabled>no</enabled>
 | 
					      <enabled>no</enabled>
 | 
				
			||||||
      <os>stretch</os>
 | 
					 | 
				
			||||||
      <os>buster</os>
 | 
					      <os>buster</os>
 | 
				
			||||||
      <os>bullseye</os>
 | 
					      <os>bullseye</os>
 | 
				
			||||||
 | 
					      <os>bookworm</os>
 | 
				
			||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -127,6 +128,7 @@
 | 
				
			|||||||
      <os>6</os>
 | 
					      <os>6</os>
 | 
				
			||||||
      <os>7</os>
 | 
					      <os>7</os>
 | 
				
			||||||
      <os>8</os>
 | 
					      <os>8</os>
 | 
				
			||||||
 | 
					      <os>9</os>
 | 
				
			||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -138,12 +140,32 @@
 | 
				
			|||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <!-- SUSE Linux Enterprise OS vulnerabilities -->
 | 
				
			||||||
 | 
					    <provider name="suse">
 | 
				
			||||||
 | 
					      <enabled>no</enabled>
 | 
				
			||||||
 | 
					      <os>11-server</os>
 | 
				
			||||||
 | 
					      <os>11-desktop</os>
 | 
				
			||||||
 | 
					      <os>12-server</os>
 | 
				
			||||||
 | 
					      <os>12-desktop</os>
 | 
				
			||||||
 | 
					      <os>15-server</os>
 | 
				
			||||||
 | 
					      <os>15-desktop</os>
 | 
				
			||||||
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <!-- Arch OS vulnerabilities -->
 | 
					    <!-- Arch OS vulnerabilities -->
 | 
				
			||||||
    <provider name="arch">
 | 
					    <provider name="arch">
 | 
				
			||||||
      <enabled>no</enabled>
 | 
					      <enabled>no</enabled>
 | 
				
			||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <!-- Alma Linux OS vulnerabilities -->
 | 
				
			||||||
 | 
					    <provider name="almalinux">
 | 
				
			||||||
 | 
					      <enabled>no</enabled>
 | 
				
			||||||
 | 
					      <os>8</os>
 | 
				
			||||||
 | 
					      <os>9</os>
 | 
				
			||||||
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <!-- Windows OS vulnerabilities -->
 | 
					    <!-- Windows OS vulnerabilities -->
 | 
				
			||||||
    <provider name="msu">
 | 
					    <provider name="msu">
 | 
				
			||||||
      <enabled>yes</enabled>
 | 
					      <enabled>yes</enabled>
 | 
				
			||||||
@@ -153,7 +175,6 @@
 | 
				
			|||||||
    <!-- Aggregate vulnerabilities -->
 | 
					    <!-- Aggregate vulnerabilities -->
 | 
				
			||||||
    <provider name="nvd">
 | 
					    <provider name="nvd">
 | 
				
			||||||
      <enabled>yes</enabled>
 | 
					      <enabled>yes</enabled>
 | 
				
			||||||
      <update_from_year>2010</update_from_year>
 | 
					 | 
				
			||||||
      <update_interval>1h</update_interval>
 | 
					      <update_interval>1h</update_interval>
 | 
				
			||||||
    </provider>
 | 
					    </provider>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -222,7 +243,6 @@
 | 
				
			|||||||
  <global>
 | 
					  <global>
 | 
				
			||||||
    <white_list>127.0.0.1</white_list>
 | 
					    <white_list>127.0.0.1</white_list>
 | 
				
			||||||
    <white_list>^localhost.localdomain$</white_list>
 | 
					    <white_list>^localhost.localdomain$</white_list>
 | 
				
			||||||
    <white_list>10.0.0.106</white_list>
 | 
					 | 
				
			||||||
  </global>
 | 
					  </global>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  <command>
 | 
					  <command>
 | 
				
			||||||
@@ -332,11 +352,11 @@
 | 
				
			|||||||
    <name>wazuh</name>
 | 
					    <name>wazuh</name>
 | 
				
			||||||
    <node_name>node01</node_name>
 | 
					    <node_name>node01</node_name>
 | 
				
			||||||
    <node_type>master</node_type>
 | 
					    <node_type>master</node_type>
 | 
				
			||||||
    <key></key>
 | 
					    <key>aa093264ef885029653eea20dfcf51ae</key>
 | 
				
			||||||
    <port>1516</port>
 | 
					    <port>1516</port>
 | 
				
			||||||
    <bind_addr>0.0.0.0</bind_addr>
 | 
					    <bind_addr>0.0.0.0</bind_addr>
 | 
				
			||||||
    <nodes>
 | 
					    <nodes>
 | 
				
			||||||
        <node>NODE_IP</node>
 | 
					        <node>wazuh.manager</node>
 | 
				
			||||||
    </nodes>
 | 
					    </nodes>
 | 
				
			||||||
    <hidden>no</hidden>
 | 
					    <hidden>no</hidden>
 | 
				
			||||||
    <disabled>yes</disabled>
 | 
					    <disabled>yes</disabled>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,5 @@
 | 
				
			|||||||
server.host: 0.0.0.0
 | 
					server.host: 0.0.0.0
 | 
				
			||||||
server.port: 443
 | 
					server.port: 5601
 | 
				
			||||||
opensearch.hosts: https://wazuh.indexer:9200
 | 
					opensearch.hosts: https://wazuh.indexer:9200
 | 
				
			||||||
opensearch.ssl.verificationMode: certificate
 | 
					opensearch.ssl.verificationMode: certificate
 | 
				
			||||||
opensearch.requestHeadersWhitelist: ["securitytenant","Authorization"]
 | 
					opensearch.requestHeadersWhitelist: ["securitytenant","Authorization"]
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,6 +2,6 @@ hosts:
 | 
				
			|||||||
  - 1513629884013:
 | 
					  - 1513629884013:
 | 
				
			||||||
      url: "https://wazuh.manager"
 | 
					      url: "https://wazuh.manager"
 | 
				
			||||||
      port: 55000
 | 
					      port: 55000
 | 
				
			||||||
      username: acme-user
 | 
					      username: wazuh-wui
 | 
				
			||||||
      password: MyS3cr37P450r.*-
 | 
					      password: "MyS3cr37P450r.*-"
 | 
				
			||||||
      run_as: false
 | 
					      run_as: false
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -3,13 +3,15 @@ node.name: "wazuh.indexer"
 | 
				
			|||||||
path.data: /var/lib/wazuh-indexer
 | 
					path.data: /var/lib/wazuh-indexer
 | 
				
			||||||
path.logs: /var/log/wazuh-indexer
 | 
					path.logs: /var/log/wazuh-indexer
 | 
				
			||||||
discovery.type: single-node
 | 
					discovery.type: single-node
 | 
				
			||||||
 | 
					http.port: 9200-9299
 | 
				
			||||||
 | 
					transport.tcp.port: 9300-9399
 | 
				
			||||||
compatibility.override_main_response_version: true
 | 
					compatibility.override_main_response_version: true
 | 
				
			||||||
plugins.security.ssl.http.pemcert_filepath: ${OPENSEARCH_PATH_CONF}/certs/wazuh.indexer.pem
 | 
					plugins.security.ssl.http.pemcert_filepath: /usr/share/wazuh-indexer/certs/wazuh.indexer.pem
 | 
				
			||||||
plugins.security.ssl.http.pemkey_filepath: ${OPENSEARCH_PATH_CONF}/certs/wazuh.indexer.key
 | 
					plugins.security.ssl.http.pemkey_filepath: /usr/share/wazuh-indexer/certs/wazuh.indexer.key
 | 
				
			||||||
plugins.security.ssl.http.pemtrustedcas_filepath: ${OPENSEARCH_PATH_CONF}/certs/root-ca.pem
 | 
					plugins.security.ssl.http.pemtrustedcas_filepath: /usr/share/wazuh-indexer/certs/root-ca.pem
 | 
				
			||||||
plugins.security.ssl.transport.pemcert_filepath: ${OPENSEARCH_PATH_CONF}/certs/wazuh.indexer.pem
 | 
					plugins.security.ssl.transport.pemcert_filepath: /usr/share/wazuh-indexer/certs/wazuh.indexer.pem
 | 
				
			||||||
plugins.security.ssl.transport.pemkey_filepath: ${OPENSEARCH_PATH_CONF}/certs/wazuh.indexer.key
 | 
					plugins.security.ssl.transport.pemkey_filepath: /usr/share/wazuh-indexer/certs/wazuh.indexer.key
 | 
				
			||||||
plugins.security.ssl.transport.pemtrustedcas_filepath: ${OPENSEARCH_PATH_CONF}/certs/root-ca.pem
 | 
					plugins.security.ssl.transport.pemtrustedcas_filepath: /usr/share/wazuh-indexer/certs/root-ca.pem
 | 
				
			||||||
plugins.security.ssl.http.enabled: true
 | 
					plugins.security.ssl.http.enabled: true
 | 
				
			||||||
plugins.security.ssl.transport.enforce_hostname_verification: false
 | 
					plugins.security.ssl.transport.enforce_hostname_verification: false
 | 
				
			||||||
plugins.security.ssl.transport.resolve_hostname: false
 | 
					plugins.security.ssl.transport.resolve_hostname: false
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,11 +1,18 @@
 | 
				
			|||||||
# Wazuh App Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
version: '3.7'
 | 
					version: '3.7'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
services:
 | 
					services:
 | 
				
			||||||
  wazuh.manager:
 | 
					  wazuh.manager:
 | 
				
			||||||
    image: wazuh/wazuh-manager:4.3.0
 | 
					    image: wazuh/wazuh-manager:4.6.0
 | 
				
			||||||
    hostname: wazuh.manager
 | 
					    hostname: wazuh.manager
 | 
				
			||||||
    restart: always
 | 
					    restart: always
 | 
				
			||||||
 | 
					    ulimits:
 | 
				
			||||||
 | 
					      memlock:
 | 
				
			||||||
 | 
					        soft: -1
 | 
				
			||||||
 | 
					        hard: -1
 | 
				
			||||||
 | 
					      nofile:
 | 
				
			||||||
 | 
					        soft: 655360
 | 
				
			||||||
 | 
					        hard: 655360
 | 
				
			||||||
    ports:
 | 
					    ports:
 | 
				
			||||||
      - "1514:1514"
 | 
					      - "1514:1514"
 | 
				
			||||||
      - "1515:1515"
 | 
					      - "1515:1515"
 | 
				
			||||||
@@ -19,7 +26,7 @@ services:
 | 
				
			|||||||
      - SSL_CERTIFICATE_AUTHORITIES=/etc/ssl/root-ca.pem
 | 
					      - SSL_CERTIFICATE_AUTHORITIES=/etc/ssl/root-ca.pem
 | 
				
			||||||
      - SSL_CERTIFICATE=/etc/ssl/filebeat.pem
 | 
					      - SSL_CERTIFICATE=/etc/ssl/filebeat.pem
 | 
				
			||||||
      - SSL_KEY=/etc/ssl/filebeat.key
 | 
					      - SSL_KEY=/etc/ssl/filebeat.key
 | 
				
			||||||
      - API_USERNAME=acme-user
 | 
					      - API_USERNAME=wazuh-wui
 | 
				
			||||||
      - API_PASSWORD=MyS3cr37P450r.*-
 | 
					      - API_PASSWORD=MyS3cr37P450r.*-
 | 
				
			||||||
    volumes:
 | 
					    volumes:
 | 
				
			||||||
      - wazuh_api_configuration:/var/ossec/api/configuration
 | 
					      - wazuh_api_configuration:/var/ossec/api/configuration
 | 
				
			||||||
@@ -39,7 +46,7 @@ services:
 | 
				
			|||||||
      - ./config/wazuh_cluster/wazuh_manager.conf:/wazuh-config-mount/etc/ossec.conf
 | 
					      - ./config/wazuh_cluster/wazuh_manager.conf:/wazuh-config-mount/etc/ossec.conf
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  wazuh.indexer:
 | 
					  wazuh.indexer:
 | 
				
			||||||
    image: wazuh/wazuh-indexer:4.3.0
 | 
					    image: wazuh/wazuh-indexer:4.6.0
 | 
				
			||||||
    hostname: wazuh.indexer
 | 
					    hostname: wazuh.indexer
 | 
				
			||||||
    restart: always
 | 
					    restart: always
 | 
				
			||||||
    ports:
 | 
					    ports:
 | 
				
			||||||
@@ -55,25 +62,27 @@ services:
 | 
				
			|||||||
        hard: 65536
 | 
					        hard: 65536
 | 
				
			||||||
    volumes:
 | 
					    volumes:
 | 
				
			||||||
      - wazuh-indexer-data:/var/lib/wazuh-indexer
 | 
					      - wazuh-indexer-data:/var/lib/wazuh-indexer
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/root-ca.pem:/usr/share/wazuh-indexer/config/certs/root-ca.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/root-ca.pem:/usr/share/wazuh-indexer/certs/root-ca.pem
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/wazuh.indexer-key.pem:/usr/share/wazuh-indexer/config/certs/wazuh.indexer.key
 | 
					      - ./config/wazuh_indexer_ssl_certs/wazuh.indexer-key.pem:/usr/share/wazuh-indexer/certs/wazuh.indexer.key
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/wazuh.indexer.pem:/usr/share/wazuh-indexer/config/certs/wazuh.indexer.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/wazuh.indexer.pem:/usr/share/wazuh-indexer/certs/wazuh.indexer.pem
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/admin.pem:/usr/share/wazuh-indexer/config/certs/admin.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/admin.pem:/usr/share/wazuh-indexer/certs/admin.pem
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/admin-key.pem:/usr/share/wazuh-indexer/config/certs/admin-key.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/admin-key.pem:/usr/share/wazuh-indexer/certs/admin-key.pem
 | 
				
			||||||
      - ./config/wazuh_indexer/wazuh.indexer.yml:/usr/share/wazuh-indexer/config/opensearch.yml
 | 
					      - ./config/wazuh_indexer/wazuh.indexer.yml:/usr/share/wazuh-indexer/opensearch.yml
 | 
				
			||||||
      - ./config/wazuh_indexer/internal_users.yml:/usr/share/wazuh-indexer/plugins/opensearch-security/securityconfig/internal_users.yml
 | 
					      - ./config/wazuh_indexer/internal_users.yml:/usr/share/wazuh-indexer/opensearch-security/internal_users.yml
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  wazuh.dashboard:
 | 
					  wazuh.dashboard:
 | 
				
			||||||
    image: wazuh/wazuh-dashboard:4.3.0
 | 
					    image: wazuh/wazuh-dashboard:4.6.0
 | 
				
			||||||
    hostname: wazuh.dashboard
 | 
					    hostname: wazuh.dashboard
 | 
				
			||||||
    restart: always
 | 
					    restart: always
 | 
				
			||||||
    ports:
 | 
					    ports:
 | 
				
			||||||
      - 443:443
 | 
					      - 443:5601
 | 
				
			||||||
    environment:
 | 
					    environment:
 | 
				
			||||||
      - INDEXER_USERNAME=admin
 | 
					      - INDEXER_USERNAME=admin
 | 
				
			||||||
      - INDEXER_PASSWORD=SecretPassword
 | 
					      - INDEXER_PASSWORD=SecretPassword
 | 
				
			||||||
      - WAZUH_API_URL=https://wazuh.manager
 | 
					      - WAZUH_API_URL=https://wazuh.manager
 | 
				
			||||||
      - API_USERNAME=acme-user
 | 
					      - DASHBOARD_USERNAME=kibanaserver
 | 
				
			||||||
 | 
					      - DASHBOARD_PASSWORD=kibanaserver
 | 
				
			||||||
 | 
					      - API_USERNAME=wazuh-wui
 | 
				
			||||||
      - API_PASSWORD=MyS3cr37P450r.*-
 | 
					      - API_PASSWORD=MyS3cr37P450r.*-
 | 
				
			||||||
    volumes:
 | 
					    volumes:
 | 
				
			||||||
      - ./config/wazuh_indexer_ssl_certs/wazuh.dashboard.pem:/usr/share/wazuh-dashboard/certs/wazuh-dashboard.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/wazuh.dashboard.pem:/usr/share/wazuh-dashboard/certs/wazuh-dashboard.pem
 | 
				
			||||||
@@ -81,6 +90,8 @@ services:
 | 
				
			|||||||
      - ./config/wazuh_indexer_ssl_certs/root-ca.pem:/usr/share/wazuh-dashboard/certs/root-ca.pem
 | 
					      - ./config/wazuh_indexer_ssl_certs/root-ca.pem:/usr/share/wazuh-dashboard/certs/root-ca.pem
 | 
				
			||||||
      - ./config/wazuh_dashboard/opensearch_dashboards.yml:/usr/share/wazuh-dashboard/config/opensearch_dashboards.yml
 | 
					      - ./config/wazuh_dashboard/opensearch_dashboards.yml:/usr/share/wazuh-dashboard/config/opensearch_dashboards.yml
 | 
				
			||||||
      - ./config/wazuh_dashboard/wazuh.yml:/usr/share/wazuh-dashboard/data/wazuh/config/wazuh.yml
 | 
					      - ./config/wazuh_dashboard/wazuh.yml:/usr/share/wazuh-dashboard/data/wazuh/config/wazuh.yml
 | 
				
			||||||
 | 
					      - wazuh-dashboard-config:/usr/share/wazuh-dashboard/data/wazuh/config
 | 
				
			||||||
 | 
					      - wazuh-dashboard-custom:/usr/share/wazuh-dashboard/plugins/wazuh/public/assets/custom
 | 
				
			||||||
    depends_on:
 | 
					    depends_on:
 | 
				
			||||||
      - wazuh.indexer
 | 
					      - wazuh.indexer
 | 
				
			||||||
    links:
 | 
					    links:
 | 
				
			||||||
@@ -100,3 +111,5 @@ volumes:
 | 
				
			|||||||
  filebeat_etc:
 | 
					  filebeat_etc:
 | 
				
			||||||
  filebeat_var:
 | 
					  filebeat_var:
 | 
				
			||||||
  wazuh-indexer-data:
 | 
					  wazuh-indexer-data:
 | 
				
			||||||
 | 
					  wazuh-dashboard-config:
 | 
				
			||||||
 | 
					  wazuh-dashboard-custom:
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
# Wazuh App Copyright (C) 2021 Wazuh Inc. (License GPLv2)
 | 
					# Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2)
 | 
				
			||||||
version: '3'
 | 
					version: '3'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
services:
 | 
					services:
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user