Pwll mwyngloddio dros VPN: cadw'r sesiwn ar y llwybr cywir
Mae mwyngloddiwr pwll yn agor un sesiwn Stratum allan, nid porth cymheiriaid. Gosod y twnnel o dan y broses honno a darllen y llwybr a'r datryswr o'i ofod enwau.
Mae meddalwedd mwyngloddio yn cadw un soced ar agor i un cyfeiriad, ac mae pob cwestiwn am y twnnel, y llwybr a'r gwaith a gredydir yn hongian ar y soced hwnnw. Sesiwn cleient sy'n mynd allan i bwynt terfyn pwll yw'r soced hwnnw, nid gwrandäwr sy'n derbyn cymheiriaid. Mae'r daith isod yn ei ddilyn o'r pedwar gwerth a gyhoeddodd y pwll hyd at gyfran a gofnododd y pwll mewn gwirionedd, ac mae'n gadael gwasanaethau eraill y gwesteiwr yn llonydd. Mae pob cam yn cynhyrchu ateb y gellir ei gymharu, nid argraff.
Dechreuwch o'r pwynt terfyn a gyhoeddodd y pwll mewn gwirionedd
Mae'r pwll yn rhoi pedwar gwerth i chi sy'n ffurfio'r contract cyfan: enw gwesteiwr neu gyfeiriad, porth, amrywiolyn protocol a llinyn cyfrif. Cymerwch nhw o ddangosfwrdd y pwll neu o'r neges ymuno, nid o diwtorial ar gyfer pwll arall. Mae shardiau rhanbarthol yn bodoli ar gyfer yr un gwasanaeth, felly gall enw gwesteiwr a gopïwyd o hen ganllaw gysylltu o hyd ac o hyd gredu cyfrif na fu i chi erioed fwriadu ei ddefnyddio. Copïwch y pedwar gwerth yn union i ffurfweddiad y mwyngloddiwr, oherwydd mae llinyn cyfrif wedi'i ail-deipio yn colli gwahanwr.
Y llif rydych chi'n ei lwybreiddio yw'r un y mae canllaw datblygwr Bitcoin yn ei alw'n sesiwn Stratum: cysylltiad TCP parhaus dwyffordd lle mae'r pwll yn dosbarthu gwaith ac mae'r mwyngloddiwr yn dychwelyd cyfrannau. Nid yw hwn yr un llif â chysylltiadau cymheiriaid nod llawn na chydamseru cadwyn waled, a'r plygu ohonynt yn un dosbarth traffig yw'r man lle mae'r rhan fwyaf o'r dryswch yn dechrau. Dim ond yr un cyntaf sy'n perthyn o dan y polisi hwn.
Lle mae'r pwll yn cynnig TLS, cadwch y gwiriad gweinydd y mae ei ddogfennaeth yn ei ofyn. Mae twnnel yn amgryptio'r naid o'ch peiriant i'r gweinydd VPN ac yn gorffen yno; nid yw'n gwarantu dros bwy bynnag sy'n ateb ar yr ochr arall. Cadwch y ddau wirniad, un ym mhob pen, os ydych am i'r sesiwn oroesi allanfa wedi'i chyfaddawdu.
Cysylltwch y twnnel â'r broses, nid â'r cartref
Mae dau bwynt cysylltu yn gweithio: rhedeg y cleient VPN yn y gofod enwau rhwydwaith y mae'r mwyngloddiwr yn ei ddefnyddio, neu roi porth i'r gofod enwau hwnnw sy'n cario ei draffig i mewn i'r twnnel. Mae'r ddau drefniant yn gosod y sesiwn ar y llwybr cyn i'r pwll ei gweld. Y methiant arferol yw cleient ar y gwesteiwr, mwyngloddiwr mewn cynhwysydd gyda'i bont ei hun a llwybr gwesteiwr nad yw'r cynhwysydd byth yn ymgynghori ag ef. Mae ffenestr y cleient yn edrych yn iach tra bo'r pwll yn cofnodi eich cyfeiriad cartref.
Gwiriwch gludiant y twnnel ei hun cyn i chi amlinellu unrhyw beth. Rhaid i'r cleient gyrraedd ei weinydd trwy'r is-haen, felly mae polisi sy'n dal pob pecyn hefyd yn dal y pecynnau a fyddai'n adeiladu'r twnnel. Yna ni all y twnnel ddechrau ac nid oes unrhyw beth arall yn gadael chwaith. Dewiswch gyda nodwedd twnnel hollt y cleient beth sy'n mynd i mewn i'r twnnel; golygu llwybrau rhagosodedig â llaw yw'r ffordd y mae'r is-haen yn diflannu.
Gyda'r polisi yn ei le, darllenwch y tabl soced yn y gofod enwau sy'n berchen ar y mwyngloddiwr. Dylai'r llif i borth y pwll fod ar ryngwyneb y twnnel, ac mae dau orchymyn yn ateb y cwestiwn hwnnw. Mae'r porth isod yn enghraifft; disodlwch ef â'r un a gyhoeddodd y pwll.
sudo nsenter -t "$(pidof cgminer)" -n ss -tnp state established 'dport = :3333'
sudo nsenter -t "$(pidof cgminer)" -n ip route get 203.0.113.10Darllenwch lwybr a datryswr o gyd-destun y mwyngloddiwr ei hun
Mae llwybreiddio a datrys enwau yn ôl gofod enwau, felly mae gwiriad a redir mewn cragen arferol yn disgrifio'r peiriant anghywir pryd bynnag y bo'r mwyngloddiwr mewn cynhwysydd. Ewch i mewn i'r gofod enwau yn gyntaf ac yna gofynnwch pa ryngwyneb a fyddai'n cario pecyn i gyfeiriad y pwll a pha ddatryswr a fyddai'n ateb am ei enw gwesteiwr. Nid yw atebion y gwesteiwr yn trosglwyddo, a'r bwlch rhyngddynt yw ffynhonnell gyffredin o fai wedi'i gamleoli.
Enwch y rhyngwyneb a gewch: mae'r twnnel yn golygu bod y sesiwn ar y llwybr a fwriadwyd, tra bo'r ddolen ffisegol yn golygu bod rheol wedi cyfateb yn gynt nag y gwnaethoch ddisgwyl. Hyd y rhagddodiad sy'n penderfynu gyntaf, yna'r metrig, yna rheolau polisi, felly nid yw tabl â sawl cofnod rhagosodedig yn dyblygu pecynnau, mae'n colli yn unig.
Mae datryswyr yn methu ar wahân i lwybrau. Gall twnnel sy'n ailysgrifennu /etc/resolv.conf adael y gofod enwau yn pwyntio at ddatryswr na ellir ei gyrraedd ond o fewn y twnnel, sy'n methu cyn i unrhyw gydio dwylo TCP ddigwydd. Datryswch enw gwesteiwr y pwll y tu mewn i'r gofod enwau a'i gymharu â'r cyfeiriad a gyhoeddwyd. Os bydd y chwiliad yn dod i ben neu'n dychwelyd rhywbeth arall, trwsiwch y datrysiad cyn cyffwrdd â llwybrau.
Cadwch gleient y pwll ac ysgrannydd y nod ar wahân
Porth cymheiriaid Bitcoin Core yw porth 8333, lle mae nod llawn yn gwrando am gysylltiadau sy'n dod i mewn; nid oes angen i fwyngloddiwr pwll mo'i chadw ar agor byth, ac nid yw ei hagor yn trwsio methiant sy'n mynd allan. Mae ysgrannwyr sy'n dod i mewn a sesiynau sy'n mynd allan yn rolau cyferbyniol â rhagdybiaethau ymddiriedaeth cyferbyniol. Nid oes unrhyw beth yn ffurfweddiad mwyngloddiwr yn rhwymo'r borth honno, felly ni all porth gaeëdig esbonio unrhyw wall y mae'n ei adrodd. Gall cyngor a ysgrifennwyd ar gyfer cyrraedd nod adael gwasanaeth cyhoeddus yn rhedeg ar westeiwr nad oedd i fod ond i gyflwyno cyfrannau.
Os yw un peiriant yn gwneud y ddau mewn gwirionedd, triniwch bob rôl fel gwasanaeth ar wahân gyda'i benderfyniad mynediad ei hun. Mae ysgrannydd y nod yn perthyn y tu ôl i'r polisi a roddwch ar waith ar gyfer gwasanaethau cyhoeddus, ac mae sesiwn y mwyngloddiwr yn perthyn i'r polisi allan sy'n dewis y twnnel. Cofnodwch ba rôl y mae'r gwesteiwr yn ei chwarae a dilewch reolau'r rôl arall pan fydd hynny'n newid, oherwydd mae rheol caniatáu sy'n weddill yn byw yn hwy na'i rheswm.
Profwch fod y pwll wedi derbyn y gwaith
Mae ffan prysur a hashrate yn codi yn dangos bod y mwyngloddiwr yn cyfrifo, nid bod unrhyw beth wedi cyrraedd y pwll. Mae'r dystiolaeth yng nghyfrifwyr cyflwyno'r cleient neu ar ddangosfwrdd y pwll: cyfrannau a dderbyniwyd, cyfrannau a wrthodwyd a'r rheswm sydd ynghlwm wrth bob gwrthodiad. Mae'r niferoedd hynny'n gwahanu tri methiant sy'n edrych yn unfath o'r tu allan: dim sesiwn, sesiwn heb gredyd a sesiwn sy'n ailgysylltu'n gyson. Darllenwch nhw cyn newid unrhyw ffurfweddiad.
Arsylwch un ymgais cysylltu gyda logio manwl a nodwch y cam olaf a lwyddodd. Mae'r cam lle mae'r dilyniant yn stopio yn fwy defnyddiol nag unrhyw neges unigol o'i gwmpas:
| Last stage reached | What it rules out | Probe to run next |
|---|---|---|
| Name lookup completed | Resolver and namespace reachability | ip route get for the returned address |
| TCP connect completed | Route and egress filtering | ss -tnp on the tunnel interface |
| Subscription returned a job | Endpoint or protocol mismatch | Accepted against rejected counts |
Yna gadewch i'r cleient redeg ffenestr sefydlog a chyfrifwch y ddau ganlyniad o'i log. Mae un grep fesul cyfrifydd yn ddigon, ac mae eu cymharu dros yr un ffenestr yn gwahanu pwll araf oddi wrth lwybr toredig. Addaswch y llwybr i'r man lle mae eich cleient yn ysgrifennu, gan nad yw'r ddau gyfrif yn dibynnu ar y lleoliad:
grep -c Accepted /var/log/miner.log
grep -c Rejected /var/log/miner.logOs yw rheol yn gwahardd cysylltiad uniongyrchol â'r pwll pryd bynnag y bydd y twnnel yn cwympo, mynegwch hi fel bloc clir ar bwynt terfyn y pwll. Bydd cleient sy'n ailgeisio'n dawel dros y ddolen ffisegol yn parhau i fwyngloddio ac yn parhau i dorri'r rheol honno, ac ni fydd ei arddangosfa statws yn sôn am hynny. Profwch y rheol trwy ollwng y twnnel yn fwriadol a chadarnhau na ellir cyrraedd porth y pwll o gwbl.