MariaDB dros VPN: pa user@host mae’r gweinydd yn ei weld?
Dewisir y cyfrif gan ddefnyddiwr a gwesteiwr gyda’i gilydd. Darganfyddwch y ffynhonnell a welodd y gweinydd, darllenwch CURRENT_USER(), yna trwsiwch y rhes honno, nid y caniatâd.
Teipiwch yr un enw defnyddiwr o ddau lwybr gwahanol a gall MariaDB eich dilysu fel dau gyfrif gwahanol. Mae cyfrifon yn cael eu hallweddu ar ddefnyddiwr a gwesteiwr gyda’i gilydd, felly mae 'reporter'@'localhost' a 'reporter'@'10.90.0.23' yn rhesi ar wahân â chyfrineiriau ar wahân a chaniatadau ar wahân. Dros VPN, y cwestiwn diddorol nid yw pa enw a deipiodd y defnyddiwr ond pa gyfeiriad ffynhonnell a welodd y gweinydd.
Pennwch y ffynhonnell y mae’r gweinydd yn ei gweld mewn gwirionedd
Gweithiwch yn ôl o westeiwr y gronfa ddata, nid o’r gliniadur. Nid yw’r cyfeiriad y mae’r cleient yn credu sydd ganddo ond un o sawl posibilrwydd:
| Path | Source MariaDB sees |
|---|---|
| Routed tunnel, no translation | The client's inner VPN address |
| Gateway source translation | The gateway's translated address |
| SSH local forward | The SSH server's address |
| Public exit, no tunnel | Whatever the ISP handed out |
Defnyddiwch dystiolaeth o ochr y gweinydd i’w setlo. Mae cofnod cysylltiad, rhestr sesiynau gweithredol, neu gofnod log cyffredinol dros dro yn dangos y cyfeiriad a dderbyniodd y gweinydd. Mae IP cyhoeddus y gliniadur o borwr yn ffaith wahanol ac yn aml yn un gamarweiniol.
Cyfatebwch y cyfrif a ddewisodd MariaDB
Mae dewis cyfrif yn dilyn trefn a ddogfennwyd yn hytrach nag undeb o ganiatadau. Mae union gyfatebiaeth gwesteiwr yn cael blaenoriaeth dros gard gwyllt, ac mae rhesi defnyddiwr dienw yn cymryd rhan mewn cyfateb mewn ffyrdd sy’n synnu pobl sy’n tybio mai’r enw yn unig sy’n penderfynu. Mae’r gweinydd yn dewis un rhes; nid yw’n uno breintiau pob rhes o’r un enw. Mae darllen y cyfeirlyfr unwaith yn werth mwy na phrynhawn o brofi dyfalu.
Mae hynny’n golygu efallai na fydd ychwanegu caniatâd at 'reporter'@'%' yn newid dim os yw’r sesiwn wedi dilysu fel 'reporter'@'10.90.0.23'. Rhaid i’r atgyweiriad lanio ar y rhes a ddewiswyd, a dyna pam mae adnabod y cyfrif yn dod cyn golygu caniatadau.
Darllenwch y cyfrif y mae’r sesiwn yn ei ddefnyddio mewn gwirionedd
SELECT USER(), CURRENT_USER();
SHOW GRANTS;
CURRENT_USER() yn enwi’r cyfrif a ddilysodd y sesiwn; mae USER() yn adrodd yr hyn y gofynnodd y cleient amdano a gall fod yn wahanol. Rhedwch y rhain fel ymholiadau lefel uchaf cyffredin, nid o fewn arferiad storio â chyd-destun diffinydd, neu bydd yr atebion yn disgrifio perchennog yr arferiad yn lle eich sesiwn.
Ni all mewngofnodiad a fethodd redeg unrhyw un o’r rhain, a dyma’r achos lle mae’n rhaid i weinyddwr archwilio diffiniadau’r cyfrifon a thystiolaeth gysylltu’r gweinydd yn lle hynny. Cynlluniwch ar ei gyfer: fel arfer nid oes gan y person sy’n dadfygio mewngofnodiad a wrthodwyd unrhyw sesiwn SQL i ymholi ynddi.
Gwahanwch gyrhaeddedd oddi wrth ddilysiad
Mae testun y gwall yn dweud wrthych ym mha haen yr ydych. Mae cysylltiad a wrthodwyd neu derfyn amser yn golygu na chyrhaeddodd y cleient wrandawr erioed, felly nid yw’r cyfrif a’i gyfrinair dan amheuaeth eto. Mae ateb o wrthod mynediad yn golygu bod y gweinydd wedi ateb, sy’n profi cyrhaeddedd ac yn cyfeirio at y cyfrif, cyfatebiaeth y gwesteiwr, neu’r cymhwyster.
Mae rhagofynion rhwydwaith yn rhestr eu hunain: gwrandawr wedi’i rwymo i’r cyfeiriad a fwriadwyd yn hytrach nag i loopback yn unig, traffig a ganiateir i’r porthladd a ffurfweddiwyd, a llwybr dychwelyd ar gyfer yr ateb. Gall pob un fethu’n annibynnol, ac nid yw twnnel sy’n gweithio yn awgrymu unrhyw un ohonynt. Mae gwrandawr ar loopback yn derbyn cysylltiadau lleol ac yn gwrthod pob un o bell, sy’n cynhyrchu cysylltiad a wrthodwyd sy’n edrych fel bloc wal dân.
Gwiriwch y cyfeiriad rhwymo cyn agor tocyn gyda’r tîm rhwydwaith. Mae ss -lntp ar westeiwr y gronfa ddata yn dangos pa gyfeiriad a phorthladd sy’n gwrando mewn gwirionedd, ac mae’r un llinell honno’n diystyru categori cyfan o ddyfalu.
Trwsiwch yn gul, yna ailbrofwch y ddau gyfeiriad
Crëwch y cyfrif a fwriadwyd sy’n gymwys i’r gwesteiwr trwy broses gymeradwy’r sefydliad, gyda chymhwyster o’r storfa a gefnogir yn hytrach nag un a rennir wedi’i phasio i docyn. Caniatewch yn unig y gweithrediadau cynllun sydd eu hangen ar y dasg. Mae troi mewngofnodiad o bell a fethodd yn gyfrif root, yn bolisi caniatáu popeth, neu’n westeiwr card gwyllt cyffredinol yn gwneud i’r prawf basio ac yn dileu’r rheolaeth yr oeddech yn ei phrofi. Y caniatâd a ychwanegwyd ar frys yw’r un na fydd neb yn ei dynnu’n ddiweddarach.
Ailbrofwch â sesiwn ffres trwy’r llwybr a fwriadwyd, yna gwiriwch yr achosion negyddol. Rhaid i lwybr y dylid ei rwystro barhau i gael ei rwystro, a rhaid i weithrediad na chaniatawyd barhau i gael ei wrthod. Y ddau wiriad hynny sy’n gwahanu cyfrif a drwsiwyd oddi wrth un a ehangwyd.
Yn olaf, cofnodwch y cyfeiriad ffynhonnell a arsylwyd ac enw’r cyfrif gyda’i gilydd. Mae’r twnnel yn darparu cyrhaeddedd; mae MariaDB yn dal i ddewis ac awdurdodi ei gyfrif ei hun, ac mae angen y ddwy ffaith ar y person nesaf i atgynhyrchu eich canlyniad.