#!/bin/bash
# Instalador Sentinela Fase 1 (agente + regras + alerta) — rode como root no WHM Terminal
set -e
mkdir -p /opt/sentinela/state && chmod 750 /opt/sentinela/state
base64 -d > /opt/sentinela/config.php <<'B64_config.php'
PD9waHAKLy8gU2VudGluZWxhIOKAlCBjb25maWd1cmHDp8OjbyAoRmFzZSAxLCBNVlAgb24taG9z
dCkKZGVjbGFyZShzdHJpY3RfdHlwZXM9MSk7CnJldHVybiBbCiAgICAnaG9zdF9pZCcgICA9PiBn
ZXRob3N0bmFtZSgpLAogICAgJ3N0YXRlX2RpcicgPT4gJy9vcHQvc2VudGluZWxhL3N0YXRlJywK
CiAgICAvLyBBbGVydGFzCiAgICAnbWFpbF90bycgICA9PiAnZ29uY2FsdmVzLmpvc2VAb3V0bG9v
ay5jb20sam9hb0BtaW5kY29uc3VsdGluZy5jb20uYnInLAogICAgJ21haWxfZnJvbScgPT4gJ3Nl
bnRpbmVsYUBtaW5kY29uc3VsdGluZy5jb20uYnInLAogICAgJ2Nvb2xkb3duJyAgPT4gOTAwLCAv
LyBzZWd1bmRvcyBlbnRyZSBkb2lzIGFsZXJ0YXMgZG8gbWVzbW8gdGlwbyAoYW50aS1zcGFtKQoK
ICAgIC8vIExpbWlhcmVzIFtXQVJOLCBDUklUXSDigJQgbmFzY2lkb3MgZG9zIGluY2lkZW50ZXMg
cmVhaXMKICAgICd0aHJlc2hvbGRzJyA9PiBbCiAgICAgICAgJ2xvYWRfY29yZScgICAgID0+IFsy
LjAsIDQuMF0sICAgLy8gYWx0byA9IHJ1aW0KICAgICAgICAnbWVtX2F2YWlsX3BjdCcgPT4gWzE1
LCA3XSwgICAgICAvLyBiYWl4byA9IHJ1aW0gKHdhcm4gPD0xNSUsIGNyaXQgPD03JSkKICAgICAg
ICAnc3dhcF9wY3QnICAgICAgPT4gWzI1LCA2MF0sICAgICAvLyBhbHRvID0gcnVpbQogICAgICAg
ICdkaXNrX3BjdCcgICAgICA9PiBbODUsIDkzXSwgICAgIC8vIGFsdG8gPSBydWltCiAgICAgICAg
J2lub2RlX3BjdCcgICAgID0+IFs4NSwgOTNdLCAgICAgLy8gYWx0byA9IHJ1aW0KICAgICAgICAn
bHNwaHAnICAgICAgICAgPT4gWzMwLCA0MF0sICAgICAvLyBhbHRvID0gcnVpbSAodGV0byA9IDQw
KQogICAgXSwKXTsK
B64_config.php
base64 -d > /opt/sentinela/agent.php <<'B64_agent.php'
PD9waHAKLyoqCiAqIFNlbnRpbmVsYSDigJQgYWdlbnRlIGRlIGNvbGV0YSAoRmFzZSAxLCBNVlAg
b24taG9zdCkKICogUm9kYSBjb21vIHJvb3QgdmlhIGNyb24gYSBjYWRhIDYwcy4gQ29sZXRhIG3D
qXRyaWNhcyBkZSBpbmZyYS9QSFAvRG9ja2VyLwogKiBNeVNRTC9jb250YXMgZSBncmF2YSAvb3B0
L3NlbnRpbmVsYS9zdGF0ZS9sYXRlc3QuanNvbiAoKyBoaXN0b3J5Lm5kanNvbikuCiAqIFNvbWVu
dGUgbGVpdHVyYS4gVXNvOiBwaHAgYWdlbnQucGhwIFstLXByaW50XQogKi8KZGVjbGFyZShzdHJp
Y3RfdHlwZXM9MSk7CgokY2ZnID0gcmVxdWlyZSAnL29wdC9zZW50aW5lbGEvY29uZmlnLnBocCc7
CiRkaXIgPSAkY2ZnWydzdGF0ZV9kaXInXTsKQG1rZGlyKCRkaXIsIDA3NTAsIHRydWUpOwoKLyoq
IEV4ZWN1dGEgdW0gY29tYW5kbyBjb20gdGltZW91dCwgcmV0b3JuYSBzdGRvdXQgKHN0cmluZyB2
YXppYSBlbSBmYWxoYSkuICovCmZ1bmN0aW9uIHJ1bihzdHJpbmcgJGNtZCwgaW50ICR0aW1lb3V0
ID0gOCk6IHN0cmluZyB7CiAgICByZXR1cm4gKHN0cmluZykgQHNoZWxsX2V4ZWMoJ3RpbWVvdXQg
JyAuICR0aW1lb3V0IC4gJyBiYXNoIC1jICcgLiBlc2NhcGVzaGVsbGFyZygkY21kKSk7Cn0KZnVu
Y3Rpb24gbnByb2MoKTogaW50IHsgcmV0dXJuIG1heCgxLCAoaW50KSB0cmltKHJ1bignbnByb2Mn
KSkpOyB9CmZ1bmN0aW9uIHBncmVwX3goc3RyaW5nICRwKTogYm9vbCB7IHJldHVybiB0cmltKHJ1
bigncGdyZXAgLXggJyAuIGVzY2FwZXNoZWxsYXJnKCRwKSkpICE9PSAnJzsgfQoKLyogL3Byb2Mv
bWVtaW5mbyAqLwokbWVtID0gW107CmZvcmVhY2ggKGV4cGxvZGUoIlxuIiwgKHN0cmluZykgQGZp
bGVfZ2V0X2NvbnRlbnRzKCcvcHJvYy9tZW1pbmZvJykpIGFzICRsKSB7CiAgICBpZiAocHJlZ19t
YXRjaCgnL14oXHcrKTpccysoXGQrKS8nLCAkbCwgJHgpKSB7ICRtZW1bJHhbMV1dID0gKGludCkg
JHhbMl07IH0KfQoKJGxvYWQxID0gc3lzX2dldGxvYWRhdmcoKVswXTsKJGNvcmVzID0gbnByb2Mo
KTsKCiRtZW1BdmFpbFBjdCA9IChpc3NldCgkbWVtWydNZW1BdmFpbGFibGUnXSwgJG1lbVsnTWVt
VG90YWwnXSkgJiYgJG1lbVsnTWVtVG90YWwnXSA+IDApCiAgICA/IHJvdW5kKCRtZW1bJ01lbUF2
YWlsYWJsZSddIC8gJG1lbVsnTWVtVG90YWwnXSAqIDEwMCwgMSkgOiBudWxsOwokc3dhcFBjdCA9
IChpc3NldCgkbWVtWydTd2FwVG90YWwnXSwgJG1lbVsnU3dhcEZyZWUnXSkgJiYgJG1lbVsnU3dh
cFRvdGFsJ10gPiAwKQogICAgPyByb3VuZCgoJG1lbVsnU3dhcFRvdGFsJ10gLSAkbWVtWydTd2Fw
RnJlZSddKSAvICRtZW1bJ1N3YXBUb3RhbCddICogMTAwLCAxKSA6IDAuMDsKCiRkdCA9IEBkaXNr
X3RvdGFsX3NwYWNlKCcvJyk7ICRkZnJlZSA9IEBkaXNrX2ZyZWVfc3BhY2UoJy8nKTsKJGRpc2tQ
Y3QgPSAoJGR0ICYmICRkdCA+IDApID8gcm91bmQoKCRkdCAtICRkZnJlZSkgLyAkZHQgKiAxMDAs
IDEpIDogbnVsbDsKCi8qIGlub2RlcyBkZSAvICovCiRpbm9kZVBjdCA9IG51bGw7CmZvcmVhY2gg
KGV4cGxvZGUoIlxuIiwgcnVuKCdkZiAtUGkgLycpKSBhcyAkbCkgewogICAgaWYgKHByZWdfbWF0
Y2goJy8oXGQrKSVccytcLyQvJywgdHJpbSgkbCksICR4KSkgeyAkaW5vZGVQY3QgPSAoaW50KSAk
eFsxXTsgfQp9CgokbHNwaHAgPSAoaW50KSB0cmltKHJ1bigncGdyZXAgLWMgbHNwaHAnKSk7IC8v
IDAgc2UgbmVuaHVtCgovKiBEb2NrZXIg4oCUIGVzdGFkb3MgKyB0b3AgcG9yIG1lbcOzcmlhIChs
ZXZlLCBjb20gdGltZW91dCBtYWlvcikgKi8KJHN0YXRlcyA9IFtdOwpmb3JlYWNoIChleHBsb2Rl
KCJcbiIsIHJ1bigiZG9ja2VyIHBzIC1hIC0tZm9ybWF0ICd7ey5TdGF0ZX19JyAyPi9kZXYvbnVs
bCIsIDYpKSBhcyAkbCkgewogICAgJGwgPSB0cmltKCRsKTsgaWYgKCRsICE9PSAnJykgeyAkc3Rh
dGVzWyRsXSA9ICgkc3RhdGVzWyRsXSA/PyAwKSArIDE7IH0KfQokdG9wYyA9IFtdOwpmb3JlYWNo
IChleHBsb2RlKCJcbiIsIHJ1bigiZG9ja2VyIHN0YXRzIC0tbm8tc3RyZWFtIC0tZm9ybWF0ICd7
ey5OYW1lfX18e3suTWVtVXNhZ2V9fXx7ey5NZW1QZXJjfX18e3suQ1BVUGVyY319JyAyPi9kZXYv
bnVsbCIsIDE1KSkgYXMgJGwpIHsKICAgIGlmICh0cmltKCRsKSA9PT0gJycpIHsgY29udGludWU7
IH0KICAgICRwID0gZXhwbG9kZSgnfCcsICRsKTsgaWYgKGNvdW50KCRwKSA8IDQpIHsgY29udGlu
dWU7IH0KICAgICR0b3BjW10gPSBbJ25hbWUnID0+ICRwWzBdLCAnbWVtJyA9PiAkcFsxXSwgJ21l
bVBjdCcgPT4gKGZsb2F0KSAkcFsyXSwgJ2NwdScgPT4gKGZsb2F0KSAkcFszXV07Cn0KdXNvcnQo
JHRvcGMsIGZuKCRhLCAkYikgPT4gJGJbJ21lbVBjdCddIDw9PiAkYVsnbWVtUGN0J10pOwokdG9w
YyA9IGFycmF5X3NsaWNlKCR0b3BjLCAwLCA2KTsKCi8qIENvbnRhcyBjUGFuZWwgKi8KJGFjY3Rz
ID0gKGludCkgdHJpbShydW4oJ2xzIC0xIC92YXIvY3BhbmVsL3VzZXJzIDI+L2Rldi9udWxsIHwg
d2MgLWwnKSk7CgovKiBNeVNRTCDigJQgdXNhIC9yb290Ly5teS5jbmYgKGFnZW50ZSByb2RhIGNv
bW8gcm9vdCk7IHB1bGEgc2UgaW5kaXNwb27DrXZlbCAqLwokbXlzcWxDb25ucyA9IG51bGw7ICRt
eXNxbFRvcCA9IFtdOwokcGwgPSBydW4oJ215c3FsIC1OIC1lICJTSE9XIFBST0NFU1NMSVNUIiAy
Pi9kZXYvbnVsbCcsIDYpOwppZiAodHJpbSgkcGwpICE9PSAnJykgewogICAgJGJ5VXNlciA9IFtd
OyAkbiA9IDA7CiAgICBmb3JlYWNoIChleHBsb2RlKCJcbiIsICRwbCkgYXMgJGwpIHsKICAgICAg
ICBpZiAodHJpbSgkbCkgPT09ICcnKSB7IGNvbnRpbnVlOyB9CiAgICAgICAgJGMgPSBwcmVnX3Nw
bGl0KCcvXHQvJywgJGwpOyAkdSA9ICRjWzFdID8/ICc/JzsKICAgICAgICAkYnlVc2VyWyR1XSA9
ICgkYnlVc2VyWyR1XSA/PyAwKSArIDE7ICRuKys7CiAgICB9CiAgICBhcnNvcnQoJGJ5VXNlcik7
ICRteXNxbENvbm5zID0gJG47CiAgICBmb3JlYWNoIChhcnJheV9zbGljZSgkYnlVc2VyLCAwLCA2
LCB0cnVlKSBhcyAkdSA9PiAkcSkgeyAkbXlzcWxUb3BbXSA9IFsndXNlcicgPT4gJHUsICdjb25u
cycgPT4gJHFdOyB9Cn0KCi8qIEZsb29kIHhtbHJwYyDigJQgbGV2ZTogw7psdGltYXMgMjAwMCBs
aW5oYXMgZG9zIGRvbWxvZ3MgKi8KJGZsb29kID0gKGludCkgdHJpbShydW4oJ3RhaWwgLW4gMjAw
MCAvZXRjL2FwYWNoZTIvbG9ncy9kb21sb2dzLyogMj4vZGV2L251bGwgfCBncmVwIC1jIHhtbHJw
YycsIDYpKTsKCi8qIFNlcnZpw6dvcyBjcsOtdGljb3MgKi8KJHN2YyA9IFsKICAgICdteXNxbGQn
ID0+IHBncmVwX3goJ215c3FsZCcpIHx8IHBncmVwX3goJ21hcmlhZGJkJyksCiAgICAnaHR0cGQn
ICA9PiBwZ3JlcF94KCdodHRwZCcpICB8fCBwZ3JlcF94KCdhcGFjaGUyJyksCiAgICAnY3BzcnZk
JyA9PiB0cmltKHJ1bigicGdyZXAgLWYgJ1tjXXBzcnZkJyIpKSAhPT0gJycsCiAgICAnZG9ja2Vy
JyA9PiBwZ3JlcF94KCdkb2NrZXJkJyksCl07CgokdXB0aW1lID0gKGludCkgZmxvYXR2YWwoZXhw
bG9kZSgnICcsIChzdHJpbmcpIEBmaWxlX2dldF9jb250ZW50cygnL3Byb2MvdXB0aW1lJykgLiAn
IDAnKVswXSk7Cgokc25hcCA9IFsKICAgICdob3N0JyA9PiAkY2ZnWydob3N0X2lkJ10sCiAgICAn
dHMnICAgPT4gdGltZSgpLAogICAgJ2luZnJhJyA9PiBbCiAgICAgICAgJ2xvYWQxJyA9PiAkbG9h
ZDEsICdjb3JlcycgPT4gJGNvcmVzLCAnbG9hZF9jb3JlJyA9PiByb3VuZCgkbG9hZDEgLyAkY29y
ZXMsIDIpLAogICAgICAgICdtZW1fYXZhaWxfcGN0JyA9PiAkbWVtQXZhaWxQY3QsICdzd2FwX3Bj
dCcgPT4gJHN3YXBQY3QsCiAgICAgICAgJ2Rpc2tfcGN0JyA9PiAkZGlza1BjdCwgJ2lub2RlX3Bj
dCcgPT4gJGlub2RlUGN0LCAndXB0aW1lJyA9PiAkdXB0aW1lLAogICAgXSwKICAgICdwaHAnICAg
ICAgPT4gWydsc3BocCcgPT4gJGxzcGhwXSwKICAgICdkb2NrZXInICAgPT4gWydzdGF0ZXMnID0+
ICRzdGF0ZXMsICd0b3AnID0+ICR0b3BjXSwKICAgICdjcGFuZWwnICAgPT4gWydhY2NvdW50cycg
PT4gJGFjY3RzXSwKICAgICdteXNxbCcgICAgPT4gWydjb25ucycgPT4gJG15c3FsQ29ubnMsICd0
b3AnID0+ICRteXNxbFRvcF0sCiAgICAnZmxvb2QnICAgID0+IFsneG1scnBjX3JlY2VudCcgPT4g
JGZsb29kXSwKICAgICdzZXJ2aWNlcycgPT4gJHN2YywKXTsKCiRqc29uID0ganNvbl9lbmNvZGUo
JHNuYXAsIEpTT05fUFJFVFRZX1BSSU5UIHwgSlNPTl9VTkVTQ0FQRURfVU5JQ09ERSB8IEpTT05f
VU5FU0NBUEVEX1NMQVNIRVMpOwpmaWxlX3B1dF9jb250ZW50cygkZGlyIC4gJy9sYXRlc3QuanNv
bicsICRqc29uIC4gUEhQX0VPTCwgTE9DS19FWCk7CmZpbGVfcHV0X2NvbnRlbnRzKCRkaXIgLiAn
L2hpc3RvcnkubmRqc29uJywganNvbl9lbmNvZGUoJHNuYXAsIEpTT05fVU5FU0NBUEVEX1NMQVNI
RVMpIC4gUEhQX0VPTCwgRklMRV9BUFBFTkQgfCBMT0NLX0VYKTsKCi8qIHJvdGFjaW9uYSBhIGhp
c3TDs3JpYSBzZSBwYXNzYXIgZGUgfjUgTUIgKi8KJGggPSAkZGlyIC4gJy9oaXN0b3J5Lm5kanNv
bic7CmlmIChpc19maWxlKCRoKSAmJiBmaWxlc2l6ZSgkaCkgPiA1ICogMTAyNCAqIDEwMjQpIHsK
ICAgICRsaW5lcyA9IGZpbGUoJGgpOyBmaWxlX3B1dF9jb250ZW50cygkaCwgaW1wbG9kZSgnJywg
YXJyYXlfc2xpY2UoJGxpbmVzLCAtNTAwMCkpKTsKfQoKaWYgKFBIUF9TQVBJID09PSAnY2xpJyAm
JiBpbl9hcnJheSgnLS1wcmludCcsICRhcmd2LCB0cnVlKSkgeyBlY2hvICRqc29uIC4gUEhQX0VP
TDsgfQo=
B64_agent.php
base64 -d > /opt/sentinela/rules.php <<'B64_rules.php'
PD9waHAKLyoqCiAqIFNlbnRpbmVsYSDigJQgbW90b3IgZGUgcmVncmFzICsgYWxlcnRhIChGYXNl
IDEsIE1WUCBvbi1ob3N0KQogKiBSb2RhIGNvbW8gcm9vdCB2aWEgY3JvbiBhIGNhZGEgNjBzLiBM
w6ogbGF0ZXN0Lmpzb24sIGFwbGljYSBsaW1pYXJlcywKICogZSBlbSBXQVJOL0NSSVQgZW52aWEg
ZS1tYWlsIChjb20gY29vbGRvd24pIGFuZXhhbmRvIGZvcmVuc2UgZG8gbW9tZW50by4KICogVXNv
OiBwaHAgcnVsZXMucGhwIFstLXRlc3RdICAgKC0tdGVzdCBpZ25vcmEgbyBjb29sZG93bikKICov
CmRlY2xhcmUoc3RyaWN0X3R5cGVzPTEpOwoKJGNmZyA9IHJlcXVpcmUgJy9vcHQvc2VudGluZWxh
L2NvbmZpZy5waHAnOwokZGlyID0gJGNmZ1snc3RhdGVfZGlyJ107CiR0ZXN0ID0gaW5fYXJyYXko
Jy0tdGVzdCcsICRhcmd2LCB0cnVlKTsKCiRyYXcgPSBAZmlsZV9nZXRfY29udGVudHMoJGRpciAu
ICcvbGF0ZXN0Lmpzb24nKTsKaWYgKCRyYXcgPT09IGZhbHNlKSB7IGZ3cml0ZShTVERFUlIsICJz
ZW0gbGF0ZXN0Lmpzb24gKHJvZGUgbyBhZ2VudC5waHAgcHJpbWVpcm8pXG4iKTsgZXhpdCgxKTsg
fQokcyA9IGpzb25fZGVjb2RlKCRyYXcsIHRydWUpOwppZiAoIWlzX2FycmF5KCRzKSkgeyBmd3Jp
dGUoU1RERVJSLCAibGF0ZXN0Lmpzb24gaW52YWxpZG9cbiIpOyBleGl0KDEpOyB9CgokVCA9ICRj
ZmdbJ3RocmVzaG9sZHMnXTsKCi8qKiBOw612ZWw6IDAgb2ssIDEgd2FybiwgMiBjcml0LiBkaXIg
J2hpZ2gnID0gcGlvciBxdWFuZG8gc29iZTsgJ2xvdycgPSBwaW9yIHF1YW5kbyBjYWkuICovCmZ1
bmN0aW9uIGx2bCgkdiwgZmxvYXQgJGxvLCBmbG9hdCAkaGksIHN0cmluZyAkZGlyID0gJ2hpZ2gn
KTogaW50IHsKICAgIGlmICgkdiA9PT0gbnVsbCkgeyByZXR1cm4gMDsgfQogICAgJHYgPSAoZmxv
YXQpICR2OwogICAgaWYgKCRkaXIgPT09ICdoaWdoJykgeyBpZiAoJHYgPj0gJGhpKSB7IHJldHVy
biAyOyB9IGlmICgkdiA+PSAkbG8pIHsgcmV0dXJuIDE7IH0gfQogICAgZWxzZSAgICAgICAgICAg
ICAgICAgeyBpZiAoJHYgPD0gJGhpKSB7IHJldHVybiAyOyB9IGlmICgkdiA8PSAkbG8pIHsgcmV0
dXJuIDE7IH0gfQogICAgcmV0dXJuIDA7Cn0KCiRpID0gJHNbJ2luZnJhJ107CiRjaGVja3MgPSBb
CiAgICBbJ0xvYWQvbsO6Y2xlbycsICAgICAgJGlbJ2xvYWRfY29yZSddLCAgICAgJFRbJ2xvYWRf
Y29yZSddLCAgICAgJ2hpZ2gnLCAkaVsnbG9hZF9jb3JlJ11dLAogICAgWydSQU0gZGlzcG9uw612
ZWwnLCAgICRpWydtZW1fYXZhaWxfcGN0J10sICRUWydtZW1fYXZhaWxfcGN0J10sICdsb3cnLCAg
JGlbJ21lbV9hdmFpbF9wY3QnXSAuICclJ10sCiAgICBbJ1N3YXAnLCAgICAgICAgICAgICAkaVsn
c3dhcF9wY3QnXSwgICAgICAkVFsnc3dhcF9wY3QnXSwgICAgICAnaGlnaCcsICRpWydzd2FwX3Bj
dCddIC4gJyUnXSwKICAgIFsnRGlzY28nLCAgICAgICAgICAgICRpWydkaXNrX3BjdCddLCAgICAg
ICRUWydkaXNrX3BjdCddLCAgICAgICdoaWdoJywgJGlbJ2Rpc2tfcGN0J10gLiAnJSddLAogICAg
WydJbm9kZXMnLCAgICAgICAgICAgJGlbJ2lub2RlX3BjdCddLCAgICAgJFRbJ2lub2RlX3BjdCdd
LCAgICAgJ2hpZ2gnLCAkaVsnaW5vZGVfcGN0J10gLiAnJSddLAogICAgWydsc3BocCcsICAgICAg
ICAgICAgJHNbJ3BocCddWydsc3BocCddLCAgJFRbJ2xzcGhwJ10sICAgICAgICAgJ2hpZ2gnLCAk
c1sncGhwJ11bJ2xzcGhwJ11dLApdOwoKJGNyaXQgPSBbXTsgJHdhcm4gPSBbXTsKZm9yZWFjaCAo
JGNoZWNrcyBhcyAkYykgewogICAgJG4gPSBsdmwoJGNbMV0sIChmbG9hdCkgJGNbMl1bMF0sIChm
bG9hdCkgJGNbMl1bMV0sICRjWzNdKTsKICAgIGlmICgkbiA9PT0gMikgeyAkY3JpdFtdID0gIiRj
WzBdID0gJGNbNF0iOyB9CiAgICBlbHNlaWYgKCRuID09PSAxKSB7ICR3YXJuW10gPSAiJGNbMF0g
PSAkY1s0XSI7IH0KfQpmb3JlYWNoICgkc1snc2VydmljZXMnXSBhcyAkbmFtZSA9PiAkdXApIHsK
ICAgIGlmICghJHVwKSB7ICRjcml0W10gPSAiU2VydmnDp28gZm9yYSBkbyBhcjogJG5hbWUiOyB9
Cn0KCmlmICghJGNyaXQgJiYgISR3YXJuKSB7CiAgICBpZiAoJHRlc3QpIHsgZWNobyAiT0sg4oCU
IG5lbmh1bSBsaW1pYXIgZGlzcGFyYWRvLlxuIjsgfQogICAgZXhpdCgwKTsKfQoKJHR5cGUgPSAk
Y3JpdCA/ICdDUklUJyA6ICdXQVJOJzsKCi8qIENvb2xkb3duIHBvciB0aXBvICovCiRjZiA9ICRk
aXIgLiAiL2xhc3RfYWxlcnRfJHR5cGUiOwokbm93ID0gdGltZSgpOwppZiAoISR0ZXN0ICYmIGlz
X2ZpbGUoJGNmKSAmJiAoJG5vdyAtIChpbnQpIEBmaWxlX2dldF9jb250ZW50cygkY2YpKSA8IChp
bnQpICRjZmdbJ2Nvb2xkb3duJ10pIHsKICAgIGVjaG8gIiR0eXBlIGVtIGNvb2xkb3duIOKAlCBu
YW8gcmVlbnZpYWRvLlxuIjsgZXhpdCgwKTsKfQpAZmlsZV9wdXRfY29udGVudHMoJGNmLCAoc3Ry
aW5nKSAkbm93KTsKCi8qIEZvcmVuc2UgZG8gbW9tZW50byAqLwokZm9yZW5zaWMgPSAoc3RyaW5n
KSBAc2hlbGxfZXhlYygndGltZW91dCA4IGJhc2ggLWMgJyAuIGVzY2FwZXNoZWxsYXJnKAogICAg
J3VwdGltZTsgZWNobzsgZnJlZSAtbSB8IGhlYWQgLTM7IGVjaG8gIi0tLSBUT1AgQ1BVIC0tLSI7
IHBzIC1lbyBwY3B1LHBtZW0scnNzLGFyZ3MgLS1zb3J0PS1wY3B1IHwgaGVhZCAtMTInCikpOwoK
JHdoZW4gPSBkYXRlKCdZLW0tZCBIOmk6cycsIChpbnQpICRzWyd0cyddKTsKJGJvZHkgID0gIlNF
TlRJTkVMQSDigJQgJHR5cGUgZW0geyRzWydob3N0J119ICAoJHdoZW4pXG5cbiI7CmlmICgkY3Jp
dCkgeyAkYm9keSAuPSAiW0NSSVRJQ09dXG4gLSAiIC4gaW1wbG9kZSgiXG4gLSAiLCAkY3JpdCkg
LiAiXG5cbiI7IH0KaWYgKCR3YXJuKSB7ICRib2R5IC49ICJbQXRlbmNhb11cbiAtICIgLiBpbXBs
b2RlKCJcbiAtICIsICR3YXJuKSAuICJcblxuIjsgfQokYm9keSAuPSAiRm9yZW5zZSAoVE9QIG5v
IG1vbWVudG8pOlxuIiAuICRmb3JlbnNpYyAuICJcbiI7Cgokc3ViaiA9ICJbU0VOVElORUxBXSAk
dHlwZSBAIHskc1snaG9zdCddfSI7CiR0byAgID0gJGNmZ1snbWFpbF90byddOwokZnJvbSA9ICRj
ZmdbJ21haWxfZnJvbSddOwoKJHNlbnQgPSBmYWxzZTsKJHNtID0gJy91c3Ivc2Jpbi9zZW5kbWFp
bCc7CmlmIChpc19leGVjdXRhYmxlKCRzbSkpIHsKICAgICRwID0gcG9wZW4oJHNtIC4gJyAtdCcs
ICd3Jyk7CiAgICBpZiAoJHApIHsKICAgICAgICBmd3JpdGUoJHAsICJGcm9tOiAkZnJvbVxuVG86
ICR0b1xuU3ViamVjdDogJHN1YmpcbkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1V
VEYtOFxuXG4kYm9keSIpOwogICAgICAgIHBjbG9zZSgkcCk7ICRzZW50ID0gdHJ1ZTsKICAgIH0K
fQppZiAoISRzZW50KSB7IEBtYWlsKCR0bywgJHN1YmosICRib2R5LCAiRnJvbTogJGZyb20iKTsg
fQoKZWNobyAiJHR5cGUgZW52aWFkbyBwYXJhICR0b1xuIjsKaWYgKCR0ZXN0KSB7IGVjaG8gIlxu
LS0tIGNvcnBvIC0tLVxuJGJvZHkiOyB9Cg==
B64_rules.php
chmod 640 /opt/sentinela/config.php; chmod 750 /opt/sentinela/agent.php /opt/sentinela/rules.php
cat > /etc/cron.d/sentinela <<'CRON'
MAILTO=""
* * * * * root /usr/bin/php /opt/sentinela/agent.php >/dev/null 2>&1
* * * * * root /usr/bin/php /opt/sentinela/rules.php >/dev/null 2>&1
CRON
chmod 644 /etc/cron.d/sentinela
systemctl restart crond 2>/dev/null || service crond restart 2>/dev/null || true
echo "===== INSTALADO. Primeira coleta: ====="
/usr/bin/php /opt/sentinela/agent.php --print | head -30
echo "===== Teste de regras/alerta (ignora cooldown): ====="
/usr/bin/php /opt/sentinela/rules.php --test | head -40
